Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

pomoc w przerobieniu pluginu Vote Only HS


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
4 odpowiedzi w tym temacie

#1 Basturek

    Początkujący

  • Zbanowany

Reputacja: 0
Nowy

  • Postów:13
  • Imię:Łukasz
  • Lokalizacja:Wołomin
Offline

Napisano 29.06.2014 12:52

Witam,

czy mógłby mi ktoś powiedzieć jak ten plugin

#include <amxmodx> 
#include <amxmisc> 

#define PLUGIN    "Vote Only HS" 
#define AUTHOR    "elajt edit DAMIANq" 
#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_hs_mode 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_hs_mode 0"); 
    } 

przerobić żeby po głosowaniu jeżeli wyjdzie na tak to włączało plugin dopiero na następnej mapie? a jeżeli wyjdzie na nie to po prostu plugin byłby nie włączany. Dodatkowo jeżeli wyjdzie że TAK to żeby plugin startował na początku nowej mapy?

Z góry dziękuję i czekam na odpowiedź każda odp się przyda


Użytkownik Basturek edytował ten post 29.06.2014 12:54


#2 GwynBleidD

    Godlike

  • Przyjaciel

Reputacja: 1 869
Godlike

  • Postów:3 066
  • Steam:steam
  • Lokalizacja:Przemyśl
Offline

Napisano 29.06.2014 15:22

1. Zamiast obu server_cmd zapisz jakąś wartość poprzez set_localinfo, to już inwencja dowolna, bylebyś później mógł rozpoznać jaki był wynik głosowania
2. W plugin_cfg (plugin_init to ZBYT WCZEŚNIE, wartość cvaru może zostać nadpisana poprzez tą odczytaną z amxx.cfg ) odczytaj to, co zapisałeś poprzez get_localinfo i w zależności od wyniku głosowania włącz lub wyłącz only HS (używając wcześniej usuniętych server_cmd).
3. Jeśli get_localinfo zwróci pustą wartość, to po ostatnim głosowaniu był crash lub restart serwera. W takim wypadku możesz reagować dowolnie. Jeśli mimo crasha chcesz wiedzieć jaki był wynik głosowania, zamiast localinfo użyj zapisu do pliku.
  • +
  • -
  • 0

NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
 
1988650.png?theme=dark


#3 Basturek

    Początkujący

  • Autor tematu
  • Zbanowany

Reputacja: 0
Nowy

  • Postów:13
  • Imię:Łukasz
  • Lokalizacja:Wołomin
Offline

Napisano 29.06.2014 15:44

a mógłbyś to przedstawić na jakimś przykładzie nie chodzi mi o gotowca bo z tego tylko w jakimś % coś rozumiem



#4 GwynBleidD

    Godlike

  • Przyjaciel

Reputacja: 1 869
Godlike

  • Postów:3 066
  • Steam:steam
  • Lokalizacja:Przemyśl
Offline

Napisano 29.06.2014 15:56

Skoro z tego jakiś 1% rozumiesz, to może zacznij od jakichś poradników jak pisać/przerabiać pluginy, ewentualnie zgłoś się w dziale, gdzie Ci podadzą gotowca, bo do zrozumienia tego wystarczy dosłownie elementarna wiedza.
  • +
  • -
  • 0

NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
 
1988650.png?theme=dark


#5 Basturek

    Początkujący

  • Autor tematu
  • Zbanowany

Reputacja: 0
Nowy

  • Postów:13
  • Imię:Łukasz
  • Lokalizacja:Wołomin
Offline

Napisano 29.06.2014 16:01

chodziło mi o bardziej łopatologiczne wytłumaczenie ale dziękuję za pomoc będę starał się coś z tego wyrzeźbić






Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych