Witam, edytowałem mocno plugin knife mod pod swoje potrzeby i mam dwa następujące problemy:
- dwa noże są dla admina i vipa, osoba która nie posiada odpowiednich flag nie może wybrać tego modelu i wyświetla się info "Nie mozesz korzystac z tego modelu!", a model zamienia się na domyślny lecz gdy schowam go i wyciągnę ta informacja że nie można korzystać z tego modelu ciągle się pojawia, a chciałbym aby pojawiała się tylko przy próbie wyboru, a nie przy każdym wyciągnięciu
- gdy wybiorę jakiś model pojawia się informacja w say "[KNIFE] Wybrales model Domyslny" i ta informacja również pojawia się za każdorazowym wyciągnięciem noża, a powinna tylko wtedy gdy wybieram jakiś model
Poniżej kod pluginu:
#include <amxmodx> #include <amxmisc> #include <engine> #include <fun> #include <colorchat> #define PLUGIN "Knife Models" #define VERSION "1.0" #define AUTHOR "DreameR" new knife_model[33] new g_Menu public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_event("CurWeapon","CurWeapon","be","1=1") register_menucmd(g_Menu, 1023, "knifemenu") register_clcmd("say /noz", "wybor_noza") register_clcmd("say /noze", "wybor_noza") } public plugin_precache() { precache_model("models/noze/csr_karambit.mdl") precache_model("models/noze/csr_butterfly.mdl") precache_model("models/noze/csr_domyslny.mdl") precache_model("models/noze/csr_bayonet.mdl") precache_model("models/noze/csr_huntsman.mdl") } public wybor_noza(id) { new menu[512] add(menu, 511, "\wWybierz \rModel Noza\w:^n^n") add(menu, 511, "\r1. \wButterfly (\yModel dla \rAdminow\w)^n") add(menu, 511, "\r2. \wKarambit (\yModel dla \rVIP'ow\w)^n") add(menu, 511, "\r3. \wDomyslny^n") add(menu, 511, "\r4. \wBayonet^n") add(menu, 511, "\r5. \wHuntsman^n^n") add(menu, 511, "\r0. \wWyjscie^n") new keys = ( 1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<5 ) show_menu(id, keys, menu, -1) } public knifemenu(id, key) { switch(key) { case 0: SetKnife(id , 0) case 1: SetKnife(id , 1) case 2: SetKnife(id , 2) case 3: SetKnife(id , 3) case 4: SetKnife(id , 4) case 5: SetKnife(id , 5) default: return PLUGIN_HANDLED } SaveData(id) return PLUGIN_HANDLED } public SetKnife(id , Knife) { knife_model[id] = Knife new Weapon = get_user_weapon(id) if (Weapon != CSW_KNIFE) return PLUGIN_HANDLED new vModel[56] switch(Knife) { case 0: { if(get_user_flags(id) & ADMIN_BAN) { format(vModel,55,"models/noze/csr_butterfly.mdl") ColorChat(id,GREEN,"[KNIFE]^x01 Wybrales model^x03 Butterfly") } else { client_print(id, print_center, "Nie mozesz korzystac z tego modelu!") format(vModel,55,"models/noze/csr_domyslny.mdl") } } case 1: { if(get_user_flags(id) & ADMIN_LEVEL_H || get_user_flags(id) & ADMIN_BAN) { format(vModel,55,"models/noze/csr_karambit.mdl") ColorChat(id,GREEN,"[KNIFE]^x01 Wybrales model^x03 Karambit") } else { client_print(id, print_center, "Nie mozesz korzystac z tego modelu!") format(vModel,55,"models/noze/csr_domyslny.mdl") } } case 2: { format(vModel,55,"models/noze/csr_domyslny.mdl") ColorChat(id,GREEN,"[KNIFE]^x01 Wybrales model^x03 Domyslny") } case 3: { format(vModel,55,"models/noze/csr_bayonet.mdl") ColorChat(id,GREEN,"[KNIFE]^x01 Wybrales model^x03 Bayonet") } case 4: { format(vModel,55,"models/noze/csr_huntsman.mdl") ColorChat(id,GREEN,"[KNIFE]^x01 Wybrales model^x03 Huntsman") } } entity_set_string(id, EV_SZ_viewmodel, vModel) return PLUGIN_HANDLED; } public CurWeapon(id) { SetKnife(id, knife_model[id]) } public client_authorized(id) { LoadData(id) } SaveData(id) { new authid[32] get_user_authid(id, authid, 31) new vaultkey[64] new vaultdata[64] format(vaultkey, 63, "KMOD_%s", authid) format(vaultdata, 63, "%d", knife_model[id]) set_vaultdata(vaultkey, vaultdata) } LoadData(id) { new authid[32] get_user_authid(id,authid,31) new vaultkey[64], vaultdata[64] format(vaultkey, 63, "KMOD_%s", authid) get_vaultdata(vaultkey, vaultdata, 63) knife_model[id] = str_to_num(vaultdata) }
Użytkownik reload93 edytował ten post 10.04.2016 14:36