Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Slow down peeps holding the flag --
- scores = {}
- holding = {}
- function GetRequiredVersion() return 200 end
- function OnScriptLoad(processId, game, persistent)
- gametype_game = readbyte(0x671340 + 0x30)
- team_play = readbyte(0x671340 + 0x34)
- end
- function OnPlayerJoin(player)
- scores[gethash(player)] = 0
- holding[gethash(player)] = 0
- end
- function OnTeamChange(player, old_team, new_team, relevant)
- scores[gethash(player)] = 0
- holding[gethash(player)] = 0
- end
- function OnPlayerScore(player, score, gametype)
- local name = getname(player)
- local team = getteam(player)
- privatesay(player, "Welldone !")
- if team == 1 then
- say(name .. " just scored, good job blue team")
- else
- say(name .. " just scored, good job red team")
- end
- end
- function OnClientUpdate(player)
- if gethash(player) then
- local score = getscore(player)
- if score > scores[gethash(player)] then
- OnPlayerScore(player, score, gametype_game)
- scores[gethash(player)] = score
- end
- if isHoldingFlag(player) then
- setspeed(player, 0.7)
- else
- setspeed(player, 1)
- end
- end
- end
- function getscore(player)
- local score = 0
- local timed = false
- if gametype_game == 1 then
- score = readword(getplayer(player) + 0xC8)
- end
- if timed == true then
- score = math.floor(score / 30)
- end
- return score
- end
- function isHoldingFlag(player)
- local redflag = readdword(0x639B98 + 0x0)
- local blueflag = readdword(0x639B98 + 0x4)
- local m_object = getobject(getplayerobjectid(player))
- for i = 0,3 do
- local weapId = readdword(m_object + 0x2F8 + i*4)
- if weapId == redflag or weapId == blueflag then
- return true
- end
- end
- return false
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement