mob/proc/tsmooth() //Proc that Father Time calls to smooth terrain.
if(step(src,EAST))
else
Move(locate(1,y+1,1))
if(usr.loc==/turf/walls/sandwall)
if(/turf/water in view(1))
else if(/turf/sand in view(1))
new /turf/sand(src.loc)
else
new /turf/walls/grass(src.loc)
if(usr.loc==/turf/sand)
if(/turf/water in view(1))
else if(/turf/sand in view(1))
new /turf/water(src.loc)
else
new /turf/walls/grass(src.loc)
else if(usr.loc==/turf/stone)
if(/turf/walls/stonewall in view(1))
else
new/turf/walls/grass(src.loc)
else if(usr.loc==/turf/walls/stonewall)
if(/turf/walls/stonewall in view(1))
else if(/turf/stone in view(1))
new /turf/stone(src.loc)
else
new /turf/walls/grass(src.loc)
else if(usr.loc==/turf/dirt)
new /turf/walls/grass(src.loc)
else if(usr.loc==/turf/walls/dirtwall)
if(/turf/walls/grass in view(1))
else if(/turf/dirt||/turf/walls/dirtwall in view(1))
else
new /turf/walls/grass(src.loc)
sleep 1
tsmooth()
Problem description: I'm trying to make a terrain smoothing mob to go along with my terrain generating mob, so as to make the terrain fall in line and make sense. However, he just doesn't want to do his job. He'll go across the map row-by-row, but he won't smooth any terrain out. I can't figure out what I did wrong here, and could use some help.
Also forgive my atrocious mess of code, I'm quite new to this if that wasn't obvious.
Fixed it myself, missing locate() procs were the culprit.
It didn't. Father Time still completely ignores turf and the changes he's supposed to make. What am I doing wrong here?