#ifndef _ArenaJoinSituationConcreter_h_ #define _ArenaJoinSituationConcreter_h_ class SGameWorld; class SGameLocalPlayer; class cSituationConcreter { public: virtual bool isSatisfaction(SGameWorld const* /*gameWorld*/, SGameLocalPlayer const* /*localPlayer*/) = 0; }; class cSituationConcreterNone : public cSituationConcreter { public: virtual bool isSatisfaction(SGameWorld const* gameWorld, SGameLocalPlayer const* localPlayer); }; class cSituationConcreterDeath : public cSituationConcreter { public: virtual bool isSatisfaction(SGameWorld const* gameWorld, SGameLocalPlayer const* localPlayer); }; class cSituationConcreterTrade : public cSituationConcreter { public: virtual bool isSatisfaction(SGameWorld const* gameWorld, SGameLocalPlayer const* localPlayer); }; class cSituationConcreterSiegePlaying : public cSituationConcreter { public: virtual bool isSatisfaction(SGameWorld const* gameWorld, SGameLocalPlayer const* localPlayer); }; class cSituationConcreterInstancePlaying : public cSituationConcreter { public: virtual bool isSatisfaction(SGameWorld const* gameWorld, SGameLocalPlayer const* localPlayer); }; class cSituationConcreterPenalty : public cSituationConcreter { public: virtual bool isSatisfaction(SGameWorld const* gameWorld, SGameLocalPlayer const* localPlayer); }; class cSituationConcreterPartyPlaying : public cSituationConcreter { public: virtual bool isSatisfaction(SGameWorld const* gameWorld, SGameLocalPlayer const* localPlayer); }; class cSituationConcreterNormalPartyPlaying : public cSituationConcreter { public: virtual bool isSatisfaction(SGameWorld const* gameWorld, SGameLocalPlayer const* localPlayer); }; class cSituationConcreterArenaPlaying : public cSituationConcreter { public: virtual bool isSatisfaction(SGameWorld const* gameWorld, SGameLocalPlayer const* localPlayer); }; class cSituationConcreterArenaWaiting : public cSituationConcreter { public: virtual bool isSatisfaction(SGameWorld const* gameWorld, SGameLocalPlayer const* localPlayer); }; class cSituationConcreterArenaWaitingCount : public cSituationConcreter { public: virtual bool isSatisfaction(SGameWorld const* gameWorld, SGameLocalPlayer const* localPlayer); }; #endif