X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fmain.cpp;h=3c871cd862fc169fba7221ccc3515d80373ad7eb;hb=d872d756e64b8f1f57cba64ae19f479f8eab3927;hp=503c426512ee5aa565378177e2ac4a6a305e46ba;hpb=b7a90738b9ae701cfc86bf74a11ba59d7fcb17ba;p=l2e.git diff --git a/src/main.cpp b/src/main.cpp index 503c426..3c871cd 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -14,6 +14,7 @@ #include "battle/Resources.h" #include "common/Inventory.h" #include "common/Item.h" +#include "common/Spell.h" #include "geometry/Point.h" #include "graphics/Font.h" #include "graphics/Frame.h" @@ -37,6 +38,7 @@ using battle::Monster; using battle::PartyLayout; using common::Inventory; using common::Item; +using common::Spell; using geometry::Point; using graphics::Font; using graphics::Frame; @@ -173,8 +175,8 @@ int main(int argc, char **argv) { normalFont.MapRange('a', 'm', 0, 3); normalFont.MapRange('n', 'z', 0, 4); normalFont.MapChar(':', 10, 0); - normalFont.MapChar('!', 10, 0); - normalFont.MapChar('?', 10, 0); + normalFont.MapChar('!', 11, 0); + normalFont.MapChar('?', 12, 0); // TODO: add '.' and '-' characters battleRes.normalFont = &normalFont; @@ -186,8 +188,8 @@ int main(int argc, char **argv) { disabledFont.MapRange('a', 'm', 0, 3); disabledFont.MapRange('n', 'z', 0, 4); disabledFont.MapChar(':', 10, 0); - disabledFont.MapChar('!', 10, 0); - disabledFont.MapChar('?', 10, 0); + disabledFont.MapChar('!', 11, 0); + disabledFont.MapChar('?', 12, 0); // TODO: add '.' and '-' characters battleRes.disabledFont = &disabledFont; @@ -204,15 +206,46 @@ int main(int argc, char **argv) { // TODO: add image for item targeting cursor battleRes.itemTargetCursor = &itemTargetCursor; + Spell resetSpell; + resetSpell.SetName("Reset"); + maxim.AddSpell(&resetSpell); + Spell strongSpell; + strongSpell.SetName("Strong"); + strongSpell.SetCost(3); + strongSpell.SetUsableInBattle(); + maxim.AddSpell(&strongSpell); + selan.AddSpell(&strongSpell); + Spell strongerSpell; + strongerSpell.SetName("Stronger"); + strongerSpell.SetCost(8); + strongerSpell.SetUsableInBattle(); + maxim.AddSpell(&strongerSpell); + selan.AddSpell(&strongerSpell); + Spell championSpell; + championSpell.SetName("Champion"); + championSpell.SetCost(16); + championSpell.SetUsableInBattle(); + maxim.AddSpell(&championSpell); + selan.AddSpell(&championSpell); + Spell rallySpell; + rallySpell.SetName("Rally"); + rallySpell.SetCost(10); + rallySpell.SetUsableInBattle(); + maxim.AddSpell(&rallySpell); + selan.AddSpell(&rallySpell); + Spell escapeSpell; + escapeSpell.SetName("Escape"); + escapeSpell.SetCost(8); + selan.AddSpell(&escapeSpell); + Spell valorSpell; + valorSpell.SetName("Valor"); + valorSpell.SetCost(30); + valorSpell.SetUsableInBattle(); + maxim.AddSpell(&valorSpell); + selan.AddSpell(&valorSpell); + battleRes.spellMenuHeadline = "Please choose a spell."; - battleRes.spellMenuPrototype = Menu(&normalFont, &disabledFont, &handCursorSprite, 12, 6, 8, 0, 2, 32); - battleRes.spellMenuPrototype.Add("Reset : 0", 0, false); - battleRes.spellMenuPrototype.Add("Strong : 3", 0); - battleRes.spellMenuPrototype.Add("Stronger : 8", 0); - battleRes.spellMenuPrototype.Add("Champion :16", 0); - battleRes.spellMenuPrototype.Add("Rally :10", 0); - battleRes.spellMenuPrototype.Add("Escape : 8", 0, false); - battleRes.spellMenuPrototype.Add("Valor :30", 0); + battleRes.spellMenuPrototype = Menu(&normalFont, &disabledFont, &handCursorSprite, 9, 6, 8, 0, 2, 32, 2, ':'); battleRes.spellMenuPrototype.Add("Poison : 2", 0); battleRes.spellMenuPrototype.Add("Warp : 8", 0, false); battleRes.spellMenuPrototype.Add("Release : 2", 0); @@ -245,19 +278,19 @@ int main(int argc, char **argv) { antidote.SetName("Antidote"); antidote.SetMenuIcon(&potionIcon); antidote.SetUsableInBattle(); - antidote.SetTargettingMode(Item::TARGETTING_MODE_ALLY | Item::TARGETTING_MODE_ONE); + antidote.GetTargetingMode().TargetSingleAlly(); inventory.Add(&antidote, 9); Item magicJar; magicJar.SetName("Magic jar"); magicJar.SetMenuIcon(&potionIcon); magicJar.SetUsableInBattle(); - magicJar.SetTargettingMode(Item::TARGETTING_MODE_ALLY | Item::TARGETTING_MODE_ONE); + antidote.GetTargetingMode().TargetSingleAlly(); inventory.Add(&magicJar, 4); Item hiPotion; hiPotion.SetName("Hi-Potion"); hiPotion.SetMenuIcon(&potionIcon); hiPotion.SetUsableInBattle(); - hiPotion.SetTargettingMode(Item::TARGETTING_MODE_ALLY | Item::TARGETTING_MODE_ONE); + antidote.GetTargetingMode().TargetSingleAlly(); inventory.Add(&hiPotion, 4); Item powerPotion; powerPotion.SetName("Power potion"); @@ -270,18 +303,18 @@ int main(int argc, char **argv) { sleepBall.SetName("Sleep ball"); sleepBall.SetMenuIcon(&ballIcon); sleepBall.SetUsableInBattle(); - sleepBall.SetTargettingMode(Item::TARGETTING_MODE_ENEMY | Item::TARGETTING_MODE_ONE); + antidote.GetTargetingMode().TargetSingleEnemy(); inventory.Add(&sleepBall, 1); Item multiBall; multiBall.SetName("Multi-ball!"); multiBall.SetMenuIcon(&ballIcon); multiBall.SetUsableInBattle(); - multiBall.SetTargettingMode(Item::TARGETTING_MODE_ENEMY | Item::TARGETTING_MODE_MULTIPLE); + antidote.GetTargetingMode().TargetMultipleEnemies(); inventory.Add(&multiBall, 1); Item figgoru; figgoru.SetName("Figgoru"); figgoru.SetMenuIcon(&crankIcon); - figgoru.SetTargettingMode(Item::TARGETTING_MODE_ENEMY | Item::TARGETTING_MODE_ALL); + antidote.GetTargetingMode().TargetAllEnemies(); inventory.Add(&figgoru, 1); battleRes.inventory = &inventory;