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

jak zrobic menu?


  • Zamknięty Temat jest zamknięty
7 odpowiedzi w tym temacie

#1 amxxmaster

    Profesjonalista

  • Zbanowany

Reputacja: 0
Nowy

  • Postów:207
  • Imię:Stad
  • Lokalizacja:Daleko
Offline

Napisano 17.06.2011 11:44

mam takie menu i sobie je przerabiam i mam pytanko jak ktos wybierze 1 (/sell) to da sie zrobic zeby niezamykalo menu?:P poprostu zeby menu dalej bylo otwarte? a i jak zrobic zeby te menu bylo tylko dla admina z flaga ADMIN_IMMUNITY?
#include <amxmodx>
#include <amxmisc>

#define PLUGIN "menu"
#define VERSION "1.0"
#define AUTHOR "LucKy_skiLL"


public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_clcmd("say /menu", "menu")
    
}

public menu(id)
{
    new menu = menu_create("\rWybierz", "wybieranie")    
    menu_additem(menu, "\wSprzedaj bron", "1", 0)
    menu_additem(menu, "\wPrzelej kase", "2", 0)
    menu_additem(menu, "\wKup RedBull", "3", 0)
    menu_additem(menu, "\wMenu admina", "4", ADMIN_IMMUNITY)
    
    menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
    
    menu_display(id, menu, 0)
}

public wybieranie(id, menu, item)
{
    if (item == MENU_EXIT)
    {
        menu_destroy(menu)
        return PLUGIN_HANDLED
    }

    new data[6], iName[64]
    new acces, callback
    menu_item_getinfo(menu, item, acces, data,5, iName, 63, callback)
    
    new key = str_to_num(data)
    
    switch(key)
    {
        case 1:{
        client_cmd(id,"say /sell") 
        menu_destroy(menu)
        return PLUGIN_HANDLED
        }
        
        case 2:{
        client_cmd(id,"say /zasady") 
        menu_destroy(menu)
        return PLUGIN_HANDLED
        }

        case 3:{
        client_cmd(id,"say /redbull") 
        menu_destroy(menu)
        return PLUGIN_HANDLED
        }
		
        case 4:{
        client_cmd(id,"amxmodmenu")
        menu_destroy(menu)
        return PLUGIN_HANDLED
		}
    }
    menu_destroy(menu)
    return PLUGIN_HANDLED
}

Użytkownik amxxmaster edytował ten post 17.06.2011 11:53


#2 sharkowy

    Lokalna anomalia sejsmiczna o nieustalonej genezie.

  • Przyjaciel

Reputacja: 113
Zaawansowany

  • Postów:1 981
Offline

Napisano 17.06.2011 11:57

Żeby było tylko dla admina, to dodajesz sobie warunek if(get_user_flags(id) & ADMIN_IMMUNITY)) a żeby nie zamykało się menu zamiast:

menu_destroy(menu)
na samym końcu daj:
menu(id)


Pewnie zapytasz gdzie ten warunek dać..

public menu(id)
{
if(get_user_flags(id) & ADMIN_IMMUNITY))
new menu = menu_create("\rWybierz", "wybieranie")
menu_additem(menu, "\wSprzedaj bron", "1", 0)
menu_additem(menu, "\wPrzelej kase", "2", 0)
menu_additem(menu, "\wKup RedBull", "3", 0)
menu_additem(menu, "\wMenu admina", "4", 0)

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)

menu_display(id, menu, 0)
}

Użytkownik RPK. Shark edytował ten post 17.06.2011 12:00

  • +
  • -
  • 0

#3 amxxmaster

    Profesjonalista

  • Autor tematu
  • Zbanowany

Reputacja: 0
Nowy

  • Postów:207
  • Imię:Stad
  • Lokalizacja:Daleko
Offline

Napisano 17.06.2011 12:07

Error: Invalid expression, assumed zero on line 166
Warning: Expression has no effect on line 166

1 Error.

Wyskoczyl taki error przy tym immunity a przy tym drugim tez error

