Re: Compile failed, but no list of errors?
I strongly suggest that you take a look at other plugins and tutorials before writing another plugin. I also recommend that you practice typing because you made many errors with spacing and incorrect characters.
This compiles without errors:
Code:
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <vault>
#define CLASS_NOTHING 0
#define CLASS_ARCHER 1
#define CLASS_PALADIN 2
#define CLASS_ASSASSIN 3
#define CLASS_MAGE 4
//Classes to add more do same format replace names with different one.
#define MAXCLASSES 5
new PlayerClass[33]
new PlayerXP[33]
new PlayerLevel[33]
new const CLASSES[MAXCLASSES] [] =
{
"None",
"Archer",
"Paladin",
"Assassin",
"Mage"
}
new msgtext
new const LEVELS[30] =
{
15,
34,
57,
92,
135,
372,
560,
840,
1242,
1716,
2360,
3216,
4200,
5460,
7050,
8840,
11040,
13716,
16680,
20216,
24402,
28980,
34320,
40512,
47216,
54900,
63666,
73080,
83720,
95700
}
public plugin_init()
{
register_plugin("Rpg Mod", "1.0", "For Valhalla")
register_cvar("sv_rpgmod", "1")
register_cvar("xp_per_kill", "10")
register_cvar("SaveXP", "1")
register_event("DeathMsg", "DeathMsg", "a")
register_event("ResetHUD", "ResetHud", "b")
register_menucmd(register_menuid("menu_ChooseClass"),1023,"DoChooseClass")
msgtext = get_user_msgid("StatusText")
register_clcmd("say /changeclass", "ChangeClass")
register_clcmd("say_team /changeclass", "ChangeClass")
}
public SaveXP(id)
{
new authid[32];
get_user_authid(id,authid,31);
new vaultkey[64], vaultdata[64];
format(vaultkey,63,"CLASS-%s-class",authid);
format(vaultdata,63,"%d",PlayerXP[id]);
set_vaultdata(vaultkey,vaultdata);
format(vaultkey,63,"CLASS-%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,"CLASS-%s-xp",authid);
get_vaultdata(vaultkey,vaultdata,63);
PlayerClass[id] = str_to_num(vaultdata);
format(vaultkey,63,"CLASS-%s-xp",authid);
get_vaultdata(vaultkey,vaultdata,63);
PlayerXP[id] = str_to_num(vaultdata);
format(vaultkey,63,"CLASS-%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, "[RPG Mod] Your XP loaded!")
client_print(id, print_chat, "[RPG Mod] You are a %s with a level of %s and %s XP", PlayerClass[id], PlayerLevel[id], PlayerXP[id])
}
}
public client_disconnect(id)
{
if(get_cvar_num("SaveXP") == 1) {
SaveXP(id)
}
}
stock ChooseClass(id)
{
new menu[192]
new keys = MENU_KEY_0|MENU_KEY_1|MENU_KEY_2|MENU_KEY_3
format(menu, 191, "RPG Mod: Choose Class^n^n1. Archer^n2. Paladin^n3. Assassin^n4. Mage^n^n0. Exit")
show_menu(id, keys, menu, -1, "menu_ChooseClass")
return PLUGIN_CONTINUE
}
public DoChooseClass(id, key)
{
if(key == 0) {
if(PlayerClass[id] == CLASS_ARCHER) {
client_print(id, print_chat, "[RPG Mod] Your class is already an archer.")
ChooseClass(id)
return PLUGIN_HANDLED
}
PlayerClass[id] = CLASS_ARCHER
client_print(id, print_chat, "[RPG Mod]Your class is an archer now.")
}
if(key == 1) {
if(PlayerClass[id] == CLASS_PALADIN) {
client_print(id, print_chat, "[RPG Mod]Your class is already a paladin.")
ChooseClass(id)
return PLUGIN_HANDLED
}
PlayerClass[id] = CLASS_PALADIN
client_print(id, print_chat, "[RPG Mod]Your class is a paladin now.")
}
if(key == 2) {
if(PlayerClass[id] == CLASS_ASSASSIN) {
client_print(id, print_chat, "[RPG Mod]Your class is already an assassin.")
ChooseClass(id)
return PLUGIN_HANDLED
}
PlayerClass[id] = CLASS_ASSASSIN
client_print(id, print_chat, "[RPG Mod]Your class is an assassin now.")
}
if(key == 3) {
if(PlayerClass[id] == CLASS_MAGE) {
client_print(id, print_chat, "[RPG Mod]Your class is already a mage.")
ChooseClass(id)
return PLUGIN_HANDLED
}
PlayerClass[id] = CLASS_MAGE
client_print(id, print_chat, "[RPG Mod]Your class is a mage now.")
}
ShowHUD(id)
return PLUGIN_HANDLED
}
public Reset_Hud(id)
{
if(get_cvar_num("sv_rpgmod") == 0) {
return PLUGIN_HANDLED
}
if(PlayerClass[id] == CLASS_NOTHING) {
ChooseClass(id)
return PLUGIN_HANDLED
}
return PLUGIN_HANDLED
}
public DeathMsg()
{
if(get_cvar_num("sv_rpgmod") == 0) {
return PLUGIN_HANDLED
}
new attacker = read_data(1)
if(PlayerClass[attacker] == CLASS_NOTHING) {
return PLUGIN_HANDLED
}
if(PlayerLevel[attacker] == 30) {
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, "[RPG Mod]You gained a level, 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
}
|