oke i have a problem with my code in dont show hud messiges and show on evry round the raceselect menu
Code:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
#include <vault>
#include <xtrafun>
#define CLASS_NOTHING 0
#define CLASS_MONSTERCOM 1
#define CLASS_MONSTERSPY 2
#define CLASS_HUMENCOM 3
#define CLASS_HUMENSPY 4
#define MAXCLASSES 5
new PlayerClass[33]
new PlayerXP[33]
new PlayerLevel[33]
new const CLASSES[MAXCLASSES][] = {
"None",
"MonsterCom",
"MonsterSpi",
"HumanCom",
"HumanSpi"
}
new msgtext
new const LEVELS[10] = {
100,
200,
400,
800,
1600,
3200,
6400,
12800,
25600,
51200
}
public plugin_init()
{
register_clcmd ("spawnmon","islave")
register_clcmd ("spawnbarny","barney")
register_plugin("Human sv Monster Mod", "1.0", "Thats the way it is")
register_cvar("sv_HvsMmod", "1")
register_event("DeathMsg", "DeathMsg", "ae")
register_cvar("XP_per_kill", "50")
register_menucmd(register_menuid("menu_selectrace"),1023,"DOselectrace");
register_event("ResetHUD", "ResetHud", "b")
msgtext = get_user_msgid("StatusText")
register_clcmd("say /selectrace", "Selectrace")
register_clcmd("say_team /selectrace", "Selectrace")
}
public SaveXP(id)
{
new authid[32];
get_user_authid(id,authid,31);
new vaultkey[64], vaultdata[64];
format(vaultkey,63,"RACE-%s-class",authid);
format(vaultdata,63,"%d",PlayerClass[id]);
set_vaultdata(vaultkey,vaultdata);
format(vaultkey,63,"RACE-%s-xp",authid);
format(vaultdata,63,"%d",PlayerXP[id]);
set_vaultdata(vaultkey,vaultdata);
format(vaultkey,63,"RACE-%s-level",authid);
format(vaultdata,63,"%d",PlayerLevel[id]);
set_vaultdata(vaultkey,vaultdata);
}
public LoadXP(id)
{
new authid[32];
get_user_authid(id,authid,31);
new vaultkey[64], vaultdata[64];
format(vaultkey,63,"RACE-%s-class",authid);
get_vaultdata(vaultkey,vaultdata,63);
PlayerClass[id] = str_to_num(vaultdata);
format(vaultkey,63,"RACE-%s-xp",authid);
get_vaultdata(vaultkey,vaultdata,63);
PlayerXP[id] = str_to_num(vaultdata);
format(vaultkey,63,"RACE-%s-level",authid);
get_vaultdata(vaultkey,vaultdata,63);
PlayerLevel[id] = str_to_num(vaultdata);
}
public client_connect(id)
{
if(get_cvar_num("SaveXP") == 1) {
LoadXP(id)
client_print(id, print_chat, "[Human vs monster mod] XP Loaded!")
client_print(id, print_chat, "[Human vs monster mod] You are a %s with level %s and %s XP", PlayerClass[id], PlayerLevel[id], PlayerXP[id])
}
}
public client_disconnect(id)
{
if(get_cvar_num("SaveXP") == 1) {
SaveXP(id)
}
}
public Selectrace(id)
{
new menu[192]
new keys = MENU_KEY_0|MENU_KEY_1|MENU_KEY_2|MENU_KEY_3
format(menu, 191, "H vs M mod: Select race^n^n1. Monster commander^n2. Monster spy^n3. Humen commander^n4. Humen spy^n^n0. Exit")
show_menu(id, keys, menu, -1, "menu_SelectRace")
return PLUGIN_CONTINUE
}
public DOselectrace(id, key)
{
if(key == 0) {
if(PlayerClass[id] == CLASS_MONSTERCOM) {
client_print(id, print_chat, "[H vs M mod] You are allready a Monster Commander! Choose something else!")
Selectrace(id)
return PLUGIN_HANDLED
}
PlayerClass[id] = CLASS_MONSTERCOM
client_print(id, print_chat, "[H vs M mod] You are now a Monster commander!")
}
if(key == 1) {
if(PlayerClass[id] == CLASS_MONSTERSPY) {
client_print(id, print_chat, "[H vs M mod] You are allready a Mosnter Spy! Choose something else!")
Selectrace(id)
return PLUGIN_HANDLED
}
PlayerClass[id] = CLASS_MONSTERSPY
client_print(id, print_chat, "[H vs M mod] You are now a Monster Spy!")
}
if(key == 2) {
if(PlayerClass[id] == CLASS_HUMENCOM) {
client_print(id, print_chat, "[H vs M mod] You are allready a Humen commander! Choose something else!")
Selectrace(id)
return PLUGIN_HANDLED
}
PlayerClass[id] = CLASS_HUMENCOM
client_print(id, print_chat, "[H vs M mod] You are now a Humen commander!")
}
if(key == 3) {
if(PlayerClass[id] == CLASS_HUMENSPY) {
client_print(id, print_chat, "[H vs M mod] You are allready a Humen Spy! Choose something else!")
Selectrace(id)
return PLUGIN_HANDLED
}
PlayerClass[id] = CLASS_HUMENSPY
client_print(id, print_chat, "[H vs M mod You are now a Humen Spy!")
}
ShowHUD(id)
return PLUGIN_HANDLED
}
public islave(id)
{
if(PlayerClass[id] == CLASS_MONSTERCOM )
{
new targetid, body
get_user_aiming(id, targetid, body)
if (targetid)
{
new cmd[128]
format(cmd, 127, "monster islave #%i", targetid )
server_cmd(cmd)
emit_sound(id, CHAN_STATIC, "debris/beamstart7.wav", 1.0, ATTN_NORM, 0, PITCH_NORM);
}
else
{
client_print(id,print_center,"Crosshairs must be on someone to spawn")
}
}
return PLUGIN_HANDLED
}
public barney(id)
{
if(PlayerClass[id] == CLASS_HUMENCOM )
{
new targetid, body
get_user_aiming(id, targetid, body)
if (targetid)
{
new cmd[128]
format(cmd, 127, "monster barney #%i", targetid )
server_cmd(cmd)
emit_sound(id, CHAN_STATIC, "debris/beamstart7.wav", 1.0, ATTN_NORM, 0, PITCH_NORM);
}
else
{
client_print(id,print_center,"Crosshairs must be on someone to spawn")
}
}
return PLUGIN_HANDLED
}
public ResetHud(id)
{
if(PlayerClass[id] == CLASS_NOTHING) {
Selectrace(id)
return PLUGIN_HANDLED
}
return PLUGIN_HANDLED
}
public DeathMsg()
{
if(get_cvar_num("sv_HvsMmod") == 0) {
return PLUGIN_HANDLED
}
new attacker = read_data(1)
if(PlayerClass[attacker] == CLASS_NOTHING) {
return PLUGIN_HANDLED
}
if(PlayerLevel[attacker] == 6) {
return PLUGIN_HANDLED
}
PlayerXP[attacker] += get_cvar_num("XP_per_kill")
if(PlayerXP[attacker] >= LEVELS[PlayerLevel[attacker]]) {
PlayerLevel[attacker] += 1
client_print(attacker, print_chat, "[H vs M mod] Congratulations! You are now level %i!", PlayerLevel[attacker])
if(get_cvar_num("SaveXP") == 1) {
SaveXP(attacker)
}
ShowHUD(attacker)
}
ShowHUD(attacker)
return PLUGIN_CONTINUE
}
public ShowHUD(id)
{
new HUD[51]
format(HUD, 50, "[%s]Level: %i XP: %i", CLASSES[PlayerClass[id]], PlayerLevel[id], PlayerXP[id])
message_begin(MSG_ONE, msgtext, {0,0,0}, id)
write_byte(0)
write_string(HUD)
message_end()
return
}