Advertisement
Guest User

Untitled

a guest
Jul 25th, 2017
200
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.18 KB | None | 0 0
  1. --BEHAVIOUR WHILE CHASING PLAYERS
  2.  
  3. --[[
  4. function Zomb_chase (ped, Zx, Zy, Zz )
  5. if m_isNemesis(ped) then return end
  6.  
  7. if isElement(ped) then
  8. if (getElementData ( ped, "status" ) == "chasing") and (getElementData (ped, "zombie") == true) then
  9. local x, y, z = getElementPosition( ped )
  10. if (getElementData ( ped, "target" ) == nil) and getElementData ( ped, "Tx" ) ~= false then
  11. local Px = getElementData ( ped, "Tx" )
  12. local Py = getElementData ( ped, "Ty" )
  13. local Pz = getElementData ( ped, "Tz" )
  14. local Pdistance = (getDistanceBetweenPoints3D( Px, Py, Pz, x, y, z ))
  15. if (Pdistance < 1.5 ) then
  16. setTimer ( function (ped) if ( isElement ( ped ) ) then setElementData ( ped, "status", "idle" ) end end, 2000, 1, ped )
  17. end
  18. end
  19. local distance = (getDistanceBetweenPoints3D( x, y, z, Zx, Zy, Zz ))
  20. if (distance < 1 ) then -- IF THE PED HASNT MOVED
  21. if (getElementData ( ped, "target" ) == nil) then
  22. local giveup = math.random( 1, 15 )
  23. if giveup == 1 then
  24. setElementData ( ped, "status", "idle" )
  25. else
  26. local action = math.random( 1, 2 )
  27. if action == 1 then
  28. setPedAnimation ( ped )
  29. triggerClientEvent ( "Zomb_Punch", getRootElement(), ped )
  30. setTimer ( function (ped) if ( isElement ( ped ) ) then setPedAnimation ( ped, "ped", chaseanim, -1, true, true, true ) end end, 800, 1, ped )
  31. setTimer ( Zomb_chase, 5000, 1, ped, x, y, z )
  32. elseif action == 2 then
  33. setPedAnimation ( ped )
  34. triggerClientEvent ( "Zomb_Jump", getRootElement(), ped )
  35. setTimer ( Zomb_chase, 3500, 1, ped, x, y, z )
  36. end
  37. end
  38. else
  39. local Ptarget = (getElementData ( ped, "target" ))
  40. if isElement(Ptarget) and not getElementData(Ptarget, "nemesis") then
  41. local Px, Py, Pz = getElementPosition( Ptarget )
  42. local Pdistance = (getDistanceBetweenPoints3D( Px, Py, Pz, Zx, Zy, Zz ))
  43. if (Pdistance < 1.2 ) then -- ATTACK A PLAYER IF THEY ARE CLOSE
  44. if ( isPedDead ( Ptarget ) ) then --EAT A DEAD PLAYER
  45. setPedAnimation ( ped )
  46. setPedAnimation ( ped, "MEDIC", "cpr", -1, false, true, false)
  47. setTimer ( function (ped) if ( isElement ( ped ) ) then setElementData ( ped, "status", "idle" ) end end, 10000, 1, ped )
  48. setTimer ( function (ped) if ( isElement ( ped ) ) then setPedRotation ( ped, getPedRotation(ped)-180) end end, 10000, 1, ped )
  49. zmoan(ped)
  50. else
  51. local action = math.random( 1, 6 )
  52. if action == 1 then
  53. setPedAnimation ( ped)
  54. triggerClientEvent ( "Zomb_Jump", getRootElement(), ped )
  55. setTimer ( Zomb_chase, 5000, 1, ped, x, y, z )
  56. else
  57. setPedAnimation ( ped)
  58. triggerClientEvent ( "Zomb_Punch", getRootElement(), ped )
  59. setTimer ( function (ped) if ( isElement ( ped ) ) then setPedAnimation ( ped, "ped", chaseanim, -1, true, true, true ) end end, 800, 1, ped )
  60. setTimer ( Zomb_chase, 5000, 1, ped, x, y, z )
  61. end
  62. end
  63. else
  64. if ( isPedDead (Ptarget) ) then
  65. setTimer ( function (ped) if ( isElement ( ped ) ) then setElementData ( ped, "status", "idle" ) end end, 2000, 1, ped )
  66. setTimer ( function (ped) if ( isElement ( ped ) ) then setPedRotation ( ped, getPedRotation(ped)-180) end end, 1800, 1, ped )
  67. else
  68. local action = math.random( 1, 2 )
  69. if action == 1 then
  70. setPedAnimation ( ped)
  71. triggerClientEvent ( "Zomb_Punch", getRootElement(), ped )
  72. setTimer ( function (ped) if ( isElement ( ped ) ) then setPedAnimation ( ped, "ped", chaseanim, -1, true, true, true ) end end, 800, 1, ped )
  73. setTimer ( Zomb_chase, 5000, 1, ped, x, y, z )
  74. elseif action == 2 then
  75. setPedAnimation ( ped)
  76. triggerClientEvent ( "Zomb_Jump", getRootElement(), ped )
  77. setTimer ( Zomb_chase, 5000, 1, ped, x, y, z )
  78. end
  79. end
  80. end
  81. else
  82. setElementData ( ped, "status", "idle" )
  83. end
  84. end
  85. else
  86. setPedAnimation ( ped, "ped", chaseanim, -1, true, true, true) --KEEP WALKING
  87. setTimer ( Zomb_chase, checkspeed, 1, ped, x, y, z ) --CHECK AGAIN
  88. end
  89. end
  90. end
  91. end
  92. --]]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement