Ну вот, от руки.. Что-нибудь такого рода.
Код:
#include <amxmodx>
#include <cstrike>
#include <hamsandwich>
new bool:model[33]
public plugin_init() {
register_plugin("ModelMenu", "0.1", "Fullserver");
RegisterHam(Ham_Spawn, "player", "ham_spawn", 1)
register_clcmd("menu", "function_menu")
}
public plugin_precache()
{
precache_model("models/player/модель/модель.mdl")
precache_model("models/player/модель/модель.mdl")
precache_model("models/player/модель/модель.mdl")
}
public ham_spawn(id){
if(model[id]==1){
cs_set_user_model(id, "название_модели")
}
if(model[id]==2){
cs_set_user_model(id, "название_модели")
}
if(model[id]==3){
cs_set_user_model(id, "название_модели")
}
}
public function_menu(id) {
new menu = menu_create("\rMenu", "menu_handler")
menu_additem(menu, "\rМодель 1","1")
menu_additem(menu, "\rМодель 2","2")
menu_additem(menu, "\rМодель 3","3")
menu_setprop(menu, MPROP_BACKNAME, "Назад")
menu_setprop(menu, MPROP_NEXTNAME, "Вперед")
menu_setprop(menu, MPROP_EXITNAME, "Выход")
menu_setprop(menu, MPROP_EXIT,MEXIT_ALL)
menu_display(id,menu,0)
}
public menu_handler(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
static data[6], iName[64], access, callback
menu_item_getinfo(menu, item, access, data, 5, iName, 63, callback)
new key = str_to_num(data)
switch(key)
case 1:{
cs_set_user_model(id, "название_модели")
model[id] = 1
}
case 2:{
cs_set_user_model(id, "название_модели")
model[id] = 2
}
case 3:{
cs_set_user_model(id, "название_модели")
model[id] = 3
}
}
Под большое количество человек не желательно использовать, может уложить сервер или кикнуть пол сервера с reliable channel overflowed в новом раунде.