Advertisement
19891919

My encounter.lua file

Aug 5th, 2020
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.77 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 healcount == 7 then
  58.         BattleDialog("[color:ff0000]No more healing\n or else I'll take \ndrastic measures.")  
  59.     elseif healcount == 8 then
  60.         BattleDialog("[color:ff0000]HAHAHAHAHA...\nYou don't get it do you \nNO MORE HEALING!")
  61.     elseif healcount == 9  then
  62.         Audio.Stop()
  63.         Audio.LoadFile("ssmtt_jumpscare")
  64.         BattleDialog("[color:ff0000]I warned you\nDIE!!!")
  65.         sprite.Set("i_warned_you")
  66.         Player.hurt(Player.hp)
  67.     else
  68.         Player.Heal(15)
  69.         BattleDialog("You ate a TESTDOG. You gaind 15HP.")
  70.     end
  71. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement