Event.hh

00001 /*
00002 ** TowBowlTactics, an adaptation of the tabletop game Blood Bowl.
00003 ** 
00004 ** Copyright (C) 2006, 2007 The TBT Team.
00005 ** 
00006 ** This program is free software; you can redistribute it and/or
00007 ** modify it under the terms of the GNU General Public License
00008 ** as published by the Free Software Foundation; either version 2
00009 ** of the License, or (at your option) any later version.
00010 ** 
00011 ** The complete GNU General Public Licence Notice can be found as the
00012 ** `NOTICE' file in the root directory.
00013 ** 
00014 ** The TBT Team consists of people listed in the `AUTHORS' file.
00015 */
00016 
00017 #ifndef EVENT_HH_
00018 # define EVENT_HH_
00019 
00020 # include "EventProcess.hh"
00021 # include "Dice.hh"
00022 
00027 enum eCustomEvent {
00028   eInitGame,
00029 };
00030 
00038 class Event
00039 {
00040 public:
00041   Event() {}
00042   virtual ~Event() {}
00043 
00044   virtual void evIllegal(int team_id, int was_token);
00045   virtual void evInitGame() {}
00046   virtual void evNewTurn(int team_id, int cur_half, int cur_turn);
00047   virtual void evEndGame() {}
00048   virtual void evResult(int team_id, int player_id, enum eRoll action_type, int result,
00049                         int modifier, int required, bool reroll, enum eSkill skill);
00050   virtual void evBlock(int team_id, int player_id, int opponent_player_id);
00051   virtual void evBlockResult(int team_id, int player_id, int opponent_player_id,
00052                              int nb_dice, enum eBlockDiceFace result[3],
00053                              int strongest_team_id, bool reroll);
00054   virtual void evReroll(int team_id, bool reroll);
00055   virtual void evSkill(int team_id, int player_id, enum eSkill skill, int choice);
00056   virtual void evHalf(int half);
00057   virtual void evDrawKicker(int team_id, bool is_a_question);
00058   virtual void evPlaceTeam(int team_id);
00059   virtual void evKickOff(int team_id);
00060   virtual void evGiveBall(int team_id, int player_id);
00061   virtual void evMoveTurnMarker() {}
00062   virtual void evTurnOver(enum eTurnOverMotive motive);
00063   virtual void evTouchdooown(int team_id, int player_id);
00064   virtual void evChat(const std::string& msg);
00065   virtual void evBallPos(const Point& pos);
00066   virtual void evPlayerCreate(int team_id, int player_id);
00067   virtual void evPlayerPos(int team_id, int player_id, const Point& pos);
00068   virtual void evPlayerMove(int team_id, int player_id, const Point& pos);
00069   virtual void evPlayerKnocked(int team_id, int player_id);
00070   virtual void evPlayerStatus(int team_id, int player_id, enum eStatus status);
00071   virtual void evPlayerKO(int team_id, int player_id, int dice);
00072   virtual void evFollow();
00073   virtual void evDeclare(int team_id, int player_id, enum eDeclaredAction action);
00074   virtual void evBlockPush(const Position& pos, int nb_choice, const Position choices[]);
00075 };
00076 
00077 inline void Event::evIllegal(int, int) {}
00078 inline void Event::evNewTurn(int, int, int) {}
00079 inline void Event::evResult(int, int, enum eRoll, int, int, int, bool, enum eSkill) {}
00080 inline void Event::evBlock(int, int, int) {}
00081 inline void Event::evBlockResult(int, int, int, int, enum eBlockDiceFace[3], int, bool) {}
00082 inline void Event::evReroll(int, bool) {}
00083 inline void Event::evSkill(int, int, enum eSkill, int) {}
00084 inline void Event::evHalf(int) {}
00085 inline void Event::evDrawKicker(int, bool) {}
00086 inline void Event::evPlaceTeam(int) {}
00087 inline void Event::evKickOff(int) {}
00088 inline void Event::evGiveBall(int, int) {}
00089 inline void Event::evTurnOver(enum eTurnOverMotive) {}
00090 inline void Event::evTouchdooown(int, int) {}
00091 inline void Event::evChat(const std::string&) {}
00092 inline void Event::evBallPos(const Point&) {}
00093 inline void Event::evPlayerCreate(int, int) {}
00094 inline void Event::evPlayerPos(int, int, const Point&) {}
00095 inline void Event::evPlayerMove(int, int, const Point&) {}
00096 inline void Event::evPlayerKnocked(int, int) {}
00097 inline void Event::evPlayerStatus(int, int, enum eStatus) {}
00098 inline void Event::evPlayerKO(int, int, int) {}
00099 inline void Event::evFollow() {}
00100 inline void Event::evDeclare(int, int, enum eDeclaredAction) {}
00101 inline void Event::evBlockPush(const Position&, int, const Position[]) {}
00102 
00103 #endif /* !EVENT_HH_ */

Generated on Sat Jun 23 16:07:23 2007 for Stechec/TBT by  doxygen 1.4.7