Offline |
|
|
Csatlakozott: 2016.02.10. 12:46 Hozzászólások: 429
Megköszönt másnak: 61 alkalommal Megköszönték neki: 157 alkalommal
|
Tanácsok: 1. Ez helyett: public ClientMenu(id) { new String[121]; formatex(String, charsmax(String), "%s Regisztrációs Rendszer", Prefix) new clmenu = menu_create(String, "Client_H") menu_additem(clmenu, "Regisztráció", "1", 0); menu_additem(clmenu, "Bejelentkezés", "2", 0) menu_display(id, clmenu, 0); return PLUGIN_HANDLED; } public Client_H(id, clmenu, item) { new data[9], szName[64]; new access, callback; menu_item_getinfo(clmenu, item, access, data,charsmax(data), szName,charsmax(szName), callback); new x = str_to_num(data); switch(x) { case 1: SwitchMenu(id, 1); case 2: SwitchMenu(id, 2); } }
Használhatod így: public ClientMenu(id) { new String[121]; formatex(String, charsmax(String), "%s Regisztrációs Rendszer", Prefix) new clmenu = menu_create(String, "Client_H") menu_additem(clmenu, "Regisztráció"); menu_additem(clmenu, "Bejelentkezés") menu_display(id, clmenu, 0); return PLUGIN_HANDLED; } public Client_H(id, clmenu, item) { switch(item) { case 0: SwitchMenu(id, 1); case 1: SwitchMenu(id, 2); } }
Az első változat leginkább akkor jó, ha pl. játékos listát iratod ki és az ID-t adod át vagy hasonlók.(Nem a regisztrációs rendszernél levő ID-t) Ha akarod erről bővebben tudok mesélni. 2. A változó neveket "vezesd" rendesen. Itt egy példa: public ClientMenu(iId) { new sTitle[121]; formatex(sTitle, charsmax(sTitle), "%s Regisztrációs Rendszer", Prefix) new iMenu = menu_create(sTitle, "Client_H") menu_additem(iMenu, "Regisztráció", "1", 0); menu_additem(iMenu, "Bejelentkezés", "2", 0) menu_display(iId, iMenu, 0); return PLUGIN_HANDLED; } public Client_H(iId, iMenu, iItem) { //Ez a rész ahogy láttam kimaradt if(iItem == MENU_EXIT){ menu_destroy(iMenu); return; } switch(iItem) { case 1: SwitchMenu(iId, 1); case 2: SwitchMenu(iId, 2); } //És ez is return PLUGIN_HANDLED; }
Hülyeség megadni olyan változó neveket, hogy "String" vagy hasonlók. Mindig úgy nevezd el őket, hogy elöl legyen, hogy milyen típusú (s - String, i - Int, - b - Boolean, f - Float) és utána, hogy mire jó az a változó. Tegyük fel te a menü címét akarod eltárolni egy változóba. Akkor annak ne azt a nevet add, hogy "String", hanem "sTitle", mivel egy string típusú és a title lesz benne. Ha globális a változó, akkor érdemes oda írni az elejére, hogy g_. Példa: g_sName 3. A bejelentkezők nyomonkövetéséhez ajánlom, hogy készíts egy külön "log" táblát, amely azt nézi, hogy ki, mikor, melyik felhasználóval lépett be, milyen IP és Steam_ID-ről. Így ha valakinek "feltörik" a felhasználóját, vissza tudod követni, hogy ki volt. Egyenlőre ennyi. Majd ha fejlődik a forráskód, még írok.
|
|