DSPK V03.00 Furcadia * Setting up Variables. Can't show buttons here - no furres are in the map yet! (0:0) When everything is starting up, (5:399) clear all variables to zero. (0:9) When a furre arrives in the dream, * OK, constants are a waste of lines, but I'm lazy. * You ask me, its worth six lines to not have to remember the numbers. (5:300) set variable %CREDITS_OFFSET to the value 27. (5:300) set variable %DEX_OFFSET to the value 28. (5:300) set variable %STR_OFFSET to the value 39. (5:300) set variable %INT_OFFSET to the value 50. (5:300) set variable %STA_OFFSET to the value 61. (5:300) set variable %WIS_OFFSET to the value 72. * Removing Everything (0:31) When a furre says {remove}, (5:630) forget all PhoenixSpeak info about the triggering furre. (5:633) forget all PhoenixSpeak info about this dream. (5:399) clear all variables to zero. * Two blocks merged as an OR clause to save lines. (0:31) When a furre says {remove}, * OR (0:80) When a furre clicks DragonSpeak Button 6, (1:600) and the PhoenixSpeak info {credits} about the triggering furre is equal to 0, (5:181) hide the triggering furre's DragonSpeak Button 1. (5:181) hide the triggering furre's DragonSpeak Button 2. (5:181) hide the triggering furre's DragonSpeak Button 3. (5:181) hide the triggering furre's DragonSpeak Button 4. (5:181) hide the triggering furre's DragonSpeak Button 5. (5:181) hide the triggering furre's DragonSpeak Button 11. (5:181) hide the triggering furre's DragonSpeak Button 12. (5:181) hide the triggering furre's DragonSpeak Button 13. (5:181) hide the triggering furre's DragonSpeak Button 14. (5:181) hide the triggering furre's DragonSpeak Button 15. (5:181) hide the triggering furre's DragonSpeak Button 16. (5:181) hide the triggering furre's DragonSpeak Button 17. (5:181) hide the triggering furre's DragonSpeak Button 18. (5:181) hide the triggering furre's DragonSpeak Button 19. (5:181) hide the triggering furre's DragonSpeak Button 20. (5:181) hide the triggering furre's DragonSpeak Button 21. (5:181) hide the triggering furre's DragonSpeak Button 22. (5:181) hide the triggering furre's DragonSpeak Button 23. (5:181) hide the triggering furre's DragonSpeak Button 24. (5:181) hide the triggering furre's DragonSpeak Button 25. (5:181) hide the triggering furre's DragonSpeak Button 26. (5:181) hide the triggering furre's DragonSpeak Button 27. (5:181) hide the triggering furre's DragonSpeak Button 28. (5:181) hide the triggering furre's DragonSpeak Button 29. (5:181) hide the triggering furre's DragonSpeak Button 30. (5:181) hide the triggering furre's DragonSpeak Button 31. (5:181) hide the triggering furre's DragonSpeak Button 32. (5:181) hide the triggering furre's DragonSpeak Button 33. (5:181) hide the triggering furre's DragonSpeak Button 34. (5:181) hide the triggering furre's DragonSpeak Button 35. (5:181) hide the triggering furre's DragonSpeak Button 36. (5:181) hide the triggering furre's DragonSpeak Button 37. (5:181) hide the triggering furre's DragonSpeak Button 38. (5:181) hide the triggering furre's DragonSpeak Button 39. (5:181) hide the triggering furre's DragonSpeak Button 40. (5:181) hide the triggering furre's DragonSpeak Button 41. (5:181) hide the triggering furre's DragonSpeak Button 42. (5:181) hide the triggering furre's DragonSpeak Button 43. (5:181) hide the triggering furre's DragonSpeak Button 44. (5:181) hide the triggering furre's DragonSpeak Button 45. (5:181) hide the triggering furre's DragonSpeak Button 46. (5:181) hide the triggering furre's DragonSpeak Button 47. (5:181) hide the triggering furre's DragonSpeak Button 48. (5:181) hide the triggering furre's DragonSpeak Button 49. (5:181) hide the triggering furre's DragonSpeak Button 50. (5:181) hide the triggering furre's DragonSpeak Button 51. (5:181) hide the triggering furre's DragonSpeak Button 52. (5:181) hide the triggering furre's DragonSpeak Button 53. (5:181) hide the triggering furre's DragonSpeak Button 54. (5:181) hide the triggering furre's DragonSpeak Button 55. (5:181) hide the triggering furre's DragonSpeak Button 56. (5:181) hide the triggering furre's DragonSpeak Button 57. (5:181) hide the triggering furre's DragonSpeak Button 58. (5:181) hide the triggering furre's DragonSpeak Button 59. (5:181) hide the triggering furre's DragonSpeak Button 60. (5:181) hide the triggering furre's DragonSpeak Button 61. (5:181) hide the triggering furre's DragonSpeak Button 62. (5:181) hide the triggering furre's DragonSpeak Button 63. (5:181) hide the triggering furre's DragonSpeak Button 64. (5:181) hide the triggering furre's DragonSpeak Button 65. (5:181) hide the triggering furre's DragonSpeak Button 66. (5:181) hide the triggering furre's DragonSpeak Button 67. (5:181) hide the triggering furre's DragonSpeak Button 68. (5:181) hide the triggering furre's DragonSpeak Button 69. (5:181) hide the triggering furre's DragonSpeak Button 70. (5:181) hide the triggering furre's DragonSpeak Button 71. (5:181) hide the triggering furre's DragonSpeak Button 72. (5:181) hide the triggering furre's DragonSpeak Button 73. (5:181) hide the triggering furre's DragonSpeak Button 74. (5:181) hide the triggering furre's DragonSpeak Button 75. (5:181) hide the triggering furre's DragonSpeak Button 76. (5:181) hide the triggering furre's DragonSpeak Button 77. (5:181) hide the triggering furre's DragonSpeak Button 78. (5:181) hide the triggering furre's DragonSpeak Button 79. (5:181) hide the triggering furre's DragonSpeak Button 80. (5:181) hide the triggering furre's DragonSpeak Button 81. (5:181) hide the triggering furre's DragonSpeak Button 82. * Arriving in the dream (0:9) When a furre arrives in the dream, (5:180) show the triggering furre's DragonSpeak Button 7. (5:180) show the triggering furre's DragonSpeak Button 9. * Existing user (0:9) When a furre arrives in the dream, (1:601) and the PhoenixSpeak info {account} about the triggering furre is not equal to 0, (5:200) emit message {A voice echos through the air, "Welcome back, young one! I see that your travel fares well. Please feel free to stay at our Inn"} to the triggering furre. (5:15) move the triggering furre to (14,42), or to someplace nearby if it's occupied. * No account (0:9) When a furre arrives in the dream, (1:600) and the PhoenixSpeak info {account} about the triggering furre is equal to 0, (5:15) move the triggering furre to (16,9), or to someplace nearby if it's occupied. (5:200) emit message {A voice echo's throguh the wind, "Welcome, [FURRE] , to the Kingdom of Ascaries! I am Lady Mirianda, your Guide! I see you are fairly new, so let's get you started." [Hit the Start button on the screen]} to the triggering furre. (5:180) show the triggering furre's DragonSpeak Button 1. (5:180) show the triggering furre's DragonSpeak Button 2. (5:180) show the triggering furre's DragonSpeak Button 3. (5:180) show the triggering furre's DragonSpeak Button 6. (5:180) show the triggering furre's DragonSpeak Button 8. * Creating Account (0:80) When a furre clicks DragonSpeak Button 8, (1:600) and the PhoenixSpeak info {account} about the triggering furre is equal to 0, (5:600) memorize that the PhoenixSpeak info {account} about the triggering furre will now be 1. (5:600) memorize that the PhoenixSpeak info {dexterity} about the triggering furre will now be 0. (5:600) memorize that the PhoenixSpeak info {strength} about the triggering furre will now be 0. (5:600) memorize that the PhoenixSpeak info {intelligence} about the triggering furre will now be 0. (5:600) memorize that the PhoenixSpeak info {stamina} about the triggering furre will now be 0. (5:600) memorize that the PhoenixSpeak info {wisdom} about the triggering furre will now be 0. (5:600) memorize that the PhoenixSpeak info {credits} about the triggering furre will now be 10. (5:600) memorize that the PhoenixSpeak info {maxcredits} about the triggering furre will now be 10. (5:200) emit message {Your account with this dream has been successfuly created with the stats and level given below.} to the triggering furre. (5:200) emit message {Please add your stats above by following the screen.} to the triggering furre. (5:181) hide the triggering furre's DragonSpeak Button 3. (5:181) hide the triggering furre's DragonSpeak Button 8. (5:180) show the triggering furre's DragonSpeak Button 4. (5:180) show the triggering furre's DragonSpeak Button 5. (5:180) show the triggering furre's DragonSpeak Button 11. (5:180) show the triggering furre's DragonSpeak Button 12. (5:180) show the triggering furre's DragonSpeak Button 13. (5:180) show the triggering furre's DragonSpeak Button 14. (5:180) show the triggering furre's DragonSpeak Button 15. (5:180) show the triggering furre's DragonSpeak Button 16. (5:180) show the triggering furre's DragonSpeak Button 17. (5:300) set variable %DEX_BUTTON to the value %DEX_OFFSET. (5:300) set variable %STR_BUTTON to the value %STR_OFFSET. (5:300) set variable %INT_BUTTON to the value %INT_OFFSET. (5:300) set variable %STA_BUTTON to the value %STA_OFFSET. (5:300) set variable %WIS_BUTTON to the value %WIS_OFFSET. (5:180) show the triggering furre's DragonSpeak Button %DEX_BUTTON. (5:180) show the triggering furre's DragonSpeak Button %STR_BUTTON. (5:180) show the triggering furre's DragonSpeak Button %INT_BUTTON. (5:180) show the triggering furre's DragonSpeak Button %STA_BUTTON. (5:180) show the triggering furre's DragonSpeak Button %WIS_BUTTON. * Finishing Character Design (0:80) When a furre clicks DragonSpeak Button 6, (1:601) and the PhoenixSpeak info {credits} about the triggering furre is not equal to 0, (5:200) emit message {You still have Unused credits.} to the triggering furre. (5:610) remember the PhoenixSpeak info {credits} about the triggering furre, and put it in variable %credit . (5:200) emit message {You have %credit Credits that need to be spent. Just click one of the 5 stat distribute buttons on the screen.} to the triggering furre. (0:80) When a furre clicks DragonSpeak Button 6, (1:600) and the PhoenixSpeak info {credits} about the triggering furre is equal to 0, (5:181) hide the triggering furre's DragonSpeak Button 6. (5:15) move the triggering furre to (14,42), or to someplace nearby if it's occupied. (0:80) When a furre clicks DragonSpeak Button 6, (1:600) and the PhoenixSpeak info {credits} about the triggering furre is equal to 0, * OR (0:80) When a furre clicks DragonSpeak Button 7, * OR (0:80) When a furre clicks DragonSpeak Button 8, (1:600) and the PhoenixSpeak info {account} about the triggering furre is equal to 0, (5:610) remember the PhoenixSpeak info {account} about the triggering furre, and put it in variable %level . (5:610) remember the PhoenixSpeak info {dexterity} about the triggering furre, and put it in variable %dext . (5:610) remember the PhoenixSpeak info {intelligence} about the triggering furre, and put it in variable %intel . (5:610) remember the PhoenixSpeak info {strength} about the triggering furre, and put it in variable %strength . (5:610) remember the PhoenixSpeak info {stamina} about the triggering furre, and put it in variable %stam . (5:610) remember the PhoenixSpeak info {wisdom} about the triggering furre, and put it in variable %wis . (5:200) emit message {Info for Character [FURRE]} to the triggering furre. (5:200) emit message {[!]Level: %level } to the triggering furre. (5:200) emit message {[!]Dexterity: %dext } to the triggering furre. (5:200) emit message {[!]Intelligence: %intel } to the triggering furre. (5:200) emit message {[!]Strength: %strength } to the triggering furre. (5:200) emit message {[!]Stamina: %stam } to the triggering furre. (5:200) emit message {[!]Wisdom: %wis } to the triggering furre. * Checking Other's stats * Checking if fur is not in front (0:80) When a furre clicks DragonSpeak Button 9, (5:350) set variable %checkone to the X,Y position the triggering furre (moved from/is standing at). (5:350) set variable %checktwo to the X,Y position the triggering furre (moved from/is standing at). (0:80) When a furre clicks DragonSpeak Button 9, (1:13) and the triggering furre is facing northeast (up and right), (5:352) move the position in variable %checkone northeast (up and right) 1 step(s). (0:80) When a furre clicks DragonSpeak Button 9, (1:14) and the triggering furre is facing southeast (down and right), (5:353) move the position in variable %checkone southeast (down and right) 1 step(s). (0:80) When a furre clicks DragonSpeak Button 9, (1:15) and the triggering furre is facing southwest (down and left), (5:354) move the position in variable %checkone southwest (down and left) 1 step(s). (0:80) When a furre clicks DragonSpeak Button 9, (1:16) and the triggering furre is facing northwest (up and left), (5:355) move the position in variable %checkone northwest (up and left) 1 step(s). (0:80) When a furre clicks DragonSpeak Button 9, * Pro tip: for .x .y variables, you can just use the variable in brackets, rather than the pair. (1:1101) and there's no furre at (%checkone), (5:200) emit message { [FURRE] , there is no one at ( %checkone.x , %checkone.y )} to the triggering furre. * This block could be merged with the above stat listing, but would save only * 5 lines, and would make for some horrible code. Not worth it. (0:80) When a furre clicks DragonSpeak Button 9, (1:1100) and there's a furre at (%checkone), (5:51) make any furre standing at (%checkone) become the new triggering furre. (5:201) emit message { [FURRE] 's STATS} to any furre present. (5:610) remember the PhoenixSpeak info {account} about the triggering furre, and put it in variable %templevel . (5:610) remember the PhoenixSpeak info {dexterity} about the triggering furre, and put it in variable %tempdext . (5:610) remember the PhoenixSpeak info {strength} about the triggering furre, and put it in variable %tempstrength . (5:610) remember the PhoenixSpeak info {intelligence} about the triggering furre, and put it in variable %tempintel . (5:610) remember the PhoenixSpeak info {stamina} about the triggering furre, and put it in variable %tempstam . (5:610) remember the PhoenixSpeak info {wisdom} about the triggering furre, and put it in variable %tempwis . (5:51) make any furre standing at (%checktwo) become the new triggering furre. (5:200) emit message {[!]Level: %templevel } to the triggering furre. (5:200) emit message {[!]Dexterity: %tempdext } to the triggering furre. (5:200) emit message {[!]Strength: %tempstrength } to the triggering furre. (5:200) emit message {[!]Intelligence: %tempintel } to the triggering furre. (5:200) emit message {[!]Stamina: %tempstam } to the triggering furre. (5:200) emit message {[!]Wisdom: %tempwis } to the triggering furre. *********** * Hit button * Note that %BUTTON could be calculated rather than taken from the offset. * Expression is (buttonClicked - lowestClickableButton + 1) * 11 + 28 * This would save about 20 lines but make it harder to modify. *********** (0:80) When a furre clicks DragonSpeak Button 11, (5:300) set variable %BUTTON to the value %DEX_OFFSET. (5:610) remember the PhoenixSpeak info {dexterity} about the triggering furre, and put it in variable %STAT. (5:300) set variable %CLICKED to the value 1. (0:80) When a furre clicks DragonSpeak Button 12, (5:300) set variable %BUTTON to the value %STR_OFFSET. (5:610) remember the PhoenixSpeak info {strength} about the triggering furre, and put it in variable %STAT. (5:300) set variable %CLICKED to the value 1. (0:80) When a furre clicks DragonSpeak Button 13, (5:300) set variable %BUTTON to the value %INT_OFFSET. (5:610) remember the PhoenixSpeak info {intelligence} about the triggering furre, and put it in variable %STAT. (5:300) set variable %CLICKED to the value 1. (0:80) When a furre clicks DragonSpeak Button 14, (5:300) set variable %BUTTON to the value %STA_OFFSET. (5:610) remember the PhoenixSpeak info {stamina} about the triggering furre, and put it in variable %STAT. (5:300) set variable %CLICKED to the value 1. (0:80) When a furre clicks DragonSpeak Button 15, (5:300) set variable %BUTTON to the value %WIS_OFFSET. (5:610) remember the PhoenixSpeak info {wisdom} about the triggering furre, and put it in variable %STAT. (5:300) set variable %CLICKED to the value 1. *********** * No more credits *********** (0:81) When a furre clicks any DragonSpeak Button, (1:200) and variable %CLICKED is equal to 1, (1:600) and the PhoenixSpeak info {credits} about the triggering furre is equal to 0, (5:200) emit message {You have 0 Credits, [FURRE]. Hit Done if you are finished.} to the triggering furre. (5:300) set variable %CLICKED to the value 0. *********** * Stat maxed out (Can't happen, so wasting 6 lines. Nevermind.) *********** (0:81) When a furre clicks any DragonSpeak Button, (1:200) and variable %CLICKED is equal to 1, (1:201) and variable %STAT is greater than 9, (5:200) emit message {You cannot raise that stat any farther. Try another stat.} to the triggering furre. (5:300) set variable %CLICKED to the value 0. *********** * Can raise stat *********** (0:81) When a furre clicks any DragonSpeak Button, (1:200) and variable %CLICKED is equal to 1, (1:602) and the PhoenixSpeak info {credits} about the triggering furre is greater than 0, (5:610) remember the PhoenixSpeak info {credits} about the triggering furre, and put it in variable %CREDITS. * +1 to stat (5:302) take variable %BUTTON and add %STAT to it. (5:181) hide the triggering furre's DragonSpeak Button %BUTTON. (5:302) take variable %BUTTON and add 1 to it. (5:180) show the triggering furre's DragonSpeak Button %BUTTON. (5:302) take variable %STAT and add 1 to it. * -1 from credits. Subtracting %CREDITS from %BUTTON too, as the numbers are backwards. (5:300) set variable %BUTTON to the value %CREDITS_OFFSET. (5:304) take variable %BUTTON and subtract %CREDITS from it. (5:181) hide the triggering furre's DragonSpeak Button %BUTTON. (5:302) take variable %BUTTON and add 1 to it. * Adding to subtract - numbers are backwards. (5:180) show the triggering furre's DragonSpeak Button %BUTTON. (5:304) take variable %CREDITS and subtract 1 from it. * Save the credits to PS (should we be changing maxcredits?) (5:600) memorize that the PhoenixSpeak info {credits} about the triggering furre will now be %CREDITS. (5:600) memorize that the PhoenixSpeak info {maxcredits} about the triggering furre will now be %CREDITS. *********** * Save stats *********** (0:80) When a furre clicks DragonSpeak Button 11, (1:200) and variable %CLICKED is equal to 1, (5:200) emit message {You've added 1 C to your Dexterity.} to the triggering furre. (5:600) memorize that the PhoenixSpeak info {dexterity} about the triggering furre will now be %STAT. (5:300) set variable %DEX_BUTTON to the value %BUTTON. (0:80) When a furre clicks DragonSpeak Button 12, (1:200) and variable %CLICKED is equal to 1, (5:200) emit message {You've added 1 C to your Strength.} to the triggering furre. (5:600) memorize that the PhoenixSpeak info {strength} about the triggering furre will now be %STAT. (5:300) set variable %STR_BUTTON to the value %BUTTON. (0:80) When a furre clicks DragonSpeak Button 13, (1:200) and variable %CLICKED is equal to 1, (5:200) emit message {You've added 1 C to your Intelligence.} to the triggering furre. (5:600) memorize that the PhoenixSpeak info {intelligence} about the triggering furre will now be %STAT. (5:300) set variable %INT_BUTTON to the value %BUTTON. (0:80) When a furre clicks DragonSpeak Button 14, (1:200) and variable %CLICKED is equal to 1, (5:200) emit message {You've added 1 C to your Stamina.} to the triggering furre. (5:600) memorize that the PhoenixSpeak info {stamina} about the triggering furre will now be %STAT. (5:300) set variable %STA_BUTTON to the value %BUTTON. (0:80) When a furre clicks DragonSpeak Button 15, (1:200) and variable %CLICKED is equal to 1, (5:200) emit message {You've added 1 C to your Wisdom.} to the triggering furre. (5:600) memorize that the PhoenixSpeak info {wisdom} about the triggering furre will now be %STAT. (5:300) set variable %WIS_BUTTON to the value %BUTTON. *Endtriggers* 8888 *Endtriggers*