Użytkownik amxxmaster edytował ten post 17.06.2011 12:09


#4 Goliath

    Godlike

  • Przyjaciel

Reputacja: 1 237
Godlike

  • Postów:2 334
  • GG:
  • Steam:steam
  • Imię:Maciej
  • Lokalizacja:Mońki
Offline

Napisano 17.06.2011 12:12

public menu(id)
{
if(!(get_user_flags(id) & ADMIN_IMMUNITY))
return PLUGIN_CONTINUE;
new menu = menu_create("\rWybierz", "wybieranie")
menu_additem(menu, "\wSprzedaj bron", "1", 0)
menu_additem(menu, "\wPrzelej kase", "2", 0)
menu_additem(menu, "\wKup RedBull", "3", 0)
menu_additem(menu, "\wMenu admina", "4", 0)

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)

menu_display(id, menu, 0)
return PLUGIN_HANDLED;
}

  • +
  • -
  • 1

#5 amxxmaster

    Profesjonalista

  • Autor tematu
  • Zbanowany

Reputacja: 0
Nowy

  • Postów:207
  • Imię:Stad
  • Lokalizacja:Daleko
Offline

Napisano 17.06.2011 12:25

a jak zrobic zeby te menu sie niezamykalo?

#6 Goliath

    Godlike

  • Przyjaciel

Reputacja: 1 237
Godlike

  • Postów:2 334
  • GG:
  • Steam:steam
  • Imię:Maciej
  • Lokalizacja:Mońki
Offline

Napisano 17.06.2011 15:06

Shark już ci napisał, co masz zrobić. BTW, po co dodajesz menu_destroy w każdym case? Masz, krócej:
public wybieranie(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}

new data[6], iName[64]
new acces, callback
menu_item_getinfo(menu, item, acces, data,5, iName, 63, callback)

new key = str_to_num(data)

switch(key)
{
case 1: client_cmd(id,"say /sell") ;
case 2: client_cmd(id,"say /zasady");
case 3: client_cmd(id,"say /redbull");
case 4:
{
menu_destroy(menu);
client_cmd(id,"amxmodmenu");
return PLUGIN_HANDLED;
}
}
menu(id);
return PLUGIN_HANDLED;
}

Użytkownik Goliath edytował ten post 17.06.2011 15:07

  • +
  • -
  • 0

#7 amxxmaster

    Profesjonalista

  • Autor tematu
  • Zbanowany

Reputacja: 0
Nowy

  • Postów:207
  • Imię:Stad
  • Lokalizacja:Daleko
Offline

Napisano 18.06.2011 07:37

no a ja napisalem ze to nie dziala?:P i to co dales tez niedziala


Error: Invalid function call, not a valid address on line 245
Warning: Expression has no effect on line 245
Error: Expected token: ";", but found ")" on line 245
Error: Invalid expression, assumed zero on line 245
Error: Too many error messages on one line on line 245

Compilation aborted.
4 Errors.


#8 Goliath

    Godlike

  • Przyjaciel

Reputacja: 1 237
Godlike

  • Postów:2 334
  • GG:
  • Steam:steam
  • Imię:Maciej
  • Lokalizacja:Mońki
Offline

Napisano 18.06.2011 20:14

Wiem. Ta funkcja:
public menu(id)
{
if(!(get_user_flags(id) & ADMIN_IMMUNITY))
return PLUGIN_CONTINUE;
new menu = menu_create("\rWybierz", "wybieranie")
menu_additem(menu, "\wSprzedaj bron", "1", 0)
menu_additem(menu, "\wPrzelej kase", "2", 0)
menu_additem(menu, "\wKup RedBull", "3", 0)
menu_additem(menu, "\wMenu admina", "4", 0)

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)

menu_display(id, menu, 0)
return PLUGIN_HANDLED;
}

Nie może nazywać się tak samo jak zmienna odpowiadająca za menu. Zmień nazwę tego publica oraz linijkę menu(id) w publicu wybieranie.
  • +
  • -
  • 0




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

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