XP MOD
PHP Code:
/*Fixed Glow ************************************************************** Added Nade Trails{ grenade_tr: default 2 0 - None 1 - Random Colors 2 - Nade Specific 3 - Team Specific
grenade_he "255000000" set the trail color of Hegrenade grenade_fb "000000255" set the trail color of Flashbang grenade_sg "000255000" set the trail color of Smokegrenade} ************************************************************** Added Silly C4 ************************************************************** Added bullet whizz{ Should be Tested} ************************************************************** Must change the background sounds in new g_Sounds[ ][ ] =!! **************************************************************
*/
#include <amxmodx> #include <amxmisc> #include <fakemeta> #include <fakemeta_util> #include <hamsandwich> #include <engine> #include <csx> #include <xs> #include <cstrike> #include <fun> #include <nvault> //================================== #define MAXCLASSES 5 #define PLUGIN "dod Mod" #define VERSION "2" #define AUTHOR "One" #define FAENGER_R 150 #define FAENGER_G 255 #define FAENGER_B 0 #define MAX_SOUNDS 5 #define OTHER_R 255 #define OTHER_G 255 #define OTHER_B 255 #define TASK_MENU_DISLPAY_TIME 3.0 #define MAX_PLAYERS 32
new PlayerXP[33],PlayerLevel[33],PlayerClass[33] //these are for special kills new XP_Kill,XP_Knife,XP_Hs,SaveXP //this is for Nvault. so that We can save XP new g_vault new DOD_Enable; new g_BulletSounds[MAX_SOUNDS][] = { "misc/whizz1.wav", "misc/whizz2.wav", "misc/whizz3.wav", "misc/whizz4.wav", "misc/whizz5.wav" } new const CLASSES[MAXCLASSES][] = { "None", "Dog", "Cat", "Horse", "Cow" } new g_Sounds[ ][ ] = { "de_torn/torn_water2.wav", "de_torn/torn_water1.wav", "de_torn/torn_thndrstrike.wav", "de_torn/torn_Bomb1.wav", "de_torn/torn_Bomb2.wav", "de_torn/torn_AK-47.wav", "de_torn/torn_ambience.wav", "de_torn/tk_steam.wav", "de_torn/tk_windStreet.wav" } new const LEVELS[7] = { 0, 100,//this means you need 100 xp 300,//this means you need 200 xp 600,//this means you need 400 xp 1000,//so on 1600,//so on 3200 //so on } new g_LastWeapon[33] new g_LastAmmo[33] new g_cvar_tr new g_cvar_he new g_cvar_fb new g_cvar_sg new g_trail new DOD_RifflemanHP; new DOD_RifllemanAR; new DOD_AssaultHP; new DOD_AssaultAR; new DOD_SuportHP; new DOD_SuportAR; new DOD_SniperHP; new DOD_SniperAR; new DOD_MachineGunnerHP; new DOD_MachineGunnerAR; new DOD_GameName; new DOD_SayTextT; new DOD_DeadFade; new DOD_EnableDeadFade; new DOD_EnableHudHelp; new DEFUSING_SOUND[] = "weapons/c4_click.wav" new g_NumberID = 0 new g_iRandomNumbers[11] new g_Defusing[MAX_PLAYERS+1] new Float:g_fDelay[MAX_PLAYERS+1] new cvar_restrict, cvar_numbers, cvar_wallplant
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR); register_cvar("dod_mod", VERSION, FCVAR_SERVER | FCVAR_SPONLY); RegisterHam(Ham_Spawn, "player", "fwHamPlayerSpawnPost", 1); register_event("SendAudio", "t_win" , "a", "2&%!MRAD_terwin"); register_event("SendAudio", "ct_win", "a", "2&%!MRAD_ctwin"); register_event("DeathMsg","death_msg","a"); register_forward(FM_GetGameDescription,"fw_GameDesc"); set_task(1.0, "modInfo", 0, "", 0, "b"); register_menucmd(register_menuid("DOD_MENU"), 1023, "characters_menu"); DOD_Enable = register_cvar("dod_enabled", "1"); DOD_RifflemanHP = register_cvar("dod_riffleman_hp", "160"); DOD_RifllemanAR = register_cvar("dod_riffleman_armor", "160"); DOD_AssaultHP = register_cvar("dod_assault_hp", "180"); DOD_AssaultAR = register_cvar("dod_assault_armor", "100"); DOD_SuportHP = register_cvar("dod_suport_hp", "190"); DOD_SuportAR = register_cvar("dod_suport_armor", "120"); DOD_SniperHP = register_cvar("dod_sniper_hp", "200"); DOD_SniperAR = register_cvar("dod_sniper_armor", "200"); DOD_MachineGunnerHP = register_cvar("dod_mgunner_hp", "250"); DOD_MachineGunnerAR = register_cvar("dod_mgunner_armor", "250"); DOD_GameName = register_cvar("dod_game_name", "dod Mod Cs-Rockers.de"); DOD_EnableDeadFade = register_cvar("dod_dead_fade", "1"); DOD_EnableHudHelp = register_cvar("dod_enablehud_help", "1"); DOD_SayTextT = get_user_msgid("SayText"); DOD_DeadFade = get_user_msgid("ScreenFade"); register_clcmd("say /dodcmhelp", "cmdDodHelp"); register_clcmd("say_team /dodcmhelp", "cmdDodHelp"); register_clcmd("autobuy", "clcmd_Buy"); register_clcmd("rebuy", "clcmd_Buy"); register_clcmd("buy", "clcmd_Buy"); register_clcmd("buyequip", "clcmd_Buy"); register_clcmd("buyammo1", "clcmd_Buy"); register_clcmd("buyammo2", "clcmd_Buy"); register_clcmd("cl_setautobuy", "clcmd_Buy"); register_event("DeathMsg", "eDeath", "a") //is saving on? SaveXP = register_cvar("SaveXP","1") //how many xp are u gonna get per kill? XP_Kill=register_cvar("XP_per_kill", "20") //if you get a hs you get bonus xp XP_Hs=register_cvar("XP_hs_bonus","25") //if you make a knife kill you get bounus xp XP_Knife=register_cvar("XP_knife_bonus","30") //we just opened a new connection NVAULT connection // we will call it animod g_vault = nvault_open("animod") // register a say command to change class register_clcmd("say /class", "ChangeClass") register_clcmd("say_team /class", "ChangeClass") //show how much xp you have register_clcmd("say /xp", "ShowHud") register_clcmd("say_team /xp", "ShowHud") register_clcmd("cl_autobuy", "clcmd_Buy"); register_event("BarTime", "Event_BarTime", "b", "1=0") cvar_numbers = register_cvar("amx_sc_rannumber", "1") cvar_restrict = register_cvar("amx_sc_removeres", "1") cvar_wallplant = register_cvar("amx_sc_wallplant", "1") g_cvar_tr = register_cvar("grenade_tr", "2") g_cvar_he = register_cvar("grenade_he", "255000000") g_cvar_fb = register_cvar("grenade_fb", "000000255") g_cvar_sg = register_cvar("grenade_sg", "000255000") register_event("CurWeapon", "Event_CurWeapon", "be", "1=1") register_cvar("amx_bulletwhizz_dis", "40") register_cvar("amx_bulletwhizz", "1") new map[ 32 ]; get_mapname( map, 31 ); register_cvar("amxx_gravity", "800"); if( strcmp( map, "de_dust2")) set_task( 45.0, "sounds", _, _, _, "b" );
} public eDeath( ) //function name { // If the player's Class is nothing, then dont bother to do any of the below if(PlayerClass[attacker] == 0) return PLUGIN_CONTINUE // We create the victim variable, so that this function can check // if a player was killed new iVictim = read_data( 2 ) // If a player was killed by a HeadShot, this will be used for the cvar Xp_Hs new headshot = read_data( 3 ) //which weapon was used new clip, ammo, weapon = get_user_weapon(id,clip,ammo); PlayerXP[attacker] += get_pcvar_num(XP_Kill) // used for the xp_hs cvar // it checks if the victim was killed by a headshot if(headshot) // give him/her bonus xp PlayerXP[attacker] += get_pcvar_num(XP_Hs) // checks if the victim was killed by a knife if(weapon == CSW_KNIFE) //give him/her bonus xp PlayerXP[attacker] += get_pcvar_num(XP_Knife) // this checks if the player has enough xp to advance to a new level while(PlayerXP[attacker] >= LEVELS[PlayerLevel[attacker]]) { // this will create the Congratulations message. client_print(attacker, print_chat, "You are a level %i %s!", PlayerLevel[attacker],CLASSES[PlayerClass[attacker]]) // Add his/her level PlayerLevel[attacker] += 1 } // shows his level on a hud message ShowHud(attacker) } public ChangeClass(id) { new menu = menu_create("Class Menu" , "Class_Handle"); menu_additem(menu ,"Dog", "1" , 0); menu_additem(menu ,"Cat", "2" , 0); menu_additem(menu ,"Horse", "3" , 0); menu_additem(menu ,"Cow", "4" , 0); menu_setprop(menu , MPROP_EXIT , MEXIT_ALL); menu_display(id , menu , 0); return PLUGIN_CONTINUE; } public Class_Handle(id , menu , item) { if(item == MENU_EXIT) { menu_destroy(menu); } new szCommand[6] , szName[64]; new access , callback; menu_item_getinfo(menu , item , access , szCommand , 5 , szName , 63 , callback); new i = str_to_num(szCommand) if(PlayerClass[id] != i) { PlayerClass[id] = i client_print(id,print_chat,"You are now a %s",CLASSES[i]) } else { client_print(id,print_chat,"You are alredy a %s",CLASSES[i]) } menu_destroy(menu); return PLUGIN_CONTINUE } public client_connect(id) { // Only does it if xp saving is on if(get_pcvar_num(SaveXP) == 1) { // load your player data LoadData(id) } } public client_disconnect(id) { // Only does it if xp saving is on if(get_pcvar_num(SaveXP) == 1) { // lets save the data SaveData(id) } } public SaveData(id) { // get the players steam id. We need this because we are saving by steam id new AuthID[35] get_user_authid(id,AuthID,34) new vaultkey[64],vaultdata[256] // format wat is going to be in the animal mod vault file format(vaultkey,63,"%s-Mod",AuthID) format(vaultdata,255,"%i#%i#",PlayerXP[id],PlayerLevel[id]) // save the data nvault_set(g_vault,vaultkey,vaultdata) return PLUGIN_CONTINUE } public LoadData(id) { new AuthID[35] get_user_authid(id,AuthID,34) new vaultkey[64],vaultdata[256] // search format(vaultkey,63,"%s-Mod",AuthID) format(vaultdata,255,"%i#%i#",PlayerXP[id],PlayerLevel[id]) // load the data nvault_get(g_vault,vaultkey,vaultdata,255) replace_all(vaultdata, 255, "#", " ") new playerxp[32], playerlevel[32] parse(vaultdata, playerxp, 31, playerlevel, 31) PlayerXP[id] = str_to_num(playerxp) PlayerLevel[id] = str_to_num(playerlevel) return PLUGIN_CONTINUE 0 public ShowHud(id) { set_hudmessage(255,255, 255, 0.75, 0.01, 0, 6.0, 15.0) show_hudmessage(id, "Level: %i^nXP: %i^nClass: %s",PlayerLevel[id],PlayerXP[id],CLASSES[PlayerClass[id]]) } public plugin_precache(){
precache_sound(DEFUSING_SOUND) g_trail = precache_model("sprites/smoke.spr") for(new i = 0; i < MAX_SOUNDS; ++i) { precache_sound(g_BulletSounds[i]) for( new i; i < sizeof g_Sounds; i++ ) precache_sound( g_Sounds[ i ] );
}
}
public sounds() { new x = random_num( 0, sizeof g_Sounds-1 ); emit_sound( 0 ,CHAN_ITEM, g_Sounds[ x ], 1.0, ATTN_NORM, 0, PITCH_NORM ); } public Event_CurWeapon(id) { if(!get_cvar_num("amx_bulletwhizz") || !is_user_connected(id) || !is_user_alive(id)) { return PLUGIN_CONTINUE } new WeaponID = read_data(2), Clip = read_data(3) switch(WeaponID) { case CSW_HEGRENADE, CSW_FLASHBANG, CSW_SMOKEGRENADE, CSW_C4, CSW_KNIFE: return PLUGIN_CONTINUE } if(g_LastWeapon[id] == WeaponID && g_LastAmmo[id] > Clip) { new Players[32], iNum get_players(Players, iNum, "a") for(new i = 0; i < iNum; ++i) if(id != Players[i]) { new target = Players[i] new Float:fOrigin[2][3], temp[3], Float:fAim[3] entity_get_vector(id, EV_VEC_origin, fOrigin[0]) entity_get_vector(target, EV_VEC_origin, fOrigin[1]) get_user_origin(id, temp, 3) IVecFVec(temp, fAim) new iDistance = get_distance_to_line(fOrigin[0], fOrigin[1], fAim) if(iDistance > get_cvar_num("amx_bulletwhizz_dis") || iDistance < 0 || !fm_is_ent_visible(id, target)) { continue }
new RandomSound[64] format(RandomSound, 63, "%s", g_BulletSounds[random_num(0, MAX_SOUNDS-1)]) client_cmd(target, "spk %s", RandomSound) } } g_LastWeapon[id] = WeaponID g_LastAmmo[id] = Clip return PLUGIN_CONTINUE } stock get_distance_to_line(Float:pos_start[3], Float:pos_end[3], Float:pos_object[3]) { new Float:vec_start_end[3], Float:vec_start_object[3], Float:vec_end_object[3], Float:vec_end_start[3] xs_vec_sub(pos_end, pos_start, vec_start_end) // vector from start to end xs_vec_sub(pos_object, pos_start, vec_start_object) // vector from end to object xs_vec_sub(pos_start, pos_end, vec_end_start) // vector from end to start xs_vec_sub(pos_end, pos_object, vec_end_object) // vector object to end new Float:len_start_object = getVecLen(vec_start_object) new Float:angle_start = floatacos(xs_vec_dot(vec_start_end, vec_start_object) / (getVecLen(vec_start_end) * len_start_object), degrees) new Float:angle_end = floatacos(xs_vec_dot(vec_end_start, vec_end_object) / (getVecLen(vec_end_start) * getVecLen(vec_end_object)), degrees)
if(angle_start <= 90.0 && angle_end <= 90.0) return floatround(len_start_object * floatsin(angle_start, degrees)) return -1 } stock Float:getVecLen(Float:Vec[3]) { new Float:VecNull[3] = {0.0, 0.0, 0.0} new Float:len = get_distance_f(Vec, VecNull) return len }
public grenade_throw(id, gid, wid) { new gtm = get_pcvar_num(g_cvar_tr) if(!gtm) return new r, g, b switch(gtm) { case 1: { r = random(256) g = random(256) b = random(256) } case 2: { new nade, color[10] switch(wid) { case CSW_HEGRENADE: nade = g_cvar_he case CSW_FLASHBANG: nade = g_cvar_fb case CSW_SMOKEGRENADE: nade = g_cvar_sg } get_pcvar_string(nade, color, 9) new c = str_to_num(color) r = c / 1000000 c %= 1000000 g = c / 1000 b = c % 1000 } case 3: { switch(get_user_team(id)) { case 1: r = 255 case 2: b = 255 } } } message_begin(MSG_BROADCAST, SVC_TEMPENTITY) write_byte(TE_BEAMFOLLOW) write_short(gid) write_short(g_trail) write_byte(10) write_byte(5) write_byte(r) write_byte(g) write_byte(b) write_byte(192) message_end() }
public Event_BarTime(id) if(g_Defusing[id]) { g_NumberID = 0 g_Defusing[id] = 0 }
public bomb_defused(id) { g_NumberID = 0 g_Defusing[id] = 0 }
public bomb_defusing(id) { if(get_pcvar_num(cvar_restrict)) entity_set_float(id, EV_FL_maxspeed, 240.0) g_Defusing[id] = 1 } public bomb_planting(id) if(get_pcvar_num(cvar_restrict)) entity_set_float(id, EV_FL_maxspeed, 240.0)
public bomb_planted(id) { if(!get_pcvar_num(cvar_wallplant)) return g_NumberID = 0 for(new i = 0; i < 11; ++i) g_iRandomNumbers[i] = rn() new Float:fOrigin[3] entity_get_vector(id, EV_VEC_origin, fOrigin) new Float:fVelocity[3] VelocityByAim(id, 54, fVelocity) if(fVelocity[2] < -28.0) return
new Float:fTraceEnd[3] xs_vec_add(fVelocity, fOrigin, fTraceEnd) new Float:fTraceResult[3] trace_line(id, fOrigin, fTraceEnd, fTraceResult)
new Float:fNormal[3] if(trace_normal(id, fOrigin, fTraceEnd, fNormal) < 1) return
new c4 = -1 while((c4 = find_ent_by_model(c4, "grenade", "models/w_c4.mdl"))) { if(entity_get_int(c4, EV_INT_movetype) == MOVETYPE_FLY || (get_entity_flags(c4) & FL_ONGROUND)) continue entity_set_int(c4, EV_INT_movetype, MOVETYPE_FLY)
new Float:fNewOrigin[3] fNewOrigin[0] = fTraceResult[0] + (fNormal[0] * -0.01) fNewOrigin[1] = fTraceResult[1] + (fNormal[1] * -0.01) fNewOrigin[2] = fTraceResult[2] + fNormal[2] + 8.000 entity_set_origin(c4, fNewOrigin) new Float:fAngles[3] vector_to_angle(fNormal, fAngles) fAngles[0] -= 180.0, fAngles[1] -= 90.0, fAngles[2] -= 90.0 entity_set_vector(c4, EV_VEC_angles, fAngles) } }
public client_PreThink(id) { if(!get_pcvar_num(cvar_numbers) || !is_user_alive(id) || !g_Defusing[id]) return PLUGIN_CONTINUE
if(g_fDelay[id] + get_delay(id) < get_gametime()) { g_NumberID += 1 client_cmd(id, "spk %s", DEFUSING_SOUND) g_fDelay[id] = get_gametime() } set_hudmessage(255, 0, 0, -1.0, 0.4, 0, 0.0, 10.0, 0.0, 0.0, 2) switch(g_NumberID) { case 1: show_hudmessage(id, "%d%d%d%d%d%d%d%d%d%d%d", n(0), rn(), rn(), rn(), rn(), rn(), rn(), rn(), rn(), rn(), rn()) case 2: show_hudmessage(id, "%d%d%d%d%d%d%d%d%d%d%d", n(0), n(1), rn(), rn(), rn(), rn(), rn(), rn(), rn(), rn(), rn()) case 3: show_hudmessage(id, "%d%d%d%d%d%d%d%d%d%d%d", n(0), n(1), n(2), rn(), rn(), rn(), rn(), rn(), rn(), rn(), rn()) case 4: show_hudmessage(id, "%d%d%d%d%d%d%d%d%d%d%d", n(0), n(1), n(2), n(3), rn(), rn(), rn(), rn(), rn(), rn(), rn()) case 5: show_hudmessage(id, "%d%d%d%d%d%d%d%d%d%d%d", n(0), n(1), n(2), n(3), n(4), rn(), rn(), rn(), rn(), rn(), rn()) case 6: show_hudmessage(id, "%d%d%d%d%d%d%d%d%d%d%d", n(0), n(1), n(2), n(3), n(4), n(5), rn(), rn(), rn(), rn(), rn()) case 7: show_hudmessage(id, "%d%d%d%d%d%d%d%d%d%d%d", n(0), n(1), n(2), n(3), n(4), n(5), n(6), rn(), rn(), rn(), rn()) case 8: show_hudmessage(id, "%d%d%d%d%d%d%d%d%d%d%d", n(0), n(1), n(2), n(3), n(4), n(5), n(6), n(7), rn(), rn(), rn()) case 9: show_hudmessage(id, "%d%d%d%d%d%d%d%d%d%d%d", n(0), n(1), n(2), n(3), n(4), n(5), n(6), n(7), n(8), rn(), rn()) case 10:show_hudmessage(id, "%d%d%d%d%d%d%d%d%d%d%d", n(0), n(1), n(2), n(3), n(4), n(5), n(6), n(7), n(8), n(9), rn()) case 11:show_hudmessage(id, "%d%d%d%d%d%d%d%d%d%d%d", n(0), n(1), n(2), n(3), n(4), n(5), n(6), n(7), n(8), n(9),n(10)) default:show_hudmessage(id, "%d%d%d%d%d%d%d%d%d%d%d", n(0), n(1), n(2), n(3), n(4), n(5), n(6), n(7), n(8), n(9),n(10)) } return PLUGIN_CONTINUE }
stock rn() return random_num(0, 9) stock n(value) return g_iRandomNumbers[value] stock Float:get_delay(id) return cs_get_user_defuse(id) ? 0.4999 : 0.9999
public plugin_cfg() { if(get_pcvar_num(DOD_Enable) == 0) return PLUGIN_HANDLED;
new configsDir[32],file[192]; get_configsdir(configsDir, sizeof configsDir - 1); formatex(file,sizeof file - 1,"%s/dod_cm.cfg",configsDir); if(file_exists(file)) { server_cmd("exec %s", file); } else { set_hudmessage(255,255,255,0.75,0.05,0, 1.0, 1.0, 0.1, 0.2, 13); show_hudmessage(0, "[ERROR] DOD CM Configuration file not found!"); log_amx("[DOD ERROR] ======================================================\n!"); log_amx("[DOD ERROR] DOD CM Configuration file not found!"); log_amx("[DOD ERROR] ======================================================\n"); log_amx("[DOD ERROR] ======================================================\n"); }
return PLUGIN_CONTINUE; } public fwHamPlayerSpawnPost(id) { if(get_pcvar_num(DOD_Enable) == 0) return HAM_SUPERCEDE; set_task(TASK_MENU_DISLPAY_TIME, "ShowCharacters", id);
return HAM_IGNORED; } public ShowCharacters(id) { if(!is_user_alive(id) && is_user_bot(id) && is_user_hltv(id)) return PLUGIN_HANDLED;
new menu[192]; new keys = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5); format(menu, 191, "\y( Choose Character ):^n^n^n\r1. \wRiffleman^n\r2. \wAssault^n\r3. \wSuport^n\r4. \wSniper^n\r5. \wMachine Gunner^n^n\y6. \rI don't want nothing!"); show_menu(id, keys, menu, -1, "CSDOD_MENU");
return PLUGIN_HANDLED; }
public characters_menu(id, keys) { switch(keys) { case 0: { fm_strip_user_weapons(id); fm_give_item(id, "weapon_knife"); fm_give_item(id, "weapon_m4a1"); fm_give_item(id, "ammo_556nato"); fm_give_item(id, "ammo_556nato"); fm_give_item(id, "ammo_556nato"); fm_give_item(id, "weapon_hegrenade"); fm_give_item(id, "weapon_glock18"); fm_set_user_maxspeed( id, 265.0 ); get_user_footsteps(1); ///Must be checked.if not work, delete + fun.inc new Float:gravity = get_cvar_float("amxx_gravity"); gravity *= 0.8 set_user_gravity(id, gravity) fm_set_user_health(id, get_pcvar_num(DOD_RifflemanHP)); fm_set_user_armor(id, get_pcvar_num(DOD_RifllemanAR)); } case 1: { fm_strip_user_weapons(id); fm_give_item(id, "weapon_knife"); fm_give_item(id, "weapon_galil"); fm_give_item(id, "ammo_556nato"); fm_give_item(id, "ammo_556nato"); fm_give_item(id, "ammo_556nato"); fm_give_item(id, "weapon_smokegrenade"); fm_give_item(id, "weapon_hegrenade"); fm_give_item(id, "weapon_usp"); fm_give_item(id, "ammo_45acp"); fm_give_item(id, "ammo_45acp"); fm_give_item(id, "ammo_45acp"); fm_give_item(id, "ammo_45acp"); fm_give_item(id, "ammo_45acp"); fm_give_item(id, "ammo_45acp"); fm_give_item(id, "ammo_45acp"); fm_give_item(id, "ammo_45acp"); fm_set_user_maxspeed( id, 280.0 ); new Float:gravity = get_cvar_float("amxx_gravity"); gravity *= 0.9 set_user_gravity(id, gravity) fm_set_user_health(id, get_pcvar_num(DOD_AssaultHP)); fm_set_user_armor(id, get_pcvar_num(DOD_AssaultAR)); } case 2: { fm_strip_user_weapons(id); fm_give_item(id, "weapon_knife"); fm_give_item(id, "weapon_ak47"); fm_give_item(id, "ammo_762nato"); fm_give_item(id, "ammo_762nato"); fm_give_item(id, "ammo_762nato"); fm_give_item(id, "weapon_hegrenade"); fm_give_item(id, "weapon_fiveseven"); fm_give_item(id, "ammo_57mm"); fm_give_item(id, "ammo_57mm"); fm_give_item(id, "ammo_57mm"); fm_give_item(id, "ammo_57mm"); fm_set_user_maxspeed( id, 290.0 ); new Float:gravity = get_cvar_float("amxx_gravity"); gravity *= 0.89 set_user_gravity(id, gravity) fm_set_user_health(id, get_pcvar_num(DOD_SuportHP)); fm_set_user_armor(id, get_pcvar_num(DOD_SuportAR)); } case 3: { fm_strip_user_weapons(id); fm_give_item(id, "weapon_knife"); fm_give_item(id, "weapon_awp"); fm_give_item(id, "ammo_338magnum"); fm_give_item(id, "ammo_338magnum"); fm_give_item(id, "ammo_338magnum"); fm_give_item(id, "weapon_deagle"); fm_give_item(id, "ammo_50ae"); fm_give_item(id, "ammo_50ae"); fm_give_item(id, "ammo_50ae"); fm_give_item(id, "ammo_50ae"); fm_give_item(id, "ammo_50ae"); fm_give_item(id, "ammo_50ae"); fm_give_item(id, "ammo_50ae"); fm_give_item(id, "weapon_flashbang"); fm_give_item(id, "weapon_flashbang"); new Float:gravity = get_cvar_float("amxx_gravity"); gravity *= 0.5 set_user_gravity(id, gravity) fm_set_user_maxspeed( id, 260.0 ); fm_set_user_health(id, get_pcvar_num(DOD_SniperHP)); fm_set_user_armor(id, get_pcvar_num(DOD_SniperAR)); } case 4: { fm_strip_user_weapons(id); fm_give_item(id, "weapon_knife"); fm_give_item(id, "weapon_m249"); fm_give_item(id, "ammo_556natobox"); fm_give_item(id, "ammo_556natobox"); fm_give_item(id, "ammo_556natobox"); fm_give_item(id, "ammo_556natobox"); fm_give_item(id, "ammo_556natobox"); fm_give_item(id, "ammo_556natobox"); fm_give_item(id, "ammo_556natobox"); fm_give_item(id, "weapon_p228"); fm_give_item(id, "ammo_357sig"); fm_give_item(id, "ammo_357sig"); fm_give_item(id, "ammo_357sig"); fm_give_item(id, "ammo_357sig"); fm_give_item(id, "ammo_357sig"); fm_give_item(id, "ammo_357sig"); fm_set_user_maxspeed( id, 255.0 ); new Float:gravity = get_cvar_float("amxx_gravity"); gravity *= 1 set_user_gravity(id, gravity) fm_set_user_health(id, get_pcvar_num(DOD_MachineGunnerHP)); fm_set_user_armor(id, get_pcvar_num(DOD_MachineGunnerAR)); } case 5: { user_kill(id); color_print(id, "^x04You have died because you didn't select any class!"); fm_set_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 255);
return 0; } } return 0; } public fw_GameDesc() { if(get_pcvar_num(DOD_Enable) == 0) return FMRES_IGNORED;
new gamename[32]; get_pcvar_string(DOD_GameName, gamename, 31); forward_return(FMV_STRING, gamename);
return FMRES_SUPERCEDE; } public modInfo() { if(get_pcvar_num(DOD_EnableHudHelp) == 1) { set_hudmessage(255,255,0,0.75,0.05,0, 1.0, 1.0, 0.1, 0.2, 13); show_hudmessage(0, "This server run: DOD Character Mod by tuty^nType /dodcmhelp to know how to play"); } return PLUGIN_CONTINUE; } public cmdDodHelp(id) { const SIZE = 1024; new msg[SIZE+1],len = 0; len += formatex(msg[len], SIZE - len, "<html><body bgcolor=^"black^">"); len += formatex(msg[len], SIZE - len, "<center><font color=^"white^"><b><h1>DOD Character Mod Help</h1></b></font></center>"); len += formatex(msg[len], SIZE - len, "<center><font color=^"white^"><b><h1>This is a little gameplay like in Day of Defeat!</h1></b></font></center>"); len += formatex(msg[len], SIZE - len, "<center><font color=^"blue^"><u>Type /dodcmhelp to open this window!</u></font></center><br/>"); len += formatex(msg[len], SIZE - len, "<center><font color=^"white^"><b><h3><i>Character's Information:</i></h3></b></font></center><br/>"); len += formatex(msg[len], SIZE - len, "<font color=^"#4E9258^"><b><u>Riffleman:</u></b></font><font color=^"white^"> Have a M4A1, Knife, HE-Grenade, Glock18</font><br/>"); len += formatex(msg[len], SIZE - len, "<font color=^"#4CC417^"><b><u>Assault:</u></b></font><font color=^"white^"> Have a Galil, Knife, SmokeGrenade, HE-Grenade, USP</font><br/>"); len += formatex(msg[len], SIZE - len, "<font color=^"#617C58^"><b><u>Suport:</u></b></font><font color=^"white^"> Have a AK47, Knife, HE-Grenade</font><br/>"); len += formatex(msg[len], SIZE - len, "<font color=^"#7FE817^"><b><u>Sniper:</u></b></font><font color=^"white^"> Have a AWP, Knife, Deagle, FlashBang/font><br/>"); len += formatex(msg[len], SIZE - len, "<font color=^"#4AA02C^"><b><u>Machine Gunner:</u></b></font><font color=^"white^"> Have a Machinegun, Knife, P288</font><br/>"); len += formatex(msg[len], SIZE - len, "</body></html>");
show_motd(id, msg, "DOD Character Mod Help"); return PLUGIN_CONTINUE; } public clcmd_Buy(id) { set_pdata_int(id, 235, get_pdata_int(id, 235) & ~(1<<0)); return 0; } public client_impulse(id) { return PLUGIN_HANDLED; } public death_msg() { new victim = read_data(2); if(get_pcvar_num(DOD_EnableDeadFade) == 1) { message_begin(MSG_ONE_UNRELIABLE, DOD_DeadFade , {0,0,0}, victim); write_short(1<<10); write_short(1<<10); write_short(0x0000); write_byte(0); //r write_byte(0); //g write_byte(0); //b write_byte(111);//alpha message_end(); } return 1; } public t_win() { set_hudmessage(255, 0, 0, -1.0, 0.30, 1, 6.0, 8.0); show_hudmessage(0, "GERMANS WIN THE ROUND!"); set_rendering(kRenderFxGlowShell,OTHER_R,OTHER_G,OTHER_B,kRenderNormal,25); } public ct_win() { set_hudmessage(0, 0, 255, -1.0, 0.30, 1, 6.0, 8.0); show_hudmessage(0, "U.S WIN THE ROUND!"); set_rendering(kRenderFxGlowShell,FAENGER_R,FAENGER_G,FAENGER_B,kRenderNormal,25); } /*==================================== Glow public render(id) { if(team[id-1] == 0) set_rendering(id,kRenderFxGlowShell,OTHER_R,OTHER_G,OTHER_B,kRenderNormal,25) else set_rendering(id,kRenderFxGlowShell,FAENGER_R,FAENGER_G,FAENGER_B,kRenderNormal,25) } else set_rendering(id) } *///======================== End Glow stock color_print(id, const message[], {Float,Sql,Result,_}:...) { new Buffer[128],Buffer2[128]; new players[32], index, num, i;
formatex(Buffer2, sizeof Buffer2 - 1, "%s",message); vformat(Buffer, sizeof Buffer - 1, Buffer2, 3); get_players(players, num,"c"); if(id) { message_begin(MSG_ONE_UNRELIABLE, DOD_SayTextT, _, id); write_byte(id); write_string(Buffer); message_end(); } else { for(i = 0; i < num;i++) { index = players[i];
if(!is_user_connected(index)) continue;
message_begin(MSG_ONE_UNRELIABLE, DOD_SayTextT, _, index); write_byte(index); write_string(Buffer); message_end(); } } }
PHP Code:
Welcome to the AMX Mod X 1.8.1-300 Compiler. Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team
Error: Undefined symbol "attacker" on line 203 Error: Undefined symbol "id" on line 213 Error: Undefined symbol "attacker" on line 214 Error: Undefined symbol "attacker" on line 219 Error: Undefined symbol "attacker" on line 223 Warning: Loose indentation on line 226 Error: Undefined symbol "attacker" on line 226 Error: Undefined symbol "attacker" on line 228 Warning: Expression has no effect on line 228 Warning: Expression has no effect on line 228 Error: Undefined symbol "attacker" on line 228 Error: Invalid expression, assumed zero on line 228 Error: Too many error messages on one line on line 228
Compilation aborted. 10 Errors. Could not locate output file C:\Dokumente und Einstellungen\One\Desktop\DOD_CharactersMod.amx (compile failed).
this is just an test, but why i got errors ? :shock:
|