Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Inspired from TelyX, A§H»Wizard, H»Kennan & AelitePrime 's work --
- -- For the skull weapon --
- skull = {}
- frag_count = 0
- plasma_count = 0
- max_health = 0.1
- function GetRequiredVersion() return 200 end
- function OnScriptLoad(processid, game, persistent) end
- function OnNewGame(map)
- LoadTags()
- end
- function OnPlayerSpawn(player)
- writefloat(getobject(getplayerobjectid(player)) + 0xE0, max_health)
- end
- function OnPlayerSpawnEnd(player, m_objectId)
- local hash = gethash(player)
- skull[hash] = skull[hash] or {}
- local m_object = getobject(m_objectId)
- if m_object then
- writebyte(m_object + 0x31E, frag_count)
- writebyte(m_object + 0x31F, plasma_count)
- end
- for i = 0,3 do
- local m_object = getobject(m_objectId)
- if m_object then
- local weapID = readdword(m_object + 0x2F8 + i*4)
- local weap = getobject(weapID)
- if weap then
- destroyobject(weapID)
- end
- end
- end
- skull[hash].objId = createobject(oddball_tag_id, 0, 1, false, 0, 0, 0)
- assignweapon(player, skull[hash].objId)
- end
- function OnObjectCreationAttempt(mapId, parentId, player)
- return checkObject(mapId)
- end
- function OnObjectInteraction(player, objId, mapId)
- if mapId == fragnade_tag_id or plasmanade_tag_id or oddball_tag_id then
- return false
- end
- return true
- end
- function OnDamageLookup(receiving, causing, mapId, tagdata)
- if mapId == global_fallingId then
- return false
- elseif mapId == oddball_melee_tag_id then
- writefloat(tagdata, 0x1D0, 500)
- writefloat(tagdata, 0x1D4, 500)
- writefloat(tagdata, 0x1D8, 500)
- end
- if causing then
- local c_object = getobject(causing)
- if c_object then
- local causer = objectaddrtoplayer(c_object)
- if causer then
- if isinvehicle(causer) then
- local m_vehicleId = getplayervehicleid(causer)
- if m_vehicleId then
- local m_vehicle = getobject(m_vehicleId)
- local driver = getdriverplayer(m_vehicle)
- if driver == causer then
- return false
- end
- end
- end
- end
- end
- end
- end
- function OnPlayerKill(killer, victim, mode)
- if mode == 2 then
- local victim_kills = readword (getplayer(victim), 0x9C)
- victim_kills = victim_kills + 1
- --guardianed = getplayer(victim)
- writeword(getplayer(victim) + 0x9C, victim_kills)
- privatesay(getplayer(victim), "Damned guardians, here earn your frag")
- end
- local m_player = getplayer(victim)
- if m_player == nil then
- return
- end
- local m_object = getobject(readdword(m_player + 0x34))
- if m_object then
- for i = 0,3 do
- local weapID = readdword(m_object + 0x2F8 + i*4)
- if weapID then
- local weap = getobject(weapID)
- if weap then
- destroyobject(weapID)
- end
- end
- end
- end
- end
- function OnClientUpdate(player)
- local hash = gethash(player)
- local m_player = getplayer(player)
- if m_player == nil then
- return
- end
- local m_objectId = getplayerobjectid(player)
- if m_objectId == nil then
- return
- end
- local m_object = getobject(m_objectId)
- if m_object then
- local shooting = readbit(m_object + 0x209, 4)
- local nading2 = readbit(m_object + 0x209, 2)
- local nading = readbit(m_object + 0x209, 3)
- if shooting == true or nading == true then
- weapID = skull[hash].objId
- if m_player then
- if weapID then
- if getobject(weapID) then
- assignweapon(player, weapID)
- end
- end
- end
- end
- end
- end
- function checkObject(mapId)
- if mapId == "nil" then
- return false
- end
- return oddball_tag_id
- end
- function LoadTags()
- -- Equipment
- camouflage_tag_id = gettagid("eqip", "powerups\\active camouflage")
- healthpack_tag_id = gettagid("eqip", "powerups\\health pack")
- overshield_tag_id = gettagid("eqip", "powerups\\over shield")
- doublespeed_tag_id = gettagid("eqip", "powerups\\double speed")
- fullspec_tag_id = gettagid("eqip", "powerups\\full-spectrum vision")
- fragnade_tag_id = gettagid("eqip", "weapons\\frag grenade\\frag grenade")
- plasmanade_tag_id = gettagid("eqip", "weapons\\plasma grenade\\plasma grenade")
- rifleammo_tag_id = gettagid("eqip", "powerups\\assault rifle ammo\\assault rifle ammo")
- needlerammo_tag_id = gettagid("eqip", "powerups\\needler ammo\\needler ammo")
- pistolammo_tag_id = gettagid("eqip", "powerups\\pistol ammo\\pistol ammo")
- rocketammo_tag_id = gettagid("eqip", "powerups\\rocket launcher ammo\\rocket launcher ammo")
- shotgunammo_tag_id = gettagid("eqip", "powerups\\shotgun ammo\\shotgun ammo")
- sniperammo_tag_id = gettagid("eqip", "powerups\\sniper rifle ammo\\sniper rifle ammo")
- flameammo_tag_id = gettagid("eqip", "powerups\\flamethrower ammo\\flamethrower ammo")
- -- Weapons
- assaultrifle_tag_id = gettagid("weap", "weapons\\assault rifle\\assault rifle")
- oddball_tag_id = gettagid("weap", "weapons\\ball\\ball")
- flag_tag_id = gettagid("weap", "weapons\\flag\\flag")
- flamethrower_tag_id = gettagid("weap", "weapons\\flamethrower\\flamethrower")
- gravityrifle_tag_id = gettagid("weap", "weapons\\gravity rifle\\gravity rifle")
- 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")
- -- Globals
- global_distanceId = gettagid("jpt!", "globals\\distance")
- global_fallingId = gettagid("jpt!", "globals\\falling")
- -- Others
- assaultrifle_melee_tag_id = gettagid("jpt!", "weapons\\assault rifle\\melee")
- flag_melee_tag_id = gettagid("jpt!", "weapons\\flag\\melee")
- flamethrower_melee_tag_id = gettagid("jpt!", "weapons\\flamethrower\\melee")
- needler_melee_tag_id = gettagid("jpt!", "weapons\\ball\\melee")
- pistol_melee_tag_id = gettagid("jpt!", "weapons\\pistol\\melee")
- plasmapistol_melee_tag_id = gettagid("jpt!", "weapons\\plasma pistol\\melee")
- plasmarifle_melee_tag_id = gettagid("jpt!", "weapons\\plasma rifle\\melee")
- plasmacannon_melee_tag_id = gettagid("jpt!", "weapons\\effects\\plasma_cannon_melee")
- rocketlauncher_melee_tag_id = gettagid("jpt!", "weapons\\rocket launcher\\melee")
- shotgun_melee_tag_id = gettagid("jpt!", "weapons\\shotgun\\melee")
- sniper_melee_tag_id = gettagid("jpt!", "weapons\\sniper rifle\\melee")
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement