Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 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
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement