ID:175309
 
proc

Ticker()
gseconds++
if(gseconds == 60)
gseconds = 0
gminutes++
if(gminutes == 60)
gminutes = 0
ghours++
if(ghours == 24)
ghours = 0
gdays++
if(gdays == 29 && gmonths % 2 == 0)
gdays = 0
gmonths++
if(gmonths == 12 && gyears % 3 == 0)* gmonths++
return
else if(gmonths == 12)
gmonths = 0
gyears++
return
if(gdays == 30)
gdays = 0
gmonths++
if(gmonths == 12 && gyears % 3 == 0)* gmonths++
return
else if(gmonths == 12)
gmonths = 0
gyears++
return

for(var/atom/A in world)

A.Tick()

spawn(1)

Ticker()

*=error::invalid expression
*=error::invalid expression

hhheeeellllp :(

*for some reason the gmonth++ didn't tab down to the next line, they are both supposed to be down on the next line*
The marked gmonths++ bits should be on the next line and indented once. (Handy hint: Press Ctrl-T to see the tabs.)
In response to Crispy (#1)
thanks!

(as you can see, im using a psuedoceltic calendar, though ive yet to name the months, weeks, and days :P)