|
Senior Member
Join Date: Jul 2011
Location: Serbia, Nis
|

07-30-2011
, 07:02
Re: HUD msg..
|
#8
|
Edited my post ^
Hey Hunter-Digital, can yo make my ShowHud option Shows to player right after he joins the server :S Because i have in ShowHud for both Classes... And can you make it to never disappears from HUD, because it only lasts 1 minute 
Here take a look
PHP Code:
public ShowHud(id) { if(cs_get_user_team(id) == CS_TEAM_CT) { set_hudmessage(42, 255, 42, 0.05, 0.25, 0, 6.0, 60.0) show_hudmessage(id, "[Klasa : %s]^n[Level : %i]^n[Iskustvo : %i / %i]^n[Energija : %i]", CLASSES_CT[PlayerClassCT[id]], PlayerLevel[id], PlayerXP[id], LevelExperience[PlayerLevel[id]], get_user_health(id)) } if (cs_get_user_team(id) == CS_TEAM_T) { set_hudmessage(42, 255, 42, 0.05, 0.25, 0, 6.0, 60.0) show_hudmessage(id, "[Klasa : %s]^n[Level : %i]^n[Iskustvo : %i / %i]^n[Energija : %i]", CLASSES_T[PlayerClassT[id]], PlayerLevel[id], PlayerXP[id], LevelExperience[PlayerLevel[id]], get_user_health(id)) } }
And here is the FULL code:
PHP Code:
#include <amxmodx> #include <amxmisc> #include <colorchat> #include <cstrike> #include <engine> #include <fakemeta> #include <hamsandwich> #include <fun> #include <nvault>
#define MAXPLAYERS 32 /*No Weapon Drop On Death*/
#define WBOX "models/w_weaponbox.mdl" /*No Weapon Drop On Death*/
new const CLASSES_CT[][] = { "None", "Fast Avatar", "Invisible Avatar", "Low-Gravity Avatar" }
new const CLASSES_T[][] = { "None", "Marinac", "Komandant", "Snajperista" }
new const LevelExperience[] = { 0, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768, 65536, 131072, 262144, 524288, 1048576 }
new PlayerXP[33] new PlayerLevel[33] new PlayerClassCT[33] new PlayerClassT[33]
new KillExpirience new SaveExpirience new g_Vault
new g_msgStatusIcon /*Buy Zone Remover*/
new bool:drop_locked /*No Weapon Drop*/
new g_entid[MAXPLAYERS + 1] /*No Weapon Drop On Death*/ new g_maxents /*No Weapon Drop On Death*/
public plugin_init() { register_plugin("Avatar Mod", "0.4", "Krle") RegisterHam(Ham_Spawn, "player", "Beginning", 1) register_event("CurWeapon", "CurWeapon", "be", "1=1") register_event("DeathMsg", "eDeath", "a") register_message(get_user_msgid("TextMsg"), "message_TextMsg") /*Win Message*/ g_msgStatusIcon = get_user_msgid("StatusIcon") /*BuyZoneRemover*/ register_message(g_msgStatusIcon, "msgStatusIcon") /*BuyZoneRemover*/ SaveExpirience = register_cvar( "xp_save", "1") KillExpirience = register_cvar( "xp_per_kill", "20") g_Vault = nvault_open("AvatarMod") register_clcmd("say /class", "ChangeClass") register_clcmd("say /xp", "ShowHud") register_clcmd("say /shop", "Shop") register_clcmd("say /tp", "ThirdPersonView") /*Trece Lice*/ register_clcmd("say /fp", "FirstPersonView") /*Prvo Lice*/ register_clcmd("say_team /class", "ChangeClass") register_clcmd("say_team /xp", "ShowHud") register_clcmd("say_team /shop", "Shop") register_clcmd("say_team /tp", "ThirdPersonView") /*Trece Lice*/ register_clcmd("say_team /fp", "FirstPersonView") /*Prvo Lice*/ register_clcmd("drop","drop",0,"") /*No Weapon Drop*/ register_logevent("round_start", 2, "0=World triggered", "1=Round_Start") /*No Weapon Drop*/ register_forward(FM_SetModel, "forward_set_model") /*No Weapon Drop On Death*/ g_maxents = get_global_int(GL_maxEntities) /*No Weapon Drop On Death*/ set_task(30.0, "Help") }
/*=== ====== ======== ===*/ /*=== PLUGIN PRECACHE ===*/ /*=== ====== ======== ===*/ public plugin_precache() { precache_model("models/player/avatar/avatar.mdl") precache_model("models/player/commander/commander.mdl") precache_model("models/player/marine/marine.mdl") precache_model("models/avatar_mod/v_soldier_ak47.mdl") precache_model("models/avatar_mod/p_soldier_ak47.mdl") precache_model("models/avatar_mod/v_soldier_deagle.mdl") precache_model("models/avatar_mod/p_soldier_deagle.mdl") precache_model("models/avatar_mod/v_soldier_m4a1.mdl") precache_model("models/avatar_mod/p_soldier_m4a1.mdl") precache_model("models/avatar_mod/v_soldier_awp.mdl") precache_model("models/avatar_mod/p_soldier_awp.mdl") precache_model("models/avatar_mod/v_avatar_knife.mdl") precache_model("models/rpgrocket.mdl") /*ThirdPerson*/ } /*=======================*/
public server_cfg() { server_cmd("sv_maxspeed 1600") }
public eDeath() { new attacker = read_data(1) new id = read_data(2) if(id != attacker) { PlayerXP[attacker] += get_pcvar_num(KillExpirience) } if(PlayerLevel[id] < 15) { while(PlayerXP[attacker] >= LevelExperience[PlayerLevel[attacker]]) { PlayerLevel[attacker] += 1 client_print(attacker, print_chat, "[Avatar Mod] Cestitamo, sada ste level ^3%i !", PlayerLevel[id]) } ShowHud(attacker) SaveData(attacker) } return PLUGIN_HANDLED }
/*=== ==== == = === ===== ===*/ /*=== SHOW XP & LVL STATS ===*/ /*=== ==== == = === ===== ===*/ public ShowHud(id) { if(cs_get_user_team(id) == CS_TEAM_CT) { set_hudmessage(42, 255, 42, 0.05, 0.25, 0, 6.0, 60.0) show_hudmessage(id, "[Klasa : %s]^n[Level : %i]^n[Iskustvo : %i / %i]^n[Energija : %i]", CLASSES_CT[PlayerClassCT[id]], PlayerLevel[id], PlayerXP[id], LevelExperience[PlayerLevel[id]], get_user_health(id)) } if (cs_get_user_team(id) == CS_TEAM_T) { set_hudmessage(42, 255, 42, 0.05, 0.25, 0, 6.0, 60.0) show_hudmessage(id, "[Klasa : %s]^n[Level : %i]^n[Iskustvo : %i / %i]^n[Energija : %i]", CLASSES_T[PlayerClassT[id]], PlayerLevel[id], PlayerXP[id], LevelExperience[PlayerLevel[id]], get_user_health(id)) } } /*===========================*/
/*=== ==== ===*/ /*=== SHOP ===*/ /*=== ==== ===*/ public Shop(id) { if(cs_get_user_team(id) == CS_TEAM_CT) { new menu = menu_create ("Shop:", "Shop_Handle") menu_additem(menu, "Eywin Blagoslov \r[ Dodaje \y300 \rHealth Points \r] \yCena: \r1000$") menu_additem(menu, "Iskustvo \r[ Dodaje \y100 \rExperience Poena \r] \yCena: \r5000$") menu_additem(menu, "Super Iskustvo \r[ Dodaje \y300 \rExperience Poena ] \yCena: \r10000$") menu_display(id, menu) } if(cs_get_user_team(id) == CS_TEAM_T) { new menu = menu_create ("Shop:", "Shop_Handle") menu_additem(menu, "Aspirin \r[ Dodaje \y30 \rHelti ] \yCena: \r1000$") menu_additem(menu, "Iskustvo \r[ Dodaje \y100 \rExperience Poena ] \yCena: \r5000$") menu_additem(menu, "Super Iskustvo \r[ Dodaje \y300 \rExperience Poena ] \yCena: \r10000$") menu_display(id, menu) } }
public Shop_Handle(id, menu, item) { if(cs_get_user_team(id) == CS_TEAM_CT) { if(item == MENU_EXIT) { menu_destroy(menu) ColorChat(id, GREEN, "[Avatar Mod Shop] ^1Zatvaram menu...") } menu_display(id, menu) switch(item) { case 0: { if(cs_get_user_money(id) < 1000) { ColorChat(id, GREEN, "[Avatar Mod Shop] ^1Nemas dovoljno novca za ^3Eywin Blagoslov") return PLUGIN_CONTINUE } cs_set_user_money(id, cs_get_user_money(id) - 1000) set_user_health(id, get_user_health(id) + 300) ColorChat(id, GREEN, "[Avatar Mod Shop] ^1Kupio si ^3Eywin Blagoslov") } case 1: { if(cs_get_user_money(id) < 4000) { ColorChat(id, GREEN, "[Avatar Mod Shop] ^1Nemas doboljno novca za ^3Iskustvo") return PLUGIN_CONTINUE } cs_set_user_money(id, cs_get_user_money ( id ) - 4000) PlayerXP[id] += 100 ColorChat(id, GREEN, "[Avatar Mod Shop] ^1Kupio si ^3Iskustvo") eDeath() } case 2: { if(cs_get_user_money( id ) < 10000) { ColorChat(id, GREEN, "[Avatar Mod Shop] ^1Nemas dovoljno novca za ^3Super Iskustvo") return PLUGIN_CONTINUE } cs_set_user_money(id, cs_get_user_money(id) - 10000) PlayerXP[id] += 300 ColorChat(id, GREEN, "[Avatar Mod Shop] ^1Kupio si ^3Super Iskustvo") eDeath() } } } if(cs_get_user_team(id) == CS_TEAM_T) { if(item == MENU_EXIT) { menu_destroy(menu) ColorChat(id, GREEN, "[Avatar Mod Shop] ^1Zatvaram menu...") } menu_display(id, menu) switch(item) { case 0: { if(cs_get_user_money(id) < 1000) { ColorChat(id, GREEN, "[Avatar Mod Shop] ^1Nemas dovoljno novca za ^3Aspirin" ) return PLUGIN_CONTINUE } cs_set_user_money(id, cs_get_user_money(id) - 1000) set_user_health(id, get_user_health(id) + 30) ColorChat(id, GREEN, "[Avatar Mod Shop] ^1Kupio si ^3Aspirin") } case 1: { if(cs_get_user_money(id) < 4000) { ColorChat(id, GREEN, "[Avatar Mod Shop] ^1Nemas dovoljno novca za ^3Iskustvo" ) return PLUGIN_CONTINUE } cs_set_user_money(id, cs_get_user_money(id) - 4000) PlayerXP[id] += 300 ColorChat(id, GREEN, "[Avatar Mod Shop] ^1Kupio si ^3Iskustvo") eDeath() } case 2: { if(cs_get_user_money(id) < 10000) { ColorChat(id, GREEN, "[Avatar Mod Shop] ^1Nemas dovoljno novca za ^3Super Iskustvo" ) return PLUGIN_CONTINUE } cs_set_user_money(id, cs_get_user_money(id) - 10000) PlayerXP[id] += 300 ColorChat(id, GREEN, "[Avatar Mod Shop] ^1Kupio si ^3Super Iskustvo" ) eDeath() } } } return PLUGIN_CONTINUE } /*============*/
public ChangeClass(id) { if(cs_get_user_team(id) == CS_TEAM_CT) { new menu = menu_create("Izaberi svog Avatara:", "ChangeClass_Handle") menu_additem(menu, "Normal Avatar \r[ HEALTH+ ]", "1", 0) menu_additem(menu, "Invisible Avatar \r[ INVISIBLE+, HEALTH--- ]", "2", 0) menu_additem(menu, "Low-Gravity Avatar \r[ GRAVITY-, HEALTH- ]", "3", 0) menu_setprop(menu , MPROP_EXIT , MEXIT_ALL) menu_display(id , menu , 0) } if(cs_get_user_team(id) == CS_TEAM_T) { new menu = menu_create("Izaberi svog Vojnika:", "ChangeClass_Handle") menu_additem(menu, "Marinac \r[ \yDeagle \r]", "1", 0) menu_additem(menu, "Komandant \r[ \yM4A1 \r+ \yAK47 \r]", "2", 0) menu_additem(menu, "Snajperista \r[ \yAWP \r]", "3", 0) menu_setprop(menu , MPROP_EXIT , MEXIT_ALL) menu_display(id , menu , 0) } }
public ChangeClass_Handle(id, menu, item) /*Sta se desava kad igrac izabere klasu*/ { if(cs_get_user_team(id) == CS_TEAM_CT) { if(item == MENU_EXIT) { menu_destroy(menu) ColorChat(id, GREEN, "[Avatar Mod] ^1Zavaram menu...") } new szCommand[6] new szName[64] new access new callback menu_item_getinfo (menu, item, access, szCommand, 5, szName, 63, callback) new i = str_to_num(szCommand) if(PlayerClassCT[id] != i) { PlayerClassCT[id] = i ColorChat ( id, GREEN, "[Avatar Mod] ^1Sada si ^3%s", CLASSES_CT[i]) } else { ColorChat ( id, GREEN, "[Avatar Mod] ^1Vec si ^3%s", CLASSES_CT[i]) } menu_destroy(menu) ColorChat ( id, GREEN, "[Avatar Mod] ^1Zatvaram menu..." ) } if ( cs_get_user_team(id) == CS_TEAM_T) { if ( item == MENU_EXIT ) { menu_destroy(menu) ColorChat(id, GREEN, "[Avatar Mod] ^1Zavaram menu") } new szCommand[6] new szName[64] new access new callback menu_item_getinfo(menu, item, access, szCommand, 5, szName, 63, callback) new i = str_to_num(szCommand) if(PlayerClassT[id] != i) { PlayerClassT[id] = i; ColorChat(id, GREEN, "[Avatar Mod] ^1Sada si ^3%s", CLASSES_T[i]) } else { ColorChat(id, GREEN, "[Avatar Mod] ^1Vec si ^3%s", CLASSES_T[i]) } menu_destroy(menu) ColorChat(id, GREEN, "[Avatar Mod] ^1Zatvaram menu...") } return PLUGIN_CONTINUE }
/*=== ====== ===== ===*/ /*=== PLAYER SPAWN ===*/ /*=== ====== ===== ===*/ public Beginning(id) { if(cs_get_user_team(id) == CS_TEAM_CT) { if(!is_user_alive(id) || !is_user_connected(id)) { return PLUGIN_CONTINUE } if(!PlayerClassCT[id]) { ChangeClass(id) } if(PlayerClassCT[id] == 0) { strip_user_weapons(id) cs_set_user_model(id, "avatar") } if(PlayerClassCT[id] == 1) { strip_user_weapons(id) set_user_health(id, 2400) give_item(id, "weapon_knife") cs_set_user_model(id, "avatar") set_user_gravity(id, 0.75) set_user_rendering(id) } if(PlayerClassCT[id] == 2) { strip_user_weapons(id) set_user_health(id, 50) give_item(id, "weapon_knife") cs_set_user_model(id, "avatar") set_user_gravity(id, 0.75) set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 20) } if(PlayerClassCT[id] == 3) { strip_user_weapons(id) set_user_health(id, 1800) give_item(id, "weapon_knife") cs_set_user_model(id, "avatar") set_user_gravity(id, 0.5) set_user_rendering(id) } } if (cs_get_user_team(id) == CS_TEAM_T) { if(!is_user_alive(id) || !is_user_connected(id)) { return PLUGIN_CONTINUE } if(!PlayerClassT[id]) { ChangeClass(id) } if(PlayerClassT[id] == 0) { strip_user_weapons(id) cs_set_user_model(id, "marine") } if(PlayerClassT[id] == 1) { strip_user_weapons(id) give_item(id, "weapon_deagle") cs_set_user_bpammo(id, CSW_DEAGLE, 93) cs_set_user_model(id, "marine") set_user_rendering(id) } if(PlayerClassT[id] == 2) { strip_user_weapons(id) give_item(id, "weapon_m4a1") give_item(id, "weapon_ak47") cs_set_user_bpammo(id, CSW_M4A1, 120) cs_set_user_bpammo(id, CSW_AK47, 120) cs_set_user_model(id, "commander") set_user_rendering(id) } if(PlayerClassT[id] == 3) { strip_user_weapons(id) give_item(id, "weapon_awp") cs_set_user_bpammo(id, CSW_AWP, 40) cs_set_user_model(id, "marine") set_user_rendering(id) } } return PLUGIN_CONTINUE } /*====================*/
/*=== ========== ==== ====== ======= ===*/ /*=== HAPPENINGS WHEN CLIENT CONNECT ===*/ /*=== ========== ==== ====== ======= ===*/ public client_connect(id) { if(get_pcvar_num(SaveExpirience) == 1) { LoadData(id) } } /*======================================*/
/*=== ========== ==== ====== ========== ===*/ /*=== HAPPENINGS WHEN CLIENT DISCONNECT ===*/ /*=== ========== ==== ====== ========== ===*/ public client_disconnect(id) { if(get_pcvar_num(SaveExpirience) == 1) { SaveData(id) } PlayerXP[id] = 0 PlayerLevel[id] = 0 PlayerClassCT[id] = 0 PlayerClassT[id] = 0 } /*=========================================*/
/*=== ==== == = === = ===*/ /*=== SAVE XP & LVL'S ===*/ /*=== ==== == = === = ===*/ public SaveData ( id ) { new AuthID[35] get_user_authid(id, AuthID, 34) new vaultkey[64] new vaultdata[256] format(vaultkey, 63, "%s-Mod", AuthID) format(vaultdata, 255, "%i#%i#", PlayerXP[id], PlayerLevel[id]) nvault_set(g_Vault, vaultkey, vaultdata) return PLUGIN_CONTINUE } /*=======================*/
/*=== ==== == = === = ===*/ /*=== LOAD XP & LVL'S ===*/ /*=== ==== == = === = ===*/ public LoadData(id) { new AuthID[35] get_user_authid(id, AuthID, 34) new vaultkey[64] new vaultdata[256] format(vaultkey, 63, "%s-Mod", AuthID) format(vaultdata, 255, "%i#%i#", PlayerXP[id], PlayerLevel[id]) nvault_get(g_Vault, vaultkey, vaultdata,255) replace_all(vaultdata, 255, "#", " ") new playerxp[32] new playerlevel[32] parse(vaultdata, playerxp, 31, playerlevel, 31) PlayerXP[id] = str_to_num(playerxp) PlayerLevel[id] = str_to_num(playerlevel) return PLUGIN_CONTINUE } /*=======================*/
public CurWeapon(id) { if(PlayerClassCT[id] == 1) { if (get_user_weapon(id) == CSW_KNIFE) { entity_set_string(id, EV_SZ_viewmodel, "models/avatar_mod/v_avatar_knife.mdl") } } if(PlayerClassCT[id] == 2) { if(get_user_weapon(id) == CSW_KNIFE) { entity_set_string(id, EV_SZ_viewmodel, "models/avatar_mod/v_avatar_knife.mdl") } } if(PlayerClassCT[id] == 3) { if(get_user_weapon(id) == CSW_KNIFE) { entity_set_string(id, EV_SZ_viewmodel, "models/avatar_mod/v_avatar_knife.mdl") } } if(PlayerClassT[id] == 1) { if(get_user_weapon(id) == CSW_DEAGLE) { entity_set_string(id, EV_SZ_viewmodel, "models/avatar_mod/v_soldier_deagle.mdl") entity_set_string(id, EV_SZ_weaponmodel, "models/avatar_mod/p_soldier_deagle.mdl") } } if(PlayerClassT[id] == 2) { if(get_user_weapon(id) == CSW_M4A1) { entity_set_string(id, EV_SZ_viewmodel, "models/avatar_mod/v_soldier_m4a1.mdl") entity_set_string(id, EV_SZ_weaponmodel, "models/avatar_mod/p_soldier_m4a1.mdl") } if(get_user_weapon(id) == CSW_AK47) { entity_set_string(id, EV_SZ_viewmodel, "models/avatar_mod/v_soldier_ak47.mdl") entity_set_string(id, EV_SZ_weaponmodel, "models/avatar_mod/p_soldier_ak47.mdl") } } if(PlayerClassT[id] == 3) { if(get_user_weapon(id) == CSW_AWP) { entity_set_string(id, EV_SZ_viewmodel, "models/avatar_mod/v_soldier_awp.mdl") entity_set_string(id, EV_SZ_weaponmodel, "models/avatar_mod/p_soldier_awp.mdl") } } }
/*=== === ======= ===*/ /*=== WIN MESSAGE ===*/ /*=== === ======= ===*/ public message_TextMsg(const MsgId, const MsgDest, const MsgEntity) { static message[32] get_msg_arg_string(2, message, charsmax(message)) if(equal(message, "#Terrorists_Win")) { set_hudmessage(255, 0, 0, -1.0, 0.30, 0, 6.0, 12.0) show_hudmessage(0, "Vijnici su dobili bitku !") } else if(equal(message, "#CTs_Win")) { set_hudmessage(0, 170, 255, -1.0, 0.30, 0, 6.0, 12.0) show_hudmessage(0, "Avatari su dobili bitku !") } } /*===================*/
/*=== === ==== ======= ===*/ /*=== BUY ZONE REMOVER ===*/ /*=== === ==== ======= ===*/ public msgStatusIcon(msgid, msgdest, id) { static szIcon[8] get_msg_arg_string(2, szIcon, 7) if(equal(szIcon, "buyzone") && get_msg_arg_int(1)) { set_pdata_int(id, 235, get_pdata_int(id, 235) & ~(1<<0)) return PLUGIN_HANDLED } return PLUGIN_CONTINUE } /*========================*/
/*=== ===== ====== ==== ===*/ /*=== THIRD PERSON VIEW ===*/ /*=== ===== ====== ==== ===*/ public ThirdPersonView(id) { if(cs_get_user_team(id) == CS_TEAM_CT) { set_view(id, CAMERA_3RDPERSON) } }
public FirstPersonView(id) { if(cs_get_user_team(id) == CS_TEAM_CT) { set_view(id,CAMERA_NONE) } } /*=========================*/
/*=== == ====== ==== ===*/ /*=== NO WEAPON DROP ===*/ /*=== == ====== ==== ===*/ public round_start() { drop_locked = true }
public drop(id) { if (drop_locked) { client_print(id, print_center, "Nemozes da bacas oruzija !") return PLUGIN_HANDLED } return PLUGIN_CONTINUE } /*======================*/
/*=== == ====== ==== == ===== ===*/ /*=== NO WEAPON DROP ON DEATH ===*/ /*=== == ====== ==== == ===== ===*/ public forward_set_model(entid, model[]) { if (!is_valid_ent(entid) || !equal(model, WBOX, 9)) { return FMRES_IGNORED } new id = entity_get_edict(entid, EV_ENT_owner) if (!id || !is_user_connected(id) || is_user_alive(id)) { return FMRES_IGNORED } if (equal(model, WBOX)) { g_entid[id] = entid return FMRES_IGNORED } if (entid != g_entid[id]) { return FMRES_IGNORED } g_entid[id] = 0 for (new i = 1; i <= g_maxents; ++i) { if (is_valid_ent(i) && entid == entity_get_edict(i, EV_ENT_owner)) { kill_entity(entid) kill_entity(i) } } return FMRES_IGNORED }
stock kill_entity(id) { entity_set_int(id, EV_INT_flags, entity_get_int(id, EV_INT_flags)|FL_KILLME) } /*===============================*/
/*=== ==== ==== ======== ===*/ /*=== HELP CHAT MESSAGES ===*/ /*=== ==== ==== ======== ===*/ public Help() { switch(random(3)) { case 0: ColorChat(0, GREEN, "[Avatar Mod] ^1Da vidis stats, ^3say: /xp") case 1: ColorChat(0, GREEN, "[Avatar Mod] ^1Da promenis klasu ^3say: /class") case 2: ColorChat(0, GREEN, "[Avatar Mod] ^1Da otvorite Avatar Shop ^3say: /shop") case 3: ColorChat(0, GREEN, "[Avatar Mod] ^1Ako si Avatar, ^3say: /tp ^1da prebacis pogled u trece lice") } set_task(36.0, "Help") } /*==========================*/
Thanks
This is not only my code  , lots of people helped
Last edited by Krle; 07-30-2011 at 07:18.
|
|