mob
proc
wander()
sleep(20)
step_rand(src)
while(src)
for(var/mob/M in view(3))
if(M == src)
wander()
return
if(M == istype(M,/mob/enemy/zombie))
wander()
return
zattack(M)
wander()
Problem description: The problem with the above code is not that it doesn't work, because it does. But it's that after a few moments of the game running, it crashes, and says this:
Zombie (/mob/enemy/zombie4): Move(the g1 (65,22,1) (/turf/nat/ngrass/g1), 8)
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
...
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): New(the s4 (22,1,1) (/turf/nat/sand/s4))
Shutting down after encountering too many critical errors.
runtime error: Maximum recursion level reached (perhaps there is an infinite loop)
To avoid this safety check, set world.loop_checks=0.
proc name: Move (/mob/Move)
usr: Zombie (/mob/enemy/zombie4)
src: Zombie (/mob/enemy/zombie4)
call stack:
Zombie (/mob/enemy/zombie4): Move(the g2 (15,46,1) (/turf/nat/ngrass/g2), 9)
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
...
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
Zombie (/mob/enemy/zombie4): wander()
And so on and so on.
What's wrong? : /
~Grand~