|
Furcadia Links: Furcadia Site Furcadia Forums Downloads: Graphite's PatchMerger Furcadia Historical Society ![]() |
DragonSpeak
Systems
"Safe Tiles/Life Tiles" Created for the
Original SpiritQuest, this is the
system I used for HP and LIFE before I really got a good grasp of the
Database Tracking System. Using changing tiles to track life does work
but inherently aggrivates some known Furcadia bugs that might have to
be masked. I changed this actual script several times, this is the last
one I used in the dreams SpaceQuest and StarFighters.
New Dragonspeak Script =========== HP and LIFE using Tiles ============== Created by Nommad Spiritwind (0:0) When everything is starting up, *safe areas / safe tiles no damage and restores hp to max (5:300) set variable %safetile to the value 157. *maxhp is 100 (5:300) set variable %maxtile to the value 110. (5:300) set variable %overmax to the value 111. *basehp starting hp (5:300) set variable %energytile to the value 35. *0 hp 10 tile "buffer" for death (5:300) set variable %deathtile to the value 10. *changing variables life tile (5:300) set variable %lifetile to the value 35. ===================================Life Tiles ======= *Place before any Attack / Action DS (0:30) When a furre says anything, (1:117) and they (didn't move from/aren't standing at) floor type #%safetile, (1:102) and they didn't move into floor type #161, (5:350) set variable #%life to the X,Y position the triggering furre (moved from/is standing at). (5:380) set variable #%lifetile to the floor type at (#%life.x, #%life.y). *Life / Movement (0:1) Whenever somebody moves, (5:313) set variable #%drain to the total of rolling #1 dice with #5 sides minus #1. (0:1) Whenever somebody moves, (5:312) set variable #%heal to the total of rolling #1 dice with #5 sides plus #1. (0:1) Whenever somebody moves, (1:5) and they successfully moved, (1:17) and they (moved from/are standing at) floor type #%safetile, (1:102) and they didn't move into floor type #%safetile, (1:102) and they didn't move into floor type #161, (3:6) where the triggering furre moved into, (5:1) set the floor to type #%energytile. *energytile = basic hp (0:1) Whenever somebody moves, (1:5) and they successfully moved, (1:102) and they didn't move into floor type #%safetile, (1:117) and they (didn't move from/aren't standing at) floor type #%safetile, (1:102) and they didn't move into floor type #161, (5:350) set variable #%life to the X,Y position the triggering furre (moved from/is standing at). (5:380) set variable #%lifetile to the floor type at (#%life.x, #%life.y). (0:1) Whenever somebody moves, (1:5) and they successfully moved, (1:102) and they didn't move into floor type #%safetile, (1:117) and they (didn't move from/aren't standing at) floor type #%safetile, (1:102) and they didn't move into floor type #161, (1:17) and they (moved from/are standing at) floor type #%lifetile (3:7) where the triggering Furre is currently at, (5:1) set the floor to type #%lifetile (0:1) Whenever somebody moves, (1:5) and they successfully moved, (1:102) and they didn't move into floor type #%safetile, (1:117) and they (didn't move from/aren't standing at) floor type #%safetile, (1:102) and they didn't move into floor type #161, (1:17) and they (moved from/are standing at) floor type #%lifetile (1:204) and variable #%lifetile is greater than variable #%maxtile. (3:5) where the triggering Furre (moved from/is standing at), (5:1) set the floor to type #%maxtile. (3:7) where the triggering Furre is currently at, (5:1) set the floor to type #%maxtile. (0:16) When a furre uses any object, (1:102) and they didn't move into floor type #%safetile, (1:117) and they (didn't move from/aren't standing at) floor type #%safetile, (1:102) and they didn't move into floor type #161, (5:350) set variable #%life to the X,Y position the triggering furre (moved from/is standing at). (5:380) set variable #%lifetile to the floor type at (#%life.x, #%life.y). (0:16) When a Furre uses any object, (1:117) and they (didn't move from/aren't standing at) floor type #%safetile, (1:17) and they (moved from/are standing at) floor type #%lifetile (1:204) and variable #%lifetile is greater than variable #%maxtile. (3:7) where the triggering Furre is currently at, (5:1) set the floor to type #%maxtile. *life stats (0:31) When a furre says {?}, (1:17) and they (moved from/are standing at) floor type #%safetile, (5:301) copy the value of variable #%energytile into variable #%health. (5:305) take variable #%health and subtract variable #%deathtile from it. (5:200) emit message {Energy Level: %health } to whoever set off the trigger. (0:31) When a furre says {?}, (1:117) and they (didn't move from/aren't standing at) floor type #%safetile, (5:301) copy the value of variable #%lifetile into variable #%health. (5:305) take variable #%health and subtract variable #%deathtile from it. (5:200) emit message {Energy Level: %health } to whoever set off the trigger. ======================================== Death ======== (0:1) Whenever somebody moves, (1:202) and variable #%lifetile is less than #%deathtile. (3:5) where the triggering Furre (moved from/is standing at), *dream specific death FX (5:4) place object type #2404. (5:11) play sound #110 to every furre who can see the triggering furre. (5:8) play sound #101 to whoever set off the trigger. (5:1202) change the triggering furry back to their original species. *dream specific locations and specific messages according to theme (5:15) move the triggering furre to (#24,#15), or to someplace nearby if it's occupied. (5:200) emit message { } to whoever set off the trigger. (5:200) emit message {<b><i>Hull Breach!</b></i> } to whoever set off the trigger. (5:200) emit message {<i>Emergancy Teleport Activated!</i>} to whoever set off the trigger. (5:300) set variable #%lifetile to the value #18. (3:3) within the diamond (#24,#13) - (#24,#15), (5:5) change object type #153 to type #2413. (5:10) play sound #99 to every furre who can see (#24,#15). (0:16) When a furre uses any object, (1:202) and variable #%lifetile is less than #%deathtile. (3:5) where the triggering Furre (moved from/is standing at), *dream specific death FX (5:4) place object type #2404. (5:11) play sound #110 to every furre who can see the triggering furre. (5:8) play sound #101 to whoever set off the trigger. (5:1202) change the triggering furry back to their original species. (5:15) move the triggering furre to (#24,#15), or to someplace nearby if it's occupied. (5:200) emit message { } to whoever set off the trigger. (5:200) emit message {<b><i>Hull Breach!</b></i> } to whoever set off the trigger. (5:200) emit message {<i>Emergancy Teleport Activated!</i>} to whoever set off the trigger. (5:300) set variable #%lifetile to the value #18. (3:3) within the diamond (#24,#13) - (#24,#15), (5:5) change object type #153 to type #2413. (5:10) play sound #65 to every furre who can see (#24,#15). ============================================= |