|
Furcadia Links: Furcadia Site Furcadia Forums Downloads: Graphite's PatchMerger Furcadia Historical Society ![]() |
DragonSpeak
Systems
"Time Module" I came up with
the Game Time System when working on the Original SpiritQuest Dream.
I use this script to make it seem like time is passing with 12 hours of day and 12 hours of night. One Game day is 2 hours, but time only passes if there is someone in the dream. ========= Time Module by Nommad ============ *6 sec = 1 min, 360 seconds = 1 hour, time only passes if there is someone in the dream *========Spoken Share commands to test/manage time (0:31) When a furre says {TimeWarp}, *advance 1 hour (1:11) and the triggering furre has got shared control (or is the dream owner), (5:200) emit message {The time is now %time } to whoever set off the trigger. (5:50) set countdown timer #90 to go off in #2 seconds. (0:32) When a furre says something with {newDay} in it, *start a new day (1:11) and the triggering furre has got shared control (or is the dream owner), (5:300) set variable #%time to the value #30. (5:50) set countdown timer #90 to go off in #2 seconds. *begin night (0:32) When a furre says something with {newNight} in it, (1:11) and the triggering furre has got shared control (or is the dream owner), (5:300) set variable #%time to the value #18. (5:50) set countdown timer #90 to go off in #2 seconds. *=========End Share Commands *=========Main Time Mechanics *startup (0:0) When everything is starting up, (5:300) set variable %day to the value 1. (5:300) set variable #%time to the value #4. (5:300) set variable #%min to the value #0. (5:300) set variable #%light to the value #0 (5:300) set variable #%telltime to the value #0. *the variable darkness need to be defined with the object # for the night effect * (5:300) set variable #%darkness to the value #?. (5:50) set countdown timer #90 to go off in #2 seconds. (0:100) When #6 seconds have passed, offset by #0, (5:302) take variable #%min and add #1 to it. *hours (0:50) When countdown timer #90 goes off, (5:302) take variable #%time and add #1 to it. *cleanup (use this to remove or change things every game hour) (5:5) change object type #1000 to type #79. (5:5) change object type #1001 to type #79. check for new day (0:50) When countdown timer #90 goes off, (1:201) and variable #%time is greater than #28. (5:300) set variable #%time to the value #5. (5:302) take variable #%day and add #1 to it. *New Day / Reset (0:50) When countdown timer #90 goes off, (1:200) and variable #%time is equal to #6. (5:300) set variable #%light to the value #1. (5:204) emitloud message { } to everyone on the map. (5:204) emitloud message {the sun rises} to everyone on the map. (5:12) play sound #92 to everyone on the map. (5:31) play midi #m1 to everyone on the map. (0:50) When countdown timer #90 goes off, (1:201) and variable #%time is greater than #4. (5:300) set variable #%light to the value #1. *darkness *the variable darkness need to be defined in startup or use the object # for the night effect (5:5) change object type #%darkness to type #0. (0:50) When countdown timer #90 goes off, (1:200) and variable #%time is equal to #18. (5:300) set variable #%light to the value #0. (5:204) emitloud message { } to everyone on the map. (5:204) emitloud message {the sun sets} to everyone on the map. (0:50) When countdown timer #90 goes off, (1:200) and variable #%time is equal to #24. (5:204) emitloud message { } to everyone on the map. (5:204) emitloud message {it is midnight} to everyone on the map. (0:50) When countdown timer #90 goes off, (1:201) and variable #%time is greater than #18. (5:300) set variable #%light to the value #0. (5:204) emitloud message { } to everyone on the map. (5:204) emitloud message {...shadows claim the night...} to everyone on the map. (3:1) everywhere on the whole map, (4:8) only where there are no objects, darkness *the variable darkness need to be defined in startup or use the object # for the night effect (5:4) place object type #%darkness *========== Tell Time / Emit Section *tell time am / pm (emit the time and day every game hour) (0:50) When countdown timer #90 goes off, (1:202) and variable #%time is less than #12. (5:301) copy the value of variable #%time into variable #%telltime. (5:204) emitloud message { } to everyone on the map. (5:204) emit message {Day: %day / Time: %telltime am } to whoever set off the trigger. (5:204) emit message {...it is morning...} to whoever set off the trigger. (5:12) play sound #92 to everyone on the map. (0:50) When countdown timer #90 goes off, (1:200) and variable #%time is equal to #12. (5:301) copy the value of variable #%time into variable #%telltime. (5:204) emitloud message { } to everyone on the map. (5:204) emit message {Day: %day / Time: %telltime noon } to whoever set off the trigger. (5:204) emit message {...the sun is overhead...} to whoever set off the trigger. (5:12) play sound #17 to everyone on the map. (0:50) When countdown timer #90 goes off, (1:201) and variable #%time is greater than #12. (1:202) and variable #%time is less than #18. (5:301) copy the value of variable #%time into variable #%telltime. (5:304) take variable #%telltime and subtract #12 from it. (5:204) emitloud message { } to everyone on the map. (5:204) emit message {Day: %day / Time: %telltime pm } to whoever set off the trigger. (5:300) set variable #%cycles to the value #18. (5:305) take variable #%cycles and subtract variable #%time from it. (5:204) emit message {%cycles Hours until sunset.} to whoever set off the trigger. (5:12) play sound #71 to everyone on the map. (0:50) When countdown timer #90 goes off, (1:201) and variable #%time is greater than #17. (1:202) and variable #%time is less than #24. (5:301) copy the value of variable #%time into variable #%telltime. (5:304) take variable #%telltime and subtract #12 from it. (5:204) emitloud message { } to everyone on the map. (5:204) emit message {Day: %day / Time: %telltime : pm } to whoever set off the trigger. (5:300) set variable #%cycles to the value #24. (5:305) take variable #%cycles and subtract variable #%time from it. (5:204) emit message {%cycles Hours until Midnight.} to whoever set off the trigger. (0:50) When countdown timer #90 goes off, (1:201) and variable #%time is greater than #24. (5:301) copy the value of variable #%time into variable #%telltime. (5:304) take variable #%telltime and subtract #24 from it. (5:204) emitloud message { } to everyone on the map. (5:204) emit message {Day: %day / Time: %telltime am } to whoever set off the trigger. (5:300) set variable #%cycles to the value #30. (5:305) take variable #%cycles and subtract variable #%time from it. (5:204) emit message {%cycles Hours til Dawn.} to whoever set off the trigger. * Hour Timer (0:50) When countdown timer #90 goes off, (5:300) set variable #%min to the value #0. (5:50) set countdown timer #90 to go off in #360 seconds. *time stat commands (allows furre to check game time) (0:32) When a furre says something with {+} in it, (1:202) and variable #%time is less than #12. (5:301) copy the value of variable #%time into variable #%telltime. (5:200) emitloud message { } to everyone on the map. (5:200) emit message {Day: %day / Time: %telltime : %min } to whoever set off the trigger. (5:200) emit message {...it is morning...} to whoever set off the trigger. (0:32) When a furre says something with {+} in it, (1:200) and variable #%time is equal to #12. (5:301) copy the value of variable #%time into variable #%telltime. (5:200) emitloud message { } to everyone on the map. (5:200) emit message {Day: %day / Time: %telltime : %min } to whoever set off the trigger. (5:200) emit message {...the sun is overhead...} to whoever set off the trigger. (0:32) When a furre says something with {+} in it, (1:201) and variable #%time is greater than #12. (1:202) and variable #%time is less than #18. (5:301) copy the value of variable #%time into variable #%telltime. (5:304) take variable #%telltime and subtract #12 from it. (5:200) emitloud message { } to everyone on the map. (5:200) emit message {Day: %day / Time: %telltime : %min } to whoever set off the trigger. (5:300) set variable #%cycles to the value #18. (5:305) take variable #%cycles and subtract variable #%time from it. (5:200) emit message {%cycles Hours until sunset.} to whoever set off the trigger. (0:32) When a furre says something with {+} in it, (1:201) and variable #%time is greater than #17. (1:202) and variable #%time is less than #24. (5:301) copy the value of variable #%time into variable #%telltime. (5:304) take variable #%telltime and subtract #12 from it. (5:200) emitloud message { } to everyone on the map. (5:200) emit message {Day: %day / Time: %telltime : %min } to whoever set off the trigger. (5:300) set variable #%cycles to the value #24. (5:305) take variable #%cycles and subtract variable #%time from it. (5:200) emit message {%cycles Hours until Midnight.} to whoever set off the trigger. (0:32) When a furre says something with {+} in it, (1:200) and variable #%time is equal to #24. (5:301) copy the value of variable #%time into variable #%telltime. (5:304) take variable #%telltime and subtract #12 from it. (5:200) emitloud message { } to everyone on the map. (5:200) emit message {Day: %day / Time: %telltime : %min } to whoever set off the trigger. (5:300) set variable #%cycles to the value #30. (5:305) take variable #%cycles and subtract variable #%time from it. (5:200) emit message {%cycles Hours til Dawn.} to whoever set off the trigger. (0:32) When a furre says something with {+} in it, (1:201) and variable #%time is greater than #24. (5:301) copy the value of variable #%time into variable #%telltime. (5:304) take variable #%telltime and subtract #24 from it. (5:200) emitloud message { } to everyone on the map. (5:200) emit message {Day: %day / Time: %telltime : %min } to whoever set off the trigger. (5:300) set variable #%cycles to the value #30. (5:305) take variable #%cycles and subtract variable #%time from it. (5:200) emit message {%cycles Hours til Dawn.} to whoever set off the trigger. |