battleRes.lastSmallHeroTagFrame = intp.GetFrame("lastSmallHeroTagFrame");
battleRes.heroesBgColor = SDL_MapRGB(screen.Screen()->format, 0x18, 0x28, 0x31);
- SDL_Surface *gauges(IMG_Load("test-data/gauges.png"));
- Gauge healthGauge(gauges, 0, 16, 0, 0, 16, 6, 1, 6);
- battleRes.healthGauge = &healthGauge;
- Gauge manaGauge(gauges, 0, 32, 0, 0, 16, 6, 1, 6);
- battleRes.manaGauge = &manaGauge;
- Gauge ikariGauge(gauges, 0, 48, 0, 0, 16, 6, 1, 6);
- battleRes.ikariGauge = &ikariGauge;
-
- SDL_Surface *selectFrameImg(IMG_Load("test-data/select-frame.png"));
- Frame selectFrame(selectFrameImg, 16, 16);
- battleRes.selectFrame = &selectFrame;
-
- SDL_Surface *normalFontImg(IMG_Load("test-data/normal-font.png"));
- Sprite normalFontSprite(normalFontImg, 16, 16);
- Font normalFont(&normalFontSprite, 0, -2);
- battleRes.normalFont = &normalFont;
-
- SDL_Surface *disabledFontImg(IMG_Load("test-data/disabled-font.png"));
- Sprite disabledFontSprite(disabledFontImg, 16, 16);
- Font disabledFont(&disabledFontSprite, 0, -2);
- battleRes.disabledFont = &disabledFont;
-
- SDL_Surface *handCursorImg(IMG_Load("test-data/cursor-hand.png"));
- Sprite handCursorSprite(handCursorImg, 32, 32);
- battleRes.menuCursor = &handCursorSprite;
-
- SDL_Surface *targetingIconsImg(IMG_Load("test-data/targeting-icons.png"));
- Sprite weaponTargetCursor(targetingIconsImg, 32, 32);
- Sprite magicTargetCursor(targetingIconsImg, 32, 32, 0, 32);
- Sprite itemTargetCursor(targetingIconsImg, 32, 32, 0, 64);
- battleRes.weaponTargetCursor = &weaponTargetCursor;
- battleRes.magicTargetCursor = &magicTargetCursor;
- battleRes.itemTargetCursor = &itemTargetCursor;
-
- Spell resetSpell;
- resetSpell.SetName("Reset");
- maxim.AddSpell(&resetSpell);
- Spell strongSpell;
- strongSpell.SetName("Strong");
- strongSpell.SetCost(3);
- strongSpell.SetUsableInBattle();
- strongSpell.GetTargetingMode().TargetMultipleAllies();
- maxim.AddSpell(&strongSpell);
- selan.AddSpell(&strongSpell);
- Spell strongerSpell;
- strongerSpell.SetName("Stronger");
- strongerSpell.SetCost(8);
- strongerSpell.SetUsableInBattle();
- strongerSpell.GetTargetingMode().TargetMultipleAllies();
- maxim.AddSpell(&strongerSpell);
- selan.AddSpell(&strongerSpell);
- Spell championSpell;
- championSpell.SetName("Champion");
- championSpell.SetCost(16);
- championSpell.SetUsableInBattle();
- championSpell.GetTargetingMode().TargetMultipleAllies();
- maxim.AddSpell(&championSpell);
- selan.AddSpell(&championSpell);
- Spell rallySpell;
- rallySpell.SetName("Rally");
- rallySpell.SetCost(10);
- rallySpell.SetUsableInBattle();
- rallySpell.GetTargetingMode().TargetMultipleAllies();
- 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();
- valorSpell.GetTargetingMode().TargetMultipleAllies();
- maxim.AddSpell(&valorSpell);
- selan.AddSpell(&valorSpell);
-
- battleRes.spellMenuHeadline = "Please choose a spell.";
- battleRes.spellMenuPrototype = Menu<const Spell *>(&normalFont, &disabledFont, &handCursorSprite, 9, 6, 8, 0, 2, 32, 2, ':');
-
- SDL_Surface *itemIcons(IMG_Load("test-data/item-icons.png"));
- Sprite potionIcon(itemIcons, 16, 16);
- Sprite ballIcon(itemIcons, 16, 16, 0, 16);
- Sprite crankIcon(itemIcons, 16, 16, 0, 32);
- Sprite spearIcon(itemIcons, 16, 16, 0, 48);
- Sprite swordIcon(itemIcons, 16, 16, 0, 64);
- Sprite axIcon(itemIcons, 16, 16, 0, 80);
- Sprite rodIcon(itemIcons, 16, 16, 0, 96);
- Sprite armorIcon(itemIcons, 16, 16, 0, 112);
- Sprite shieldIcon(itemIcons, 16, 16, 0, 128);
- Sprite helmetIcon(itemIcons, 16, 16, 0, 144);
- Sprite ringIcon(itemIcons, 16, 16, 0, 160);
- Sprite jewelIcon(itemIcons, 16, 16, 0, 176);
-
- battleRes.weaponMenuIcon = &swordIcon;
- battleRes.armorMenuIcon = &armorIcon;
- battleRes.shieldMenuIcon = &shieldIcon;
- battleRes.helmetMenuIcon = &helmetIcon;
- battleRes.ringMenuIcon = &ringIcon;
- battleRes.jewelMenuIcon = &jewelIcon;
+ battleRes.healthGauge = intp.GetGauge("healthGauge");
+ battleRes.manaGauge = intp.GetGauge("manaGauge");
+ battleRes.ikariGauge = intp.GetGauge("ikariGauge");
+
+ battleRes.selectFrame = intp.GetFrame("selectFrame");
+ battleRes.normalFont = intp.GetFont("normalFont");
+ battleRes.disabledFont = intp.GetFont("disabledFont");
+ battleRes.menuCursor = intp.GetSprite("handCursor");
+
+ battleRes.weaponTargetCursor = intp.GetSprite("weaponTargetCursor");
+ battleRes.magicTargetCursor = intp.GetSprite("magicTargetCursor");
+ battleRes.itemTargetCursor = intp.GetSprite("itemTargetCursor");
+
+ maxim.AddSpell(intp.GetSpell("resetSpell"));
+ Spell *strongSpell(intp.GetSpell("strongSpell"));
+ maxim.AddSpell(strongSpell);
+ selan.AddSpell(strongSpell);
+ Spell *strongerSpell(intp.GetSpell("strongerSpell"));
+ maxim.AddSpell(strongerSpell);
+ selan.AddSpell(strongerSpell);
+ Spell *championSpell(intp.GetSpell("championSpell"));
+ maxim.AddSpell(championSpell);
+ selan.AddSpell(championSpell);
+ Spell *rallySpell(intp.GetSpell("rallySpell"));
+ maxim.AddSpell(rallySpell);
+ selan.AddSpell(rallySpell);
+ selan.AddSpell(intp.GetSpell("escapeSpell"));
+ Spell *valorSpell(intp.GetSpell("valorSpell"));
+ maxim.AddSpell(valorSpell);
+ selan.AddSpell(valorSpell);
+
+ battleRes.spellMenuHeadline = intp.GetString("spellMenuHeadline");
+ battleRes.spellMenuPrototype = Menu<const Spell *>(intp.GetFont("normalFont"), intp.GetFont("disabledFont"), intp.GetSprite("handCursor"), 9, 6, 8, 0, 2, 32, 2, ':');
+
+ battleRes.weaponMenuIcon = intp.GetSprite("swordIcon");
+ battleRes.armorMenuIcon = intp.GetSprite("armorIcon");
+ battleRes.shieldMenuIcon = intp.GetSprite("shieldIcon");
+ battleRes.helmetMenuIcon = intp.GetSprite("helmetIcon");
+ battleRes.ringMenuIcon = intp.GetSprite("ringIcon");
+ battleRes.jewelMenuIcon = intp.GetSprite("jewelIcon");
Inventory inventory;
- Item antidote;
- antidote.SetName("Antidote");
- antidote.SetMenuIcon(&potionIcon);
- antidote.SetUsableInBattle();
- antidote.GetTargetingMode().TargetSingleAlly();
- inventory.Add(&antidote, 9);
- Item magicJar;
- magicJar.SetName("Magic jar");
- magicJar.SetMenuIcon(&potionIcon);
- magicJar.SetUsableInBattle();
- magicJar.GetTargetingMode().TargetSingleAlly();
- inventory.Add(&magicJar, 4);
- Item hiPotion;
- hiPotion.SetName("Hi-Potion");
- hiPotion.SetMenuIcon(&potionIcon);
- hiPotion.SetUsableInBattle();
- hiPotion.GetTargetingMode().TargetSingleAlly();
- inventory.Add(&hiPotion, 4);
- Item powerPotion;
- powerPotion.SetName("Power potion");
- powerPotion.SetMenuIcon(&potionIcon);
- inventory.Add(&powerPotion, 4);
- Item escape;
- escape.SetName("Escape");
- inventory.Add(&escape, 2);
- Item sleepBall;
- sleepBall.SetName("Sleep ball");
- sleepBall.SetMenuIcon(&ballIcon);
- sleepBall.SetUsableInBattle();
- sleepBall.GetTargetingMode().TargetSingleEnemy();
- inventory.Add(&sleepBall, 1);
- Item multiBall;
- multiBall.SetName("Multi-ball!");
- multiBall.SetMenuIcon(&ballIcon);
- multiBall.SetUsableInBattle();
- multiBall.GetTargetingMode().TargetMultipleEnemies();
- inventory.Add(&multiBall, 1);
- Item figgoru;
- figgoru.SetName("Figgoru");
- figgoru.SetMenuIcon(&crankIcon);
- figgoru.GetTargetingMode().TargetAllEnemies();
- inventory.Add(&figgoru, 1);
+ inventory.Add(intp.GetItem("antidoteItem"), 9);
+ inventory.Add(intp.GetItem("magicJarItem"), 4);
+ inventory.Add(intp.GetItem("hiPotionItem"), 4);
+ inventory.Add(intp.GetItem("powerPotionItem"), 4);
+ inventory.Add(intp.GetItem("escapeItem"), 2);
+ inventory.Add(intp.GetItem("sleepBallItem"), 1);
battleRes.inventory = &inventory;
- battleRes.itemMenuHeadline = "Please choose an item.";
- battleRes.itemMenuPrototype = Menu<const common::Item *>(&normalFont, &disabledFont, &handCursorSprite, 15, 6, 8, 16, 1, 32, 2, ':');
+ battleRes.itemMenuHeadline = intp.GetString("itemMenuHeadline");
+ battleRes.itemMenuPrototype = Menu<const common::Item *>(intp.GetFont("normalFont"), intp.GetFont("disabledFont"), intp.GetSprite("handCursor"), 15, 6, 8, 16, 1, 32, 2, ':');
SDL_Surface *swordAttackImg(IMG_Load("test-data/attack-sword.png"));
Sprite swordAttackSprite(swordAttackImg, 96, 96);
SimpleAnimation swordAttackAnimation(&swordAttackSprite, 2 * framerate, 4);
- Item zircoSword;
- zircoSword.SetName("Zirco sword");
- zircoSword.SetMenuIcon(&swordIcon);
- zircoSword.GetTargetingMode().TargetSingleEnemy();
- Ikari firestorm;
- firestorm.SetName("Firestorm");
- firestorm.SetCost(224);
- firestorm.GetTargetingMode().TargetAllEnemies();
- firestorm.SetPhysical();
- zircoSword.SetIkari(&firestorm);
- zircoSword.SetAttackAnimation(&swordAttackAnimation);
- maxim.SetWeapon(&zircoSword);
- Item zirconArmor;
- zirconArmor.SetName("Zircon armor");
- zirconArmor.SetMenuIcon(&armorIcon);
- Ikari magicCure;
- magicCure.SetName("Magic cure");
- magicCure.SetCost(128);
- magicCure.GetTargetingMode().TargetSingleAlly();
- magicCure.SetMagical();
- zirconArmor.SetIkari(&magicCure);
- maxim.SetArmor(&zirconArmor);
+ maxim.SetWeapon(intp.GetItem("zircoSwordItem"));
+ maxim.SetArmor(intp.GetItem("zirconArmorItem"));
Item holyShield;
holyShield.SetName("Holy shield");
- holyShield.SetMenuIcon(&shieldIcon);
+ holyShield.SetMenuIcon(intp.GetSprite("shieldIcon"));
Ikari lightGuard;
lightGuard.SetName("Light guard");
lightGuard.SetCost(128);
maxim.SetShield(&holyShield);
Item legendHelm;
legendHelm.SetName("Legend helm");
- legendHelm.SetMenuIcon(&helmetIcon);
+ legendHelm.SetMenuIcon(intp.GetSprite("helmetIcon"));
Ikari boomerang;
boomerang.SetName("Boomerang");
boomerang.SetCost(164);
maxim.SetHelmet(&legendHelm);
Item sProRing;
sProRing.SetName("S-pro ring");
- sProRing.SetMenuIcon(&ringIcon);
+ sProRing.SetMenuIcon(intp.GetSprite("ringIcon"));
Ikari courage;
courage.SetName("Courage");
courage.SetCost(64);
maxim.SetRing(&sProRing);
Item evilJewel;
evilJewel.SetName("Evil jewel");
- evilJewel.SetMenuIcon(&jewelIcon);
+ evilJewel.SetMenuIcon(intp.GetSprite("jewelIcon"));
Ikari gloomy;
gloomy.SetName("Gloomy");
gloomy.SetCost(164);
Item zircoWhip;
zircoWhip.SetName("Zirco whip");
- zircoWhip.SetMenuIcon(&rodIcon);
+ zircoWhip.SetMenuIcon(intp.GetSprite("rodIcon"));
zircoWhip.GetTargetingMode().TargetSingleEnemy();
Ikari thundershriek;
thundershriek.SetName("Thundershriek");
// selan.SetWeapon(&zircoWhip);
Item zirconPlate;
zirconPlate.SetName("Zircon plate");
- zirconPlate.SetMenuIcon(&armorIcon);
+ zirconPlate.SetMenuIcon(intp.GetSprite("armorIcon"));
Ikari suddenCure;
suddenCure.SetName("Sudden cure");
suddenCure.SetCost(96);
selan.SetArmor(&zirconPlate);
Item zircoGloves;
zircoGloves.SetName("Zirco gloves");
- zircoGloves.SetMenuIcon(&shieldIcon);
+ zircoGloves.SetMenuIcon(intp.GetSprite("shieldIcon"));
Ikari forcefield;
forcefield.SetName("Forcefield");
forcefield.SetCost(64);
selan.SetShield(&zircoGloves);
Item holyCap;
holyCap.SetName("Holy cap");
- holyCap.SetMenuIcon(&helmetIcon);
+ holyCap.SetMenuIcon(intp.GetSprite("helmetIcon"));
Ikari vulnerable;
vulnerable.SetName("Vulnerable");
vulnerable.SetCost(196);
selan.SetHelmet(&holyCap);
Item ghostRing;
ghostRing.SetName("Ghost ring");
- ghostRing.SetMenuIcon(&ringIcon);
+ ghostRing.SetMenuIcon(intp.GetSprite("ringIcon"));
Ikari destroy;
destroy.SetName("Destroy");
destroy.SetCost(128);
selan.SetRing(&ghostRing);
Item eagleRock;
eagleRock.SetName("Eagle rock");
- eagleRock.SetMenuIcon(&jewelIcon);
+ eagleRock.SetMenuIcon(intp.GetSprite("jewelIcon"));
Ikari dive;
dive.SetName("Dive");
dive.SetCost(128);
Item zircoAx;
zircoAx.SetName("Zirco ax");
- zircoAx.SetMenuIcon(&axIcon);
+ zircoAx.SetMenuIcon(intp.GetSprite("axIcon"));
zircoAx.GetTargetingMode().TargetSingleEnemy();
Ikari torrent;
torrent.SetName("Torrent");
torrent.SetPhysical();
zircoAx.SetIkari(&torrent);
// guy.SetWeapon(&zircoAx);
- guy.SetArmor(&zirconArmor);
+ guy.SetArmor(intp.GetItem("zirconArmorItem"));
Item megaShield;
megaShield.SetName("Mega shield");
- megaShield.SetMenuIcon(&shieldIcon);
+ megaShield.SetMenuIcon(intp.GetSprite("shieldIcon"));
Ikari ironBarrier;
ironBarrier.SetName("Iron barrier");
ironBarrier.SetCost(255);
guy.SetShield(&megaShield);
Item zircoHelmet;
zircoHelmet.SetName("Zirco helmet");
- zircoHelmet.SetMenuIcon(&helmetIcon);
+ zircoHelmet.SetMenuIcon(intp.GetSprite("helmetIcon"));
Ikari slow;
slow.SetName("Slow");
slow.SetCost(196);
guy.SetHelmet(&zircoHelmet);
Item powerRing;
powerRing.SetName("Power ring");
- powerRing.SetMenuIcon(&ringIcon);
+ powerRing.SetMenuIcon(intp.GetSprite("ringIcon"));
Ikari trick;
trick.SetName("Trick");
trick.SetCost(32);
// NOTE: this is actually Artea equipment
Item lizardBlow;
lizardBlow.SetName("Lizard blow");
- lizardBlow.SetMenuIcon(&swordIcon);
+ lizardBlow.SetMenuIcon(intp.GetSprite("swordIcon"));
lizardBlow.GetTargetingMode().TargetSingleEnemy();
Ikari dragonRush;
dragonRush.SetName("Dragon rush");
// dekar.SetWeapon(&lizardBlow);
Item holyRobe;
holyRobe.SetName("Holy robe");
- holyRobe.SetMenuIcon(&armorIcon);
+ holyRobe.SetMenuIcon(intp.GetSprite("armorIcon"));
Ikari crisisCure;
crisisCure.SetName("Crisis cure");
crisisCure.SetCost(164);
dekar.SetHelmet(&holyCap);
Item rocketRing;
rocketRing.SetName("Rocket ring");
- rocketRing.SetMenuIcon(&ringIcon);
+ rocketRing.SetMenuIcon(intp.GetSprite("ringIcon"));
Ikari fake;
fake.SetName("Fake");
fake.SetCost(32);
dekar.SetRing(&rocketRing);
Item krakenRock;
krakenRock.SetName("Kraken rock");
- krakenRock.SetMenuIcon(&jewelIcon);
+ krakenRock.SetMenuIcon(intp.GetSprite("jewelIcon"));
Ikari tenLegger;
tenLegger.SetName("Ten-legger");
tenLegger.SetCost(164);
battleRes.ikariMenuHeadline = "Please choose equipment.";
battleRes.noEquipmentText = "No equip";
- battleRes.ikariMenuPrototype = Menu<const Item *>(&normalFont, &disabledFont, &handCursorSprite, 12, 6, normalFont.CharHeight() / 2, normalFont.CharWidth(), 1, normalFont.CharWidth() * 2, 0, ':', 12, normalFont.CharWidth());
+ battleRes.ikariMenuPrototype = Menu<const Item *>(intp.GetFont("normalFont"), intp.GetFont("disabledFont"), intp.GetSprite("handCursor"), 12, 6, intp.GetFont("normalFont")->CharHeight() / 2, intp.GetFont("normalFont")->CharWidth(), 1, intp.GetFont("normalFont")->CharWidth() * 2, 0, ':', 12, intp.GetFont("normalFont")->CharWidth());
battleRes.escapeText = "Escapes.";