
Стаж: 12 лет
Сообщений: 186
Благодарностей: 23
Полезность: 17
|
Здравствуйте. Вчерашняя проблема с подключением игроков к серверу была частично решена. Проблемма заключалась в неправильном кэшировании ресурсов (а точнее в их отсутствии). В первом спойлере оригинал, но там есть ненужный кусок кода, который надо как-то выпилить (привязка моделей игроков по LVL-СИСТЕМЕ). Второй спойлер - уже я редактировал. Пробовал разные варианты, но все равно не все файлы кэшируются, врезультате чего и возникает зависание при кэшировании. Скриптеры, прошу помощи в редактировании ориганала плигана (выпилить ЛВЛ-выдачу моделей полностью) Или же поправить (2 спойлер) переделанное мной. Заранее спс! Код:
#include <amxmodx> #include <cstrike> #include <engine> #include <hamsandwich> #include <fakemeta_util> #include <colorchat2> #include <grenade_key>
#pragma tabsize 0
#define NAME "[MG] Hats" #define VERSION "0.1" #define AUTHOR "Nickron" const OFFSET_CSMENUCODE = 205;
#define get_bit(%1,%2) (%1 & (1 << (%2 & 31))) #define set_bit(%1,%2) %1 |= (1 << (%2 & 31)) #define clr_bit(%1,%2) %1 &= ~(1 << (%2 & 31)) new const g_hat_models[][] = { "models/b_hats/mg_cow.mdl", "models/b_hats/mg_devil_fix.mdl", "models/b_hats/mg_slon.mdl", "models/b_hats/mg_pony.mdl", "models/b_hats/mg_pony_2.mdl","models/b_hats/mg_kot.mdl", "models/b_hats/mg_cher.mdl", "models/b_hats/mg_fish.mdl" } new const g_mg_life[][] = { "models/MG_MODELS/mg_life_hat/mg_clock.mdl", "models/MG_MODELS/mg_life_hat/mg_panda.mdl", "models/MG_MODELS/mg_life_hat/mg_dino.mdl", "models/MG_MODELS/mg_life_hat/mg_ping.mdl", "models/MG_MODELS/mg_life_hat/mg_ghost.mdl","models/MG_MODELS/mg_life_hat/mg_titan.mdl", "models/MG_MODELS/mg_life_hat/mg_jpon.mdl" } new const g_banan[][] = { "models/player/banan/banan.mdl" } new const g_kulogram[][] = { "models/player/Kulogram/Kulogram.mdl" } new const g_shadow[][] = { "models/player/Shadow/Shadow.mdl" } new const g_batman[][] = { "models/player/Batman/Batman.mdl" } new hats[33]; new mg_hats[33]; new has_hat[33], has_model[33]
public plugin_init() { register_plugin(NAME, VERSION, AUTHOR) register_clcmd("say /hats", "menuser") register_clcmd("say_team /hats", "menuser") register_clcmd("/hats", "menuser") }
public plugin_precache() { static i for(i = 0; i < sizeof(g_hat_models); i++) { precache_model(g_hat_models[i]) } for(i = 0; i < sizeof(g_banan); i++) { precache_model(g_banan[i]) } for(i = 0; i < sizeof(g_mg_life); i++) { precache_model(g_mg_life[i]) } for(i = 0; i < sizeof(g_kulogram); i++) { precache_model(g_kulogram[i]) } for(i = 0; i < sizeof(g_shadow); i++) { precache_model(g_shadow[i]) } for(i = 0; i < sizeof(g_batman); i++) { precache_model(g_batman[i]) } } /*=============================================================================== = Коннект ================================================================================ =*/ public client_putinserver(id) { if( is_valid_ent(hats[id]) ) { remove_entity(hats[id]) hats[id] = 0; } if( is_valid_ent(mg_hats[id]) ) { remove_entity(mg_hats[id]) mg_hats[id] = 0; } } /*=============================================================================== = Гл меню ================================================================================ =*/ public menuser(id) { new menuser_id = menu_create("\r[\yKH|HATS\r] \wМеню шапок", "menuser_handler");
new menuser_callback = menu_makecallback("menuser_callback"); menu_additem(menuser_id,"Костюм: \r[\yКоровы\r]", "1", 0,menuser_callback); menu_additem(menuser_id,"Костюм: \r[\yДьявола\r]","2",0,menuser_callback); menu_additem(menuser_id,"Костюм: \r[\yСлона\r]","3",0,menuser_callback); menu_additem(menuser_id,"Костюм: \r[\yПони\r]","4",0,menuser_callback); menu_additem(menuser_id,"Костюм: \r[\yПони Black\r]","5",0,menuser_callback); menu_additem(menuser_id,"Костюм: \r[\yКота\r]","6",0, menuser_callback); menu_additem(menuser_id,"Костюм: \r[\yЧебурашки\r]","7",0, menuser_callback); menu_additem(menuser_id,"Новинка: \r[\yЖивые Костюмы\r]^n","8",0, 0-1); menu_additem(menuser_id,"Модели: \r[\yЗа уровни \wLvl\r] \r[\wNew\r]","9",0,-1); menu_addblank(menuser_id,1); menu_additem(menuser_id,"Выход","0",0,-1); menu_setprop(menuser_id,MPROP_PERPAGE,0); set_pdata_int( id, OFFSET_CSMENUCODE, 0); menu_display(id,menuser_id,0); return PLUGIN_HANDLED; }
public menuser_callback(id,menu,item) { new acc,data[3],szText[128],callb; menu_item_getinfo(menu,item,acc,data,2,szText,127,callb); new key = str_to_num(data); new szStatus[64]; if( key != 0 && key == has_hat[id]){ format(szStatus,63,"%s \r[\wВыбрано\r]",szText); menu_item_setname(menu,item,szStatus); return ITEM_DISABLED; }
return ITEM_ENABLED; } /*=============================================================================== = Действие гл. меню ================================================================================ =*/ public menuser_handler(id,menu,item) { if(item == MENU_EXIT) { menu_destroy(menu); return PLUGIN_HANDLED; } new data[3],name[64],access,callback,menuDestroyed; menu_item_getinfo(menu, item, access, data, charsmax(data), name, charsmax(name), callback); new key = str_to_num(data); switch(key) { case 0: menuDestroyed = menu_destroy(menu); case 1: { if(has_hat[id] == 1) return PLUGIN_HANDLED remove_entity(hats[id]) hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4KH|HATS^1] ^3Игрок ^4%s ^3надел Костюм ^4Коровы", name) hats[id] = create_entity( "info_target" ) if (is_valid_ent(hats[id])) { set_pev(hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(hats[id], pev_aiment, id); set_pev(hats[id], pev_classname, "hat"); engfunc(EngFunc_SetModel, hats[id], "models/b_hats/mg_cow.mdl"); has_hat[id] = 1 } } case 2: { if(has_hat[id] == 2) return PLUGIN_HANDLED remove_entity(hats[id]) hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4KH|HATS^1] ^3Игрок ^4%s ^3надел Костюм ^4Дьявола", name) hats[id] = create_entity( "info_target" ) if (is_valid_ent(hats[id])) { set_pev(hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(hats[id], pev_aiment, id); set_pev(hats[id], pev_classname, "hat"); engfunc(EngFunc_SetModel, hats[id], "models/b_hats/mg_devil_fix.mdl"); has_hat[id] = 2 } } case 3: { if(has_hat[id] == 3) return PLUGIN_HANDLED remove_entity(hats[id]) hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4KH|HATS^1] ^3Игрок ^4%s ^3надел Костюм ^4Слона", name) hats[id] = create_entity( "info_target" ) if (is_valid_ent(hats[id])) { set_pev(hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(hats[id], pev_aiment, id); set_pev(hats[id], pev_classname, "hat"); engfunc(EngFunc_SetModel, hats[id], "models/b_hats/mg_slon.mdl"); has_hat[id] = 3 } } case 4: { if(has_hat[id] == 4) return PLUGIN_HANDLED remove_entity(hats[id]) hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4KH|HATS^1] ^3Игрок ^4%s ^3надел Костюм ^4Пони", name) hats[id] = create_entity( "info_target" ) if (is_valid_ent(hats[id])) { set_pev(hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(hats[id], pev_aiment, id); set_pev(hats[id], pev_classname, "hat"); engfunc(EngFunc_SetModel, hats[id], "models/b_hats/mg_pony.mdl"); has_hat[id] = 4 } } case 5: { if(has_hat[id] == 5) return PLUGIN_HANDLED remove_entity(hats[id]) hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4KH|HATS^1] ^3Игрок ^4%s ^3надел Костюм ^4Пони Чародей", name) hats[id] = create_entity( "info_target" ) if (is_valid_ent(hats[id])) { set_pev(hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(hats[id], pev_aiment, id); set_pev(hats[id], pev_classname, "hat"); engfunc(EngFunc_SetModel, hats[id], "models/b_hats/mg_pony_2.mdl"); has_hat[id] = 5 } } case 6: { if(has_hat[id] == 6) return PLUGIN_HANDLED remove_entity(hats[id]) hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4KH|HATS^1] ^3Игрок ^4%s ^3надел Костюм ^4Кота", name) hats[id] = create_entity( "info_target" ) if (is_valid_ent(hats[id])) { set_pev(hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(hats[id], pev_aiment, id); set_pev(hats[id], pev_classname, "hat"); engfunc(EngFunc_SetModel, hats[id], "models/b_hats/mg_kot.mdl"); has_hat[id] = 6 } } case 7: { if(has_hat[id] == 7) return PLUGIN_HANDLED remove_entity(hats[id]) hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4KH|HATS^1] ^3Игрок ^4%s ^3надел Костюм ^4Чебурашки", name) hats[id] = create_entity( "info_target" ) if (is_valid_ent(hats[id])) { set_pev(hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(hats[id], pev_aiment, id); set_pev(hats[id], pev_classname, "hat"); engfunc(EngFunc_SetModel, hats[id], "models/b_hats/mg_cher.mdl"); has_hat[id] = 7 } } case 8: { mg_life_models(id) } case 9: { My_Menu(id); } } if (!menuDestroyed) menu_destroy(menu); return PLUGIN_HANDLED; } /*=============================================================================== = Гл меню ================================================================================ =*/ public My_Menu(id) { new i_Menu = menu_create("\r[KH]Hats:^n\yМодели за уровень", "menu_handler") if(get_level(id) <30) menu_additem(i_Menu, "\r[\dМодель Банана\r]\w[\d30 \yLVL\w]", "1", 0) else menu_additem(i_Menu, "\r[\yМодель Банана\r]\w[\r30 \yLVL\w]", "1", 0) if(get_level(id) <80) menu_additem(i_Menu, "\r[\dМодель Черепаха\r]\w[\d80 \yLVL\w]", "2", 0) else menu_additem(i_Menu, "\r[\yМодель Черепаха\r]\w[\r80 \yLVL\w]", "2", 0) if(get_level(id) <100) menu_additem(i_Menu, "\r[\dМодель Shadow\r]\w[\d100 \yLVL\w]", "3", 0) else menu_additem(i_Menu, "\r[\yМодель Shadow\r]\w[\r100 \yLVL\w]", "3", 0) if(get_level(id) <150) menu_additem(i_Menu, "\r[\dМодель I'm Batman\r]\w[\d150 \yLVL\w]", "4", 0) else menu_additem(i_Menu, "\r[\yМодель I'm Batman\r]\w[\r150 \yLVL\w]", "4", 0) menu_setprop(i_Menu, MPROP_EXIT, MEXIT_ALL) menu_display(id, i_Menu, 0) }
public menu_handler(id, menu, item) { if (item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new s_Data[6], s_Name[64], i_Access, i_Callback menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback) new i_Key = str_to_num(s_Data) switch(i_Key) { case 1: { if(get_level(id) <30) { ColorChat(id,GREEN, "^1[^4KH|HATS^1] ^3У вас маленький ^4LVL^3, Должено быть не меньше ^4 30-го") return PLUGIN_HANDLED; } get_level(id) <30 cs_set_user_model(id, "banan") ColorChat(0,BLUE, "^1[^4KH|HATS^1] ^3Игрок: ^4%s ^1[^4 30-го LVL^1] ^3Одел модель ^4Банана", s_Name) } case 2: { if(get_level(id) <80) { ColorChat(id,GREEN, "^1[^4KH|HATS^1] ^3У вас маленький ^4LVL^3, Должено быть не меньше ^4 80-го") return PLUGIN_HANDLED; } get_level(id) <80 cs_set_user_model(id, "Kulogram") ColorChat(0,BLUE, "^1[^4KH|HATS^1] ^3Игрок: ^4%s ^1[^4 80-го LVL^1] ^3Одел модель ^4Черепахи", s_Name) } case 3: { if(get_level(id) <100) { ColorChat(id,GREEN, "^1[^4KH|HATS^1] ^3У вас маленький ^4LVL^3, Должено быть не меньше ^4 100-го") return PLUGIN_HANDLED; } get_level(id) <100 cs_set_user_model(id, "Shadow") ColorChat(0,BLUE, "^1[^4KH|HATS^1] ^3Игрок: ^4%s ^1[^4 100-го LVL^1] ^3Одел модель ^4Shadow", s_Name) } case 4: { if(get_level(id) <150) { ColorChat(id,GREEN, "^1[^4KH|HATS^1] ^3У вас маленький ^4LVL^3, Должено быть не меньше ^4 150-го") return PLUGIN_HANDLED; } get_level(id) <150 cs_set_user_model(id, "Batman") ColorChat(0,BLUE, "^1[^4KH|HATS^1] ^3Игрок: ^4%s ^1[^4 150-го LVL^1] ^3Одел модель ^4Batman", s_Name) } } menu_destroy(menu) return PLUGIN_HANDLED }
public mg_life_models(id) { new i_Menu = menu_create("\r[KH]Life Hats:^n\yЖивые костюмы", "menu_handlerr") menu_additem(i_Menu, "\r[\wЧасы\r]", "1", 0) menu_additem(i_Menu, "\r[\wПанда\r]", "2", 0) menu_additem(i_Menu, "\r[\wДино\r]", "3", 0) menu_additem(i_Menu, "\r[\wПингвин\r]", "4", 0) menu_additem(i_Menu, "\r[\wПризрак\r]", "5", 0) menu_additem(i_Menu, "\r[\wТитан\r]", "6", 0) menu_additem(i_Menu, "\r[\wЯпонский флаг\r]", "7", 0) menu_setprop(i_Menu, MPROP_EXIT, MEXIT_ALL) menu_display(id, i_Menu, 0) }
public menu_handlerr(id, menu, item) { if (item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new s_Data[6], s_Name[64], i_Access, i_Callback menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback) new i_Key = str_to_num(s_Data) switch(i_Key) { case 1: { remove_entity(mg_hats[id]) mg_hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4KH|HATS^1] ^3Игрок ^4%s ^3Оживил ^4Часы ^3на спине", name) mg_hats[id] = create_entity( "info_target" ) if (is_valid_ent(mg_hats[id])){ set_pev(mg_hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(mg_hats[id], pev_aiment, id); set_pev(mg_hats[id], pev_classname, "hat"); entity_set_int(mg_hats[id], EV_INT_sequence, 1) entity_set_float(mg_hats[id], EV_FL_framerate, 1.0) entity_set_float(mg_hats[id], EV_FL_frame, 0.0) engfunc(EngFunc_SetModel, mg_hats[id], "models/MG_MODELS/mg_life_hat/mg_clock.mdl"); } } case 2: { remove_entity(mg_hats[id]) mg_hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4KH|HATS^1] ^3Игрок ^4%s ^3Оживил ^4Панду ^3на спине", name) mg_hats[id] = create_entity( "info_target" ) if (is_valid_ent(mg_hats[id])){ set_pev(mg_hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(mg_hats[id], pev_aiment, id); set_pev(mg_hats[id], pev_classname, "hat"); entity_set_int(mg_hats[id], EV_INT_sequence, 1) entity_set_float(mg_hats[id], EV_FL_framerate, 1.0) entity_set_float(mg_hats[id], EV_FL_frame, 0.0) engfunc(EngFunc_SetModel, mg_hats[id], "models/MG_MODELS/mg_life_hat/mg_panda.mdl"); } } case 3: { remove_entity(mg_hats[id]) mg_hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4KH|HATS^1] ^3Игрок ^4%s ^3Оживил ^4Дино ^3на спине", name) mg_hats[id] = create_entity( "info_target" ) if (is_valid_ent(mg_hats[id])){ set_pev(mg_hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(mg_hats[id], pev_aiment, id); set_pev(mg_hats[id], pev_classname, "hat"); entity_set_int(mg_hats[id], EV_INT_sequence, 1) entity_set_float(mg_hats[id], EV_FL_framerate, 1.0) entity_set_float(mg_hats[id], EV_FL_frame, 0.0) engfunc(EngFunc_SetModel, mg_hats[id], "models/MG_MODELS/mg_life_hat/mg_dino.mdl"); } } case 4: { remove_entity(mg_hats[id]) mg_hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4KH|HATS^1] ^3Игрок ^4%s ^3Оживил ^4Пингвина ^3на спине", name) mg_hats[id] = create_entity( "info_target" ) if (is_valid_ent(mg_hats[id])){ set_pev(mg_hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(mg_hats[id], pev_aiment, id); set_pev(mg_hats[id], pev_classname, "hat"); entity_set_int(mg_hats[id], EV_INT_sequence, 1) entity_set_float(mg_hats[id], EV_FL_framerate, 1.0) entity_set_float(mg_hats[id], EV_FL_frame, 0.0) engfunc(EngFunc_SetModel, mg_hats[id], "models/MG_MODELS/mg_life_hat/mg_ping.mdl"); } } case 5: { remove_entity(mg_hats[id]) mg_hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4KH|HATS^1] ^3Игрок ^4%s ^3Оживил ^4Призрака ^3на спине", name) mg_hats[id] = create_entity( "info_target" ) if (is_valid_ent(mg_hats[id])){ set_pev(mg_hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(mg_hats[id], pev_aiment, id); set_pev(mg_hats[id], pev_classname, "hat"); entity_set_int(mg_hats[id], EV_INT_sequence, 1) entity_set_float(mg_hats[id], EV_FL_framerate, 1.0) entity_set_float(mg_hats[id], EV_FL_frame, 0.0) engfunc(EngFunc_SetModel, mg_hats[id], "models/MG_MODELS/mg_life_hat/mg_ghost.mdl"); } } case 6: { remove_entity(mg_hats[id]) mg_hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4KH|HATS^1] ^3Игрок ^4%s ^3Оживил ^4Титана ^3на спине", name) mg_hats[id] = create_entity( "info_target" ) if (is_valid_ent(mg_hats[id])){ set_pev(mg_hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(mg_hats[id], pev_aiment, id); set_pev(mg_hats[id], pev_classname, "hat"); entity_set_int(mg_hats[id], EV_INT_sequence, 1) entity_set_float(mg_hats[id], EV_FL_framerate, 1.0) entity_set_float(mg_hats[id], EV_FL_frame, 0.0) engfunc(EngFunc_SetModel, mg_hats[id], "models/MG_MODELS/mg_life_hat/mg_titan.mdl"); } } case 7: { remove_entity(mg_hats[id]) mg_hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4KH|HATS^1] ^3Игрок ^4%s ^3Оживил ^4Японские флаги ^3на спине", name) mg_hats[id] = create_entity( "info_target" ) if (is_valid_ent(mg_hats[id])){ set_pev(mg_hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(mg_hats[id], pev_aiment, id); set_pev(mg_hats[id], pev_classname, "hat"); entity_set_int(mg_hats[id], EV_INT_sequence, 1) entity_set_float(mg_hats[id], EV_FL_framerate, 1.0) entity_set_float(mg_hats[id], EV_FL_frame, 0.0) engfunc(EngFunc_SetModel, mg_hats[id], "models/MG_MODELS/mg_life_hat/mg_jpon.mdl"); } } } menu_destroy(menu) return PLUGIN_HANDLED }
Код:
#include <amxmodx> #include <cstrike> #include <engine> #include <hamsandwich> #include <fakemeta_util> #include <colorchat2> #include <grenade_key>
#pragma tabsize 0
#define NAME "[MG] Hats" #define VERSION "0.1" #define AUTHOR "Nickron" const OFFSET_CSMENUCODE = 205;
#define get_bit(%1,%2) (%1 & (1 << (%2 & 31))) #define set_bit(%1,%2) %1 |= (1 << (%2 & 31)) #define clr_bit(%1,%2) %1 &= ~(1 << (%2 & 31)) new const g_hat_models[][] = { "models/b_hats/mg_cow.mdl", "models/b_hats/mg_devil_fix.mdl", "models/b_hats/mg_slon.mdl", "models/b_hats/mg_pony.mdl", "models/b_hats/mg_pony_2.mdl","models/b_hats/mg_kot.mdl", "models/b_hats/mg_cher.mdl", "models/b_hats/mg_fish.mdl" } new const g_mg_life[][] = { "models/MG_MODELS/mg_life_hat/mg_clock.mdl", "models/MG_MODELS/mg_life_hat/mg_panda.mdl", "models/MG_MODELS/mg_life_hat/mg_dino.mdl", "models/MG_MODELS/mg_life_hat/mg_ping.mdl", "models/MG_MODELS/mg_life_hat/mg_ghost.mdl","models/MG_MODELS/mg_life_hat/mg_titan.mdl", "models/MG_MODELS/mg_life_hat/mg_jpon.mdl" } new hats[33]; new mg_hats[33]; new has_hat[33]
public plugin_init() { register_plugin(NAME, VERSION, AUTHOR) register_clcmd("say /hats", "menuser") register_clcmd("say_team /hats", "menuser") register_clcmd("hats", "menuser") }
public plugin_precache() { static i for(i = 0; i < sizeof(g_hat_models); i++) { precache_model(g_hat_models[i]) } for(i = 0; i < sizeof(g_mg_life); i++) { precache_model(g_mg_life[i]) } } /*=============================================================================== = Коннект ================================================================================ =*/ public client_putinserver(id) { if( is_valid_ent(hats[id]) ) { remove_entity(hats[id]) hats[id] = 0; } if( is_valid_ent(mg_hats[id]) ) { remove_entity(mg_hats[id]) mg_hats[id] = 0; } } /*=============================================================================== = Гл меню ================================================================================ =*/ public menuser(id) { new menuser_id = menu_create("\r[\yТОНКИЙ НАДРЕЗ\r] \wМеню шапок", "menuser_handler");
new menuser_callback = menu_makecallback("menuser_callback"); menu_additem(menuser_id,"Костюм: \r[\yКоровы\r]", "1", 0,menuser_callback); menu_additem(menuser_id,"Костюм: \r[\yДьявола\r]","2",0,menuser_callback); menu_additem(menuser_id,"Костюм: \r[\yСлона\r]","3",0,menuser_callback); menu_additem(menuser_id,"Костюм: \r[\yПони\r]","4",0,menuser_callback); menu_additem(menuser_id,"Костюм: \r[\yПони Black\r]","5",0,menuser_callback); menu_additem(menuser_id,"Костюм: \r[\yКота\r]","6",0, menuser_callback); menu_additem(menuser_id,"Костюм: \r[\yЧебурашки\r]","7",0, menuser_callback); menu_additem(menuser_id,"Новинка: \r[\yЖивые Костюмы\r]^n","8",0, 0-1); menu_addblank(menuser_id,1); menu_additem(menuser_id,"Выход","0",0,-1); menu_setprop(menuser_id,MPROP_PERPAGE,0); set_pdata_int( id, OFFSET_CSMENUCODE, 0); menu_display(id,menuser_id,0); return PLUGIN_HANDLED; }
public menuser_callback(id,menu,item) { new acc,data[3],szText[128],callb; menu_item_getinfo(menu,item,acc,data,2,szText,127,callb); new key = str_to_num(data); new szStatus[64]; if( key != 0 && key == has_hat[id]){ format(szStatus,63,"%s \r[\wВыбрано\r]",szText); menu_item_setname(menu,item,szStatus); return ITEM_DISABLED; }
return ITEM_ENABLED; }
/*=============================================================================== = Действие гл. меню ================================================================================ =*/ public menuser_handler(id,menu,item) { if(item == MENU_EXIT) { menu_destroy(menu); return PLUGIN_HANDLED; } new data[3],name[64],access,callback,menuDestroyed; menu_item_getinfo(menu, item, access, data, charsmax(data), name, charsmax(name), callback); new key = str_to_num(data); switch(key) { case 0: menuDestroyed = menu_destroy(menu); case 1: { if(has_hat[id] == 1) return PLUGIN_HANDLED remove_entity(hats[id]) hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4Костюмы^1] ^3Игрок ^4%s ^3надел Костюм ^4Коровы", name) hats[id] = create_entity( "info_target" ) if (is_valid_ent(hats[id])) { set_pev(hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(hats[id], pev_aiment, id); set_pev(hats[id], pev_classname, "hat"); engfunc(EngFunc_SetModel, hats[id], "models/b_hats/mg_cow.mdl"); has_hat[id] = 1 } } case 2: { if(has_hat[id] == 2) return PLUGIN_HANDLED remove_entity(hats[id]) hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4Костюмы^1] ^3Игрок ^4%s ^3надел Костюм ^4Дьявола", name) hats[id] = create_entity( "info_target" ) if (is_valid_ent(hats[id])) { set_pev(hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(hats[id], pev_aiment, id); set_pev(hats[id], pev_classname, "hat"); engfunc(EngFunc_SetModel, hats[id], "models/b_hats/mg_devil_fix.mdl"); has_hat[id] = 2 } } case 3: { if(has_hat[id] == 3) return PLUGIN_HANDLED remove_entity(hats[id]) hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4Костюмы^1] ^3Игрок ^4%s ^3надел Костюм ^4Слона", name) hats[id] = create_entity( "info_target" ) if (is_valid_ent(hats[id])) { set_pev(hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(hats[id], pev_aiment, id); set_pev(hats[id], pev_classname, "hat"); engfunc(EngFunc_SetModel, hats[id], "models/b_hats/mg_slon.mdl"); has_hat[id] = 3 } } case 4: { if(has_hat[id] == 4) return PLUGIN_HANDLED remove_entity(hats[id]) hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4Костюмы^1] ^3Игрок ^4%s ^3надел Костюм ^4Пони", name) hats[id] = create_entity( "info_target" ) if (is_valid_ent(hats[id])) { set_pev(hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(hats[id], pev_aiment, id); set_pev(hats[id], pev_classname, "hat"); engfunc(EngFunc_SetModel, hats[id], "models/b_hats/mg_pony.mdl"); has_hat[id] = 4 } } case 5: { if(has_hat[id] == 5) return PLUGIN_HANDLED remove_entity(hats[id]) hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4Костюмы^1] ^3Игрок ^4%s ^3надел Костюм ^4Пони Чародей", name) hats[id] = create_entity( "info_target" ) if (is_valid_ent(hats[id])) { set_pev(hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(hats[id], pev_aiment, id); set_pev(hats[id], pev_classname, "hat"); engfunc(EngFunc_SetModel, hats[id], "models/b_hats/mg_pony_2.mdl"); has_hat[id] = 5 } } case 6: { if(has_hat[id] == 6) return PLUGIN_HANDLED remove_entity(hats[id]) hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4Костюмы^1] ^3Игрок ^4%s ^3надел Костюм ^4Кота", name) hats[id] = create_entity( "info_target" ) if (is_valid_ent(hats[id])) { set_pev(hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(hats[id], pev_aiment, id); set_pev(hats[id], pev_classname, "hat"); engfunc(EngFunc_SetModel, hats[id], "models/b_hats/mg_kot.mdl"); has_hat[id] = 6 } } case 7: { if(has_hat[id] == 7) return PLUGIN_HANDLED remove_entity(hats[id]) hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4Костюмы^1] ^3Игрок ^4%s ^3надел Костюм ^4Чебурашки", name) hats[id] = create_entity( "info_target" ) if (is_valid_ent(hats[id])) { set_pev(hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(hats[id], pev_aiment, id); set_pev(hats[id], pev_classname, "hat"); engfunc(EngFunc_SetModel, hats[id], "models/b_hats/mg_cher.mdl"); has_hat[id] = 7 } } case 8: { mg_life_models(id) } } if (!menuDestroyed) menu_destroy(menu); return PLUGIN_HANDLED; }
public mg_life_models(id) { new i_Menu = menu_create("\r[ТОНКИЙ НАДРЕЗ]:^n\yЖивые костюмы", "menu_handlerr") menu_additem(i_Menu, "\r[\wЧасы\r]", "1", 0) menu_additem(i_Menu, "\r[\wПанда\r]", "2", 0) menu_additem(i_Menu, "\r[\wДино\r]", "3", 0) menu_additem(i_Menu, "\r[\wПингвин\r]", "4", 0) menu_additem(i_Menu, "\r[\wПризрак\r]", "5", 0) menu_additem(i_Menu, "\r[\wТитан\r]", "6", 0) menu_additem(i_Menu, "\r[\wЯпонский флаг\r]", "7", 0) menu_setprop(i_Menu, MPROP_EXIT, MEXIT_ALL) menu_display(id, i_Menu, 0) }
public menu_handlerr(id, menu, item) { if (item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new s_Data[6], s_Name[64], i_Access, i_Callback menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback) new i_Key = str_to_num(s_Data) switch(i_Key) { case 1: { remove_entity(mg_hats[id]) mg_hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4Костюмы^1] ^3Игрок ^4%s ^3Оживил ^4Часы ^3на спине", name) mg_hats[id] = create_entity( "info_target" ) if (is_valid_ent(mg_hats[id])){ set_pev(mg_hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(mg_hats[id], pev_aiment, id); set_pev(mg_hats[id], pev_classname, "hat"); entity_set_int(mg_hats[id], EV_INT_sequence, 1) entity_set_float(mg_hats[id], EV_FL_framerate, 1.0) entity_set_float(mg_hats[id], EV_FL_frame, 0.0) engfunc(EngFunc_SetModel, mg_hats[id], "models/MG_MODELS/mg_life_hat/mg_clock.mdl"); } } case 2: { remove_entity(mg_hats[id]) mg_hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4Костюмы^1] ^3Игрок ^4%s ^3Оживил ^4Панду ^3на спине", name) mg_hats[id] = create_entity( "info_target" ) if (is_valid_ent(mg_hats[id])){ set_pev(mg_hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(mg_hats[id], pev_aiment, id); set_pev(mg_hats[id], pev_classname, "hat"); entity_set_int(mg_hats[id], EV_INT_sequence, 1) entity_set_float(mg_hats[id], EV_FL_framerate, 1.0) entity_set_float(mg_hats[id], EV_FL_frame, 0.0) engfunc(EngFunc_SetModel, mg_hats[id], "models/MG_MODELS/mg_life_hat/mg_panda.mdl"); } } case 3: { remove_entity(mg_hats[id]) mg_hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4Костюмы^1] ^3Игрок ^4%s ^3Оживил ^4Дино ^3на спине", name) mg_hats[id] = create_entity( "info_target" ) if (is_valid_ent(mg_hats[id])){ set_pev(mg_hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(mg_hats[id], pev_aiment, id); set_pev(mg_hats[id], pev_classname, "hat"); entity_set_int(mg_hats[id], EV_INT_sequence, 1) entity_set_float(mg_hats[id], EV_FL_framerate, 1.0) entity_set_float(mg_hats[id], EV_FL_frame, 0.0) engfunc(EngFunc_SetModel, mg_hats[id], "models/MG_MODELS/mg_life_hat/mg_dino.mdl"); } } case 4: { remove_entity(mg_hats[id]) mg_hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4Костюмы^1] ^3Игрок ^4%s ^3Оживил ^4Пингвина ^3на спине", name) mg_hats[id] = create_entity( "info_target" ) if (is_valid_ent(mg_hats[id])){ set_pev(mg_hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(mg_hats[id], pev_aiment, id); set_pev(mg_hats[id], pev_classname, "hat"); entity_set_int(mg_hats[id], EV_INT_sequence, 1) entity_set_float(mg_hats[id], EV_FL_framerate, 1.0) entity_set_float(mg_hats[id], EV_FL_frame, 0.0) engfunc(EngFunc_SetModel, mg_hats[id], "models/MG_MODELS/mg_life_hat/mg_ping.mdl"); } } case 5: { remove_entity(mg_hats[id]) mg_hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4Костюмы^1] ^3Игрок ^4%s ^3Оживил ^4Призрака ^3на спине", name) mg_hats[id] = create_entity( "info_target" ) if (is_valid_ent(mg_hats[id])){ set_pev(mg_hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(mg_hats[id], pev_aiment, id); set_pev(mg_hats[id], pev_classname, "hat"); entity_set_int(mg_hats[id], EV_INT_sequence, 1) entity_set_float(mg_hats[id], EV_FL_framerate, 1.0) entity_set_float(mg_hats[id], EV_FL_frame, 0.0) engfunc(EngFunc_SetModel, mg_hats[id], "models/MG_MODELS/mg_life_hat/mg_ghost.mdl"); } } case 6: { remove_entity(mg_hats[id]) mg_hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4Костюмы^1] ^3Игрок ^4%s ^3Оживил ^4Титана ^3на спине", name) mg_hats[id] = create_entity( "info_target" ) if (is_valid_ent(mg_hats[id])){ set_pev(mg_hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(mg_hats[id], pev_aiment, id); set_pev(mg_hats[id], pev_classname, "hat"); entity_set_int(mg_hats[id], EV_INT_sequence, 1) entity_set_float(mg_hats[id], EV_FL_framerate, 1.0) entity_set_float(mg_hats[id], EV_FL_frame, 0.0) engfunc(EngFunc_SetModel, mg_hats[id], "models/MG_MODELS/mg_life_hat/mg_titan.mdl"); } } case 7: { remove_entity(mg_hats[id]) mg_hats[id] = 0; new name[32] get_user_name(id, name, 31) ColorChat(0, RED, "^1[^4Костюмы^1] ^3Игрок ^4%s ^3Оживил ^4Японские флаги ^3на спине", name) mg_hats[id] = create_entity( "info_target" ) if (is_valid_ent(mg_hats[id])){ set_pev(mg_hats[id], pev_movetype, MOVETYPE_FOLLOW); set_pev(mg_hats[id], pev_aiment, id); set_pev(mg_hats[id], pev_classname, "hat"); entity_set_int(mg_hats[id], EV_INT_sequence, 1) entity_set_float(mg_hats[id], EV_FL_framerate, 1.0) entity_set_float(mg_hats[id], EV_FL_frame, 0.0) engfunc(EngFunc_SetModel, mg_hats[id], "models/MG_MODELS/mg_life_hat/mg_jpon.mdl"); } } } menu_destroy(menu) return PLUGIN_HANDLED }
Отредактировал: FDGod, - 12.5.2016, 14:42
|