Sziasztok!
Az erről szóló előző tutorial-om
ne használjátok! Akkor még élhető megoldásnak bizonyult, mára már nagyon outdated. Működik még(tesztelve), de már senki nem úgy csinálja. Sokkal bonyolultabb mint ez, továbbá jobban terheli valamivel a szervert.
Kezdjünk bele: menük.
Kód:
public void OnPluginStart() {
RegConsoleCmd("sm_menu", myMenu, "A mi teszt menü-nk");
}
public Action myMenu(int client, int args) {
Menu menu = new Menu(Menu_Callback);
menu.SetTitle("Menü címe");
menu.AddItem("option1", "Első menüpont");
menu.AddItem("option2", "Második menüpont");
menu.AddItem("option3", "Kikapcsolt menüpont", ITEMDRAW_DISABLED);
menu.Display(client, 40);
return Plugin_Handled;
}
public int Menu_Callback(Menu menu, MenuAction action, int param1, int param2) {
if (action == MenuAction_Select) {
char option[32];
menu.GetItem(param2, option, sizeof(option));
if (StrEqual(option, "option1")) {
PrintToServer("Első menüpont kiválasztva!");
} else if (StrEqual(option, "option2")) {
PrintToServer("Második menüpont kiválasztva!");
}
} else if (action == MenuAction_End) {
delete menu;
}
}
► Spoiler mutatása
Kód:
SourcePawn Compiler 1.10
Copyright (c) 1997-2006 ITB CompuPhase
Copyright (c) 2004-2018 AlliedModders LLC
Code size: 3796 bytes
Data size: 2492 bytes
Stack/heap size: 16384 bytes
Total requirements: 22672 bytes
Ez lényegében, szerintem sokkal egyszerűbb mint a régi, mára már outdated változat.
Köszönöm a figyelmet!
Bármi hibát találtok, kérlek jelezzétek, benne van, hogy hibázom 3 műszak mellett.
Üdv,
Maxi