From 4e3c919944d011835702f5a63f65a7bb395d3eab Mon Sep 17 00:00:00 2001 From: Daniel Karbach Date: Wed, 8 Aug 2012 16:52:01 +0200 Subject: [PATCH] added realistic test data --- src/battle/Hero.h | 2 +- src/main.cpp | 66 +++++++++++++++++++++++------- test-data/dekar.png | Bin 0 -> 1440 bytes test-data/guy.png | Bin 0 -> 1157 bytes test-data/{hero.png => maxim.png} | Bin test-data/selan.png | Bin 0 -> 1252 bytes 6 files changed, 52 insertions(+), 16 deletions(-) create mode 100644 test-data/dekar.png create mode 100644 test-data/guy.png rename test-data/{hero.png => maxim.png} (100%) create mode 100644 test-data/selan.png diff --git a/src/battle/Hero.h b/src/battle/Hero.h index d7f6a49..b1982b0 100644 --- a/src/battle/Hero.h +++ b/src/battle/Hero.h @@ -31,7 +31,7 @@ public: Uint16 MaxMana() const { return maxMana; } Uint16 Mana() const { return mana; } - int RelativeMana(int max) const { return mana * max / maxMana; } + int RelativeMana(int max) const { return maxMana == 0 ? 0 : mana * max / maxMana; } Uint8 IP() const { return ip; } int RelativeIP(int max) const { return ip * max / 255; } diff --git a/src/main.cpp b/src/main.cpp index 850907f..c8668dc 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -72,17 +72,53 @@ int main(int argc, char **argv) { Monster monster; monster.SetSprite(&dummySprite); - SDL_Surface *heroImg(IMG_Load("test-data/hero.png")); - Sprite heroSprite(heroImg, 64, 64); - Hero hero; - hero.SetName("Name"); - hero.SetLevel(34); - hero.SetSprite(&heroSprite); - hero.SetMaxHealth(100); - hero.SetHealth(50); - hero.SetMaxMana(100); - hero.SetMana(100); - hero.SetIP(255); + SDL_Surface *maximImg(IMG_Load("test-data/maxim.png")); + Sprite maximSprite(maximImg, 64, 64); + Hero maxim; + maxim.SetName("Maxim"); + maxim.SetLevel(1); + maxim.SetSprite(&maximSprite); + maxim.SetMaxHealth(33); + maxim.SetHealth(33); + maxim.SetMaxMana(20); + maxim.SetMana(20); + maxim.SetIP(0); + + SDL_Surface *selanImg(IMG_Load("test-data/selan.png")); + Sprite selanSprite(selanImg, 64, 64); + Hero selan; + selan.SetName("Selan"); + selan.SetLevel(1); + selan.SetSprite(&selanSprite); + selan.SetMaxHealth(28); + selan.SetHealth(28); + selan.SetMaxMana(23); + selan.SetMana(23); + selan.SetIP(0); + + SDL_Surface *guyImg(IMG_Load("test-data/guy.png")); + Sprite guySprite(guyImg, 64, 64); + Hero guy; + guy.SetName("Guy"); + guy.SetLevel(1); + guy.SetSprite(&guySprite); + guy.SetMaxHealth(38); + guy.SetHealth(38); + guy.SetMaxMana(0); + guy.SetMana(0); + guy.SetIP(0); + + SDL_Surface *dekarImg(IMG_Load("test-data/dekar.png")); + Sprite dekarSprite(dekarImg, 64, 64); + Hero dekar; + dekar.SetName("Dekar"); + dekar.SetLevel(1); + dekar.SetSprite(&dekarSprite); + dekar.SetMaxHealth(38); + dekar.SetHealth(38); + dekar.SetMaxMana(0); + dekar.SetMana(0); + dekar.SetIP(0); SDL_Surface *attackIcons(IMG_Load("test-data/attack-type-icons.png")); Sprite attackIconsSprite(attackIcons, 32, 32); @@ -107,10 +143,10 @@ int main(int argc, char **argv) { battleState->AddMonster(monster); battleState->AddMonster(monster); battleState->AddMonster(monster); - battleState->AddHero(hero); - battleState->AddHero(hero); - battleState->AddHero(hero); - battleState->AddHero(hero); + battleState->AddHero(maxim); + battleState->AddHero(selan); + battleState->AddHero(guy); + battleState->AddHero(dekar); Application app(&screen, battleState); app.Buttons().MapKey(SDLK_w, Input::PAD_UP); app.Buttons().MapKey(SDLK_d, Input::PAD_RIGHT); diff --git a/test-data/dekar.png b/test-data/dekar.png new file mode 100644 index 0000000000000000000000000000000000000000..f032da187117647f2f65a1a70c1490a4154cdfaf GIT binary patch literal 1440 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 O0000