Files
wagic/projects/mtg/include/GuiCombat.h
wagic.the.homebrew@gmail.com 71d4818646 Erwan
- Fix issue #16 (testsuite segfaults if file does not exist)
- Fix issue #37 (Normal Combat Damage is not dealt to creatures when the AI attacks)
- TestSuite now has an "AI" mode (see test/manual/p2_attacks.txt)
2009-09-22 06:15:32 +00:00

45 lines
1.1 KiB
C++

#ifndef _GUICOMBAT_H_
#define _GUICOMBAT_H_
#include <vector>
#include "WEvent.h"
#include "CardGui.h"
#include "MTGCardInstance.h"
#include "DamagerDamaged.h"
class GuiCombat : public GuiLayer
{
protected:
GameObserver* go;
DamagerDamaged* active;
AttackerDamaged* activeAtk;
static JTexture* ok_tex;
Pos ok, enemy_avatar;
DamagerDamaged* current;
enum { BLK, ATK, OK, NONE } cursor_pos;
CombatStep step;
void validateDamage();
void addOne(DefenserDamaged* blocker, CombatStep);
void removeOne(DefenserDamaged* blocker, CombatStep);
void remaskBlkViews(AttackerDamaged* before, AttackerDamaged* after);
int resolve();
public:
vector<AttackerDamaged*> attackers;
void autoaffectDamage(AttackerDamaged* attacker, CombatStep);
GuiCombat(GameObserver* go);
~GuiCombat();
virtual void Update(float dt);
virtual void Render();
bool clickOK();
virtual bool CheckUserInput(u32 key);
virtual int receiveEventPlus(WEvent* e);
virtual int receiveEventMinus(WEvent* e);
typedef vector<AttackerDamaged*>::iterator inner_iterator;
};
#endif // _GUICOMBAT_H_