ID:149116
 
This proc compiles correctly, but it doesn't execute world.Repop()at the end. The world stays the same.
mob/proc/City()
if(usr.City == 7)
world << "WINNER: [usr]!"
usr << "YOU WIN!"
usr.City = 0
world << "Cities reset!"
usr.Experience += 10
usr.wealth += 100
usr.Award_Status += 10
world << "REPOP!"
world.Repop()
I changed city type from turf to obj, and now it's even less functional.
obj
City
icon = 'city.dmi'
density = 1
verb
City_claim()
set src in oview(1)
usr.City += 1
usr << "[usr], you conquered a city!"
usr.Population += 100
usr.City()
src.Owner = "[usr]"
del(src)
In response to Drafonis
I'm not sure on a lot of the specifics, but I can tell you that world.Repop() doesn't really restore the world to its original state; it only re-creates objects on the original map that have been deleted (and I think just objs and mobs, not turfs). You probably need to completely reboot the world, or rely on a custom solution to restoring it.

Lummox JR