home *** CD-ROM | disk | FTP | other *** search
/ Enter 2003: The Beautiful Scenery / enter-parhaat-2003.iso / files / frendz.exe / frendz.dcr / Scripts_52_Timers.ls < prev    next >
Encoding:
Text File  |  2002-12-31  |  1.3 KB  |  61 lines

  1. global FRAME_RATE, TICKS_PER_FRAME, TIMER_STAT_INDEX, gpvTimerActive, gpvTimerCount, gpvLevelTimeCount, gpvLevelTimeActive, gpvLevelTimeStart, gpvLevelTimeLast
  2.  
  3. on pvInitTimersFrameOne theFrameRate
  4.   FRAME_RATE = theFrameRate
  5.   TICKS_PER_FRAME = integer(60 / FRAME_RATE)
  6.   worldResetTimer()
  7.   gpvLevelTimeActive = 0
  8.   gpvTimerActive = 0
  9. end
  10.  
  11. on pvInitTimersNewGame
  12.   theRate = the frameTempo
  13.   worldStopTimer()
  14.   worldResetTimer()
  15.   worldStartTimer()
  16.   gpvLevelTimeCount = 0
  17.   gpvLevelTimeStart = the timer
  18.   gpvLevelTimeLast = gpvLevelTimeStart
  19.   gpvLevelTimeActive = 1
  20. end
  21.  
  22. on worldResetTimer
  23.   gpvTimerCount = 0
  24. end
  25.  
  26. on worldStartTimer
  27.   gpvTimerActive = 1
  28. end
  29.  
  30. on worldStopTimer
  31.   gpvTimerActive = 0
  32. end
  33.  
  34. on worldGetTimer
  35.   theTime = 10 * gpvTimerCount / FRAME_RATE
  36.   return theTime
  37. end
  38.  
  39. on pvTheTimer
  40.   theTimer = integer(gpvLevelTimeCount * 60 / FRAME_RATE)
  41.   return theTimer
  42. end
  43.  
  44. on pvUpdateTimers
  45.   retcode = 0
  46.   if gpvTimerActive then
  47.     gpvTimerCount = gpvTimerCount + 1
  48.   end if
  49.   if gpvLevelTimeActive then
  50.     gpvLevelTimeCount = gpvLevelTimeCount + 1
  51.     gpvLevelTimeNow = the timer
  52.     ticksElapsed = gpvLevelTimeNow - gpvLevelTimeLast
  53.     if ticksElapsed > 10 then
  54.       gpvLevelTimeNow = the timer
  55.     end if
  56.     gpvLevelTimeLast = gpvLevelTimeNow
  57.     retcode = pvTheTimer()
  58.   end if
  59.   return retcode
  60. end
  61.