function GetRequiredVersion()
return 200
end
function OnScriptLoad(processid, game, persistent)
if game == "PC" then
map_pointer = 0x63525c
else
map_pointer = 0x5B927C
end
end
function OnScriptUnload()
end
function OnNewGame(map)
local map_base = readdword(map_pointer)
-- The MapID we're going to be writing to all the weapons.
local tank_tag_id = gettagid("vehi", "vehicles\\scorpion\\scorpion_mp")
-- 2408 = 0x968 Number of tags in the tag table.
local tagcount = readdword(map_base + 0xC)
-- Loop through all of the tags in the tag table.
for tag = 0,tagcount do
-- same address you get when you do gettagaddress(mapId) on a tagId.
local tag_address = readdword(map_base) + tag * 0x20
-- check if the tag we're looping through is a weapon.
if readstring(tag_address, 0x4) == "paew" then
-- This is the memory address where map mods are stored.
local address_tag_data = readdword(tag_address, 0x14)
-- triggers start at 0x0 so that's why we're starting at 0.
local number_of_triggers = readdword(address_tag_data, 0x4FC)
local triggers_address = readdword(address_tag_data, 0x4FC + 0x4)
for i = 0,number_of_triggers-1 do -- triggers start at 0x0 so that's why we're starting at 0.
writebit(triggers_address + 0x1, 5, 0) -- Make the bullet not client side only (is this even needed?)
writedword(triggers_address + 0x94 + 0xC, tank_tag_id) -- replace the projectile's mapId with the mapId of the tank.
end
end
end
end
Comments
0 B
|👍
/👎