←  Pluginy

AMXX.pl: Support AMX Mod X i SourceMod

»

Nowy Plugin
Plugin - głosowanie na friendly fire

Zablokowany

  • +
  • -
Karpielek - zdjęcie Karpielek 03.02.2011

Witam,

Czy byłby ktoś wstanie napisać plugin, który:
- na początku każdej mapy (no nie tak zaraz na początku, ale w pierwszej rundzie) Wyświetla wiadomość: Czy chciałbyś aby Friendly Fire było włączone na tej mapie?
1. Tak
2. Nie


Jeśli więcej opcji będzie na tak, to friendly fire będzie włączone, jeśli więcej na nie to wyłączone.

Z góry wielkie dzięki!
Odpowiedz

  • +
  • -
;(( - zdjęcie ;(( 03.02.2011

Przerób vote HS/alltalk..

Tylko zmiana cvarów, pytania itp.
Odpowiedz

  • +
  • -
Karpielek - zdjęcie Karpielek 04.02.2011

#include <amxmodx>  
#include <amxmisc>  

#define PLUGIN    "Vote Only HS"  
#define AUTHOR    "elajt"  
#define VERSION    "1.0"  

new wyborow[3]  

public plugin_init()   
{  
    register_plugin("PLUGIN", "VERSION", "AUTHOR")  
    set_task(20.0, "start_vote");  
}  

public start_vote(id)  
{      
    new menu = menu_create("rChcesz grac only HS?", "menu_handler")  
    menu_additem(menu, "wTak", "1", 0)  
    menu_additem(menu, "wNie", "2", 0)  

    menu_addblank(menu, 0)  
    menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)  
      
    new players[32], inum  
    get_players(players, inum, "ch")  
    for(new i = 0; i < inum; i++)  
    {  
        menu_display(players[i], menu, 0)  
    }  
      
    set_task(15.0, "finish_vote")  
      
    wyborow[1] = wyborow[2]  
      
    return 1  
}  

public menu_handler(id, menu, item)  
{  
    if (item == MENU_EXIT)  
    {  
        menu_cancel(id)  
        return PLUGIN_HANDLED  
    }  
      
    new data[6], name[32]  
    new access, callback  
      
    menu_item_getinfo(menu, item, access, data, 5, _, _, callback)  
      
    new key = str_to_num(data)  
    get_user_name(id, name, 31)  
      
    switch (key)   
    {  
        case 1:   
        {  
            client_print (0, print_chat, "[AMXX] %s zaglosowal na tak.", name);  
        }  
        case 2:  
        {  
            client_print (0, print_chat, "[AMXX] %s zaglosowal na nie.", name);  
        }  
    }  
      
    ++wyborow[key]  
      
    menu_cancel(id)  
    return PLUGIN_HANDLED  
}  

public finish_vote()  
{  
      
    if(wyborow[1] > wyborow[2])  
    {  
        client_print(0, print_chat, "[AMXX] Only HS zostal wlaczony, zadecydowaly o tym glosy %d osob.", wyborow[1])  
        server_cmd("amx_cvar mp_friendlyfire 1");  
    }  
      
    else if(wyborow[2] > wyborow[1])  
    {  
        client_print(0, print_chat, "[AMXX] Only HS zostal wylaczony, zadecydowaly o tym glosy %d osob.", wyborow[2])  
        server_cmd("amx_cvar mp_friendlyfire 0");  
    }  
}

Dobrze zrobiłem? Oczywiście jeszcze tekstów nie pozamieniałem, a i jeszcze jedno, kiedy ten plugin się uruchamia? po jakim czasie od rozpoczęcia mapy ?
Odpowiedz

  • +
  • -
;(( - zdjęcie ;(( 04.02.2011

set_task(20.0, "start_vote");

20.0 to 20 sekund.. pozmieniaj jeszcze pytania i wszystko na czacie.
Odpowiedz

  • +
  • -
Karpielek - zdjęcie Karpielek 04.02.2011

No tak, domyśliłem się ;P
tylko teraz nie lepiej użyć tego: set_cvar_num("mp_friendlyfire", 0)
zamiast:
server_cmd("amx_cvar mp_friendlyfire 0");
Użytkownik Karpielek edytował ten post 04.02.2011 10:03
Odpowiedz

  • +
  • -
;(( - zdjęcie ;(( 04.02.2011

Czy Ty wiesz do czego tamto w ogóle służy ??

Rób sobie jak chcesz a nie zawracasz głowę komuś co Ci mówi co zrobić.. rób jak chcesz.
Odpowiedz

  • +
  • -
Karpielek - zdjęcie Karpielek 04.02.2011

No właśnie dlatego pytam, na internecie znalazłem plugin właśnie z tą funkcją tylko mp_chattime...
Odpowiedz

  • +
  • -
;(( - zdjęcie ;(( 04.02.2011

Napisz moduł to uwierzę, że jesteś dobry ;>

Na początek do programowania polecam język Polski. Pozdrawiam.


@topic

Będzie dobrze jak jest. ;>
Odpowiedz
Zablokowany