Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --BEHAVIOUR WHILE CHASING PLAYERS
- --[[
- function Zomb_chase (ped, Zx, Zy, Zz )
- if m_isNemesis(ped) then return end
- if isElement(ped) then
- if (getElementData ( ped, "status" ) == "chasing") and (getElementData (ped, "zombie") == true) then
- local x, y, z = getElementPosition( ped )
- if (getElementData ( ped, "target" ) == nil) and getElementData ( ped, "Tx" ) ~= false then
- local Px = getElementData ( ped, "Tx" )
- local Py = getElementData ( ped, "Ty" )
- local Pz = getElementData ( ped, "Tz" )
- local Pdistance = (getDistanceBetweenPoints3D( Px, Py, Pz, x, y, z ))
- if (Pdistance < 1.5 ) then
- setTimer ( function (ped) if ( isElement ( ped ) ) then setElementData ( ped, "status", "idle" ) end end, 2000, 1, ped )
- end
- end
- local distance = (getDistanceBetweenPoints3D( x, y, z, Zx, Zy, Zz ))
- if (distance < 1 ) then -- IF THE PED HASNT MOVED
- if (getElementData ( ped, "target" ) == nil) then
- local giveup = math.random( 1, 15 )
- if giveup == 1 then
- setElementData ( ped, "status", "idle" )
- else
- local action = math.random( 1, 2 )
- if action == 1 then
- setPedAnimation ( ped )
- triggerClientEvent ( "Zomb_Punch", getRootElement(), ped )
- setTimer ( function (ped) if ( isElement ( ped ) ) then setPedAnimation ( ped, "ped", chaseanim, -1, true, true, true ) end end, 800, 1, ped )
- setTimer ( Zomb_chase, 5000, 1, ped, x, y, z )
- elseif action == 2 then
- setPedAnimation ( ped )
- triggerClientEvent ( "Zomb_Jump", getRootElement(), ped )
- setTimer ( Zomb_chase, 3500, 1, ped, x, y, z )
- end
- end
- else
- local Ptarget = (getElementData ( ped, "target" ))
- if isElement(Ptarget) and not getElementData(Ptarget, "nemesis") then
- local Px, Py, Pz = getElementPosition( Ptarget )
- local Pdistance = (getDistanceBetweenPoints3D( Px, Py, Pz, Zx, Zy, Zz ))
- if (Pdistance < 1.2 ) then -- ATTACK A PLAYER IF THEY ARE CLOSE
- if ( isPedDead ( Ptarget ) ) then --EAT A DEAD PLAYER
- setPedAnimation ( ped )
- setPedAnimation ( ped, "MEDIC", "cpr", -1, false, true, false)
- setTimer ( function (ped) if ( isElement ( ped ) ) then setElementData ( ped, "status", "idle" ) end end, 10000, 1, ped )
- setTimer ( function (ped) if ( isElement ( ped ) ) then setPedRotation ( ped, getPedRotation(ped)-180) end end, 10000, 1, ped )
- zmoan(ped)
- else
- local action = math.random( 1, 6 )
- if action == 1 then
- setPedAnimation ( ped)
- triggerClientEvent ( "Zomb_Jump", getRootElement(), ped )
- setTimer ( Zomb_chase, 5000, 1, ped, x, y, z )
- else
- setPedAnimation ( ped)
- triggerClientEvent ( "Zomb_Punch", getRootElement(), ped )
- setTimer ( function (ped) if ( isElement ( ped ) ) then setPedAnimation ( ped, "ped", chaseanim, -1, true, true, true ) end end, 800, 1, ped )
- setTimer ( Zomb_chase, 5000, 1, ped, x, y, z )
- end
- end
- else
- if ( isPedDead (Ptarget) ) then
- setTimer ( function (ped) if ( isElement ( ped ) ) then setElementData ( ped, "status", "idle" ) end end, 2000, 1, ped )
- setTimer ( function (ped) if ( isElement ( ped ) ) then setPedRotation ( ped, getPedRotation(ped)-180) end end, 1800, 1, ped )
- else
- local action = math.random( 1, 2 )
- if action == 1 then
- setPedAnimation ( ped)
- triggerClientEvent ( "Zomb_Punch", getRootElement(), ped )
- setTimer ( function (ped) if ( isElement ( ped ) ) then setPedAnimation ( ped, "ped", chaseanim, -1, true, true, true ) end end, 800, 1, ped )
- setTimer ( Zomb_chase, 5000, 1, ped, x, y, z )
- elseif action == 2 then
- setPedAnimation ( ped)
- triggerClientEvent ( "Zomb_Jump", getRootElement(), ped )
- setTimer ( Zomb_chase, 5000, 1, ped, x, y, z )
- end
- end
- end
- else
- setElementData ( ped, "status", "idle" )
- end
- end
- else
- setPedAnimation ( ped, "ped", chaseanim, -1, true, true, true) --KEEP WALKING
- setTimer ( Zomb_chase, checkspeed, 1, ped, x, y, z ) --CHECK AGAIN
- end
- end
- end
- end
- --]]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement