-- Anti vehicles Camp - inspired from Eliteprime, Wizard, Shaft and Bugs's works -- -- Whith the great help of A§H»Wizard -- playerRunoverCounter = {} playerGbCounter = {} playerBbCounter = {} playerTbCounter = {} playerBfCounter = {} playerTsCounter = {} playerIsHit = {} playerIsHita = {} playerIsHitb = {} playerIsHitc = {} playerIsHitd = {} playerIsHite = {} survivesro = 3 -- The player will die twice before surviving by runovers survivesgb = 5 -- The player will die four times before surviving by ghost bolts survivesbb = 5 -- The player will die four times before surviving by banshee bolts survivestb = 5 -- The player will die four times before surviving by tank bullets survivesbf = 3 -- The player will die twice before surviving by banshee fuel rod survivests = 3 -- The player will die twice before surviving by tank shell function GetRequiredVersion() return 200 end function OnScriptLoad(processid, game, persistent)end function OnNewGame(map) -- Vehicles banshee_tag_id = gettagid("vehi", "vehicles\\banshee\\banshee_mp") turret_tag_id = gettagid("vehi", "vehicles\\c gun turret\\c gun turret_mp") ghost_tag_id = gettagid("vehi", "vehicles\\ghost\\ghost_mp") rwarthog_tag_id = gettagid("vehi", "vehicles\\rwarthog\\rwarthog") tank_tag_id = gettagid("vehi", "vehicles\\scorpion\\scorpion_mp") warthog_tag_id = gettagid("vehi", "vehicles\\warthog\\mp_warthog") -- Weapons assaultrifle_tag_id = gettagid("weap", "weapons\\assault rifle\\assault rifle") oddball_tag_id = gettagid("weap", "weapons\\ball\\ball") flag_tag_id = gettagid("flag", "weap", "weapons\\flag\\flag") flamethrower_tag_id = gettagid("weap", "weapons\\flamethrower\\flamethrower") needler_tag_id = gettagid("weap", "weapons\\needler\\mp_needler") pistol_tag_id = gettagid("weap", "weapons\\pistol\\pistol") plasmapistol_tag_id = gettagid("weap", "weapons\\plasma pistol\\plasma pistol") plasmarifle_tag_id = gettagid("weap", "weapons\\plasma rifle\\plasma rifle") plasmacannon_tag_id = gettagid("weap", "weapons\\plasma_cannon\\plasma_cannon") rocketlauncher_tag_id = gettagid("weap", "weapons\\rocket launcher\\rocket launcher") shotgun_tag_id = gettagid("weap", "weapons\\shotgun\\shotgun") sniper_tag_id = gettagid("weap", "weapons\\sniper rifle\\sniper rifle") -- Projectiles bansheebolt_tag_id = gettagid("proj", "vehicles\\banshee\\banshee bolt") bansheeblast_tag_id = gettagid("proj", "vehicles\\banshee\\mp_banshee fuel rod") turretfire_tag_id = gettagid("proj", "vehicles\\c gun turret\\mp gun turret") ghostbolt_tag_id = gettagid("proj", "vehicles\\ghost\\ghost bolt") tankshot_tag_id = gettagid("proj", "vehicles\\scorpion\\bullet") tankblast_tag_id = gettagid("proj", "vehicles\\scorpion\\shell shock wave") warthogshot_tag_id = gettagid("proj", "vehicles\\warthog\\bullet") rifleshot_tag_id = gettagid("proj", "weapons\\assault rifle\\bullet") flame_tag_id = gettagid("proj", "weapons\\flamethrower\\flame") needlerfire_tag_id = gettagid("proj", "weapons\\needler\\mp_needle") pistolshot_tag_id = gettagid("proj", "weapons\\pistol\\bullet") plasmapistolbolt_tag_id = gettagid("proj", "weapons\\plasma pistol\\bolt") plasmariflebolt_tag_id = gettagid("proj", "weapons\\plasma rifle\\bolt") plasmarifleblast_tag_id = gettagid("proj", "weapons\\plasma rifle\\charged bolt") rocket_tag_id = gettagid("proj", "weapons\\rocket launcher\\rocket") shotgunshot_tag_id = gettagid("proj", "weapons\\shotgun\\pellet") snipershot_tag_id = gettagid("proj", "weapons\\sniper rifle\\sniper bullet") -- Globals global_distanceId = gettagid("jpt!", "globals\\distance") global_fallingId = gettagid("jpt!", "globals\\falling") global_vehiCollId = gettagid("jpt!", "globals\\vehicle_collision") end function OnDamageLookup(receiving, causing, mapId, tagdata) if causing and receiving then local c_player = objectidtoplayer(causing) local r_player = objectidtoplayer(receiving) if c_player and r_player and isinvehicle(c_player) then if not isinvehicle(r_player) then local mapId == global_vehiCollId then if not playerIsHit[r_player] then if not playerRunoverCounter[r_player] then playerRunoverCounter[r_player] = 0 end playerRunoverCounter[r_player] = playerRunoverCounter[r_player] + 1 if playerRunoverCounter[r_player] >= survivesro then return false else playerIsHit[r_player] = true registertimer(1000, "Alrdycrashed", r_player) end end elseif dmg == ghostbolt_tag_id then if not playerIsHita[r_player] then if not playerGbCounter[r_player] then playerGbCounter[r_player] = 0 end playerGb[r_player] = playerGbCounter[r_player] + 1 if playerGb[r_player] >= survivesgb then return false else playerIsHita[r_player] = true registertimer(1000, "Alrdyghostbolted", r_player) end end elseif dmg == bansheebolt_tag_id then if not playerIsHitb[r_player] then if not playerBbCounter[r_player] then playerBbCounter[r_player] = 0 end playerBbCounter[r_player] = playerBbCounter[r_player] + 1 if playerBbCounter[r_player] >= survivesbb then return false else playerIsHitb[r_player] = true registertimer(1000, "Alrdybansheebolted", r_player) end end elseif dmg == tankshot_tag_id then if not playerIsHitc[r_player] then if not playerTbCounter[r_player] then playerTbCounter[r_player] = 0 end playerTbCounter[r_player] = playerTbCounter[r_player] + 1 if playerTbCounter[r_player] >= survivestb then return false else playerIsHitc[r_player] = true registertimer(1000, "Alrdytankbulleted", r_player) end end elseif dmg == bansheeblast_tag_id then if not playerIsHitd[r_player] then if not playerBfCounter[r_player] then playerBfCounter[r_player] = 0 end playerBfCounter[r_player] = playerBfCounter[r_player] + 1 if playerBfCounter[r_player] >= survivesbf then return false else playerIsHitd[r_player] = true registertimer(1000, "Alrdybansheefueled", r_player) end end elseif dmg == bansheeblast_tag_idthen if not playerIsHite[r_player] then if not playerTsCounter[r_player] then playerTsCounter[r_player] = 0 end playerTsCounter[r_player] = playerTsCounter[r_player] + 1 if playerTsCounter[r_player] >= survivests then return false else playerIsHite[r_player] = true registertimer(1000, "Alrdytankshelled", r_player) end end end end end end return true end function getplayervehicleid(player) local m_objectId = getplayerobjectid(player) if m_objectId then return readdword(getobject(m_objectId) + 0x11C) end end function Alrdycrashed(id, count, player) playerIsHit[player] = nil return false end function Alrdyghostbolted(id, count, player) playerIsHita[player] = nil return false end function Alrdybansheebolted(id, count, player) playerIsHitb[player] = nil return false end function Alrdytankbulleted(id, count, player) playerIsHitc[player] = nil return false end function Alrdybansheefueled(id, count, player) playerIsHitd[player] = nil return false end function Alrdytankshelled(id, count, player) playerIsHite[player] = nil return false end