Code:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
1) //#include <colorchat>
#define PLUGIN "RPD"
#define VERSION "1.0"
2) //#define menu_create
public plugin_init()
{
3) register_plugin(PLUGIN, VERSION, "RPD")
register_clcmd("model", "rpd")
4) //return PLUGIN_CONTINUE
}
public plugin_precache()
{
precache_model("models/player/vip/vip.mdl")
precache_model("models/player/admin1/admin1.mdl")
precache_model("models/player/admin2/admin2.mdl")
precache_model("models/player/admin3/admin3.mdl")
5) //return PLUGIN_CONTINUE
}
public rpd(id)
{
new menu = menu_create("\r[RPD Model Menu]", "rpd_menu")
6) menu_additem(menu, "\wModel-1") //vip
menu_additem(menu, "\wModel-2") //admin1
menu_additem(menu, "\wModel-3") //admin2
menu_additem(menu, "\wModel-4") //admin3
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, menu, 0)
}
public menu(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
new data[6], iName[64]
new acces, callback
menu_item_getinfo(menu, item, acces, data,5, iName, 63, callback)
new key = str_to_num(data)
switch(key)
{
7) case 0:
{
8) client_print(id, print_chat, "???VIP"); //client_print_color?
9) cs_reset_user_model( id );
cs_set_user_model(id, "vip")
}
case 1:
{
cs_reset_user_model( id );
cs_set_user_model(id, "admin1")
}
case 2:
{
cs_reset_user_model( id );
cs_set_user_model(id, "admin2")
}
case 3:
{
cs_reset_user_model( id );
cs_set_user_model(id, "admin3")
}
}
menu_destroy(menu)
return PLUGIN_HANDLED
}
1) Why are you including "colorchat" when there's already: "client_print_color".
2) Why did you define "menu_create"? It's in the menu system.
3) There's so many ways to put the information in the "register_plugin". It always goes: "Plugin"-"Version"-"Author". You can set them as: new const g_szPlugin [] = "My Plugin Name"; if you are going to use it later in the code as in print in chat or something. It all depends on how or where are you going to use them. If you're not going to use any of them anywhere else in the code, just put them like this: "register_plugin( "My Plugin Name", "0.0.1", "Baws" );" It's up to you.
4) Why did you put "return PLUGIN_CONTINUE;" in the "plugin_init"? Do you know the use of: "return;"-"return PLUGIN_HANDLED;"-"return PLUGIN_CONTINUE;"-...etc ?
5) Look at number 4.
6) Whenever you're adding an item in the menu, it's number is already defined automatically.
7) The cases need to start by "case 0:" then you continue like "case 1:"-"case 2:"...etc.

"client_print_color" and "client_print" are the same use basically. The "client_print_color" is to print the words in the colors you tell it to print with, but "client_print" is simply to print in the default yellow color.
9) Before setting a new model on a user, I suggest to reset it first and then adding the new model.
__________________