Advertisement
19891919

My encounter.lua file

Aug 4th, 2020
277
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.44 KB | None | 0 0
  1. -- A basic encounter script skeleton you can copy and modify for your own creations.
  2.  
  3. -- music = "shine_on_you_crazy_diamond" --Always OGG. Extension is added automatically. Remove the first two lines for custom music.
  4. encountertext = "Toriel is here to stop you!" --Modify as necessary. It will only be read out in the action select screen.
  5. nextwaves = {"bullettest_touhou"}
  6. wavetimer = 4.0
  7. arenasize = {155, 130}
  8.  
  9. enemies = {
  10. "Toriel"
  11. }
  12.  
  13. enemypositions = {
  14. {0, 0}
  15. }
  16.  
  17. -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it.
  18. possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"}
  19.  
  20. function EncounterStarting()
  21.     -- If you want to change the game state immediately, this is the place.
  22.     battle_progress = 0
  23.     enemies[1].setVar("currentdialogue", {"[color:fca600][effect:shake]For the sake of a\n better ending\n I must\n\n\nDEFEAT YOU"})
  24.     State("ENEMYDIALOGUE")
  25.     Player.lv = 10
  26.     Player.hp = 56
  27.     Audio.LoadFile("toriel_theme")
  28. end
  29.  
  30. function EnemyDialogueStarting()
  31.     if battle_progress == 0 then
  32.         enemies[1].setVar("currentdialogue", {"After all you've \ndone, you want \nme to\n stand aside? \nAll I've got to\n say is \n[effect:shake][color:fca600]HECK NO!."})
  33.     elseif battle_progress == 1 then
  34.         enemies[1].setVar("currentdialogue", {"[color:fca600][effect:shake]For the sake of \na better ending\n I must\n[color:ff0000]DEFEAT YOU"})
  35.     else
  36.         enemies[1].setVar("currentdialogue", {"[color:fca600]I can't give up..."})
  37.     battle_progress = battle_progress + 1
  38.     end
  39.     -- Good location for setting monster dialogue depending on how the battle is going.
  40. end
  41.  
  42. function EnemyDialogueEnding()
  43.     -- Good location to fill the 'nextwaves' table with the attacks you want to have simultaneously.
  44.     -- This example line below takes a random attack from 'possible_attacks'.
  45.     nextwaves = { possible_attacks[math.random(#possible_attacks)] }
  46. end
  47.  
  48. function DefenseEnding() --This built-in function fires after the defense round ends.
  49.     encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy.
  50. end
  51.  
  52. function HandleSpare()
  53.     BattleDialog("[color:ff0000]NO SPARING =)")
  54. end
  55.  
  56. function HandleItem(ItemID)
  57.     if ItemID (TestDog1) then
  58.         Player.heal(15)
  59.     elseif ItemID (TestDog2) then
  60.         Player.heal(20)
  61.     elseif ItemID (TestDog7) then
  62.         Player.heal(55)
  63.     else
  64.         Player.heal(10)
  65.     end
  66. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement