1 #pragma once 2 3 #include "view.h" 4 #include "clock.h" 5 #include "player_role.h" 6 7 class DummyView : public View { 8 public: DummyView(Clock * c)9 DummyView(Clock* c) : clock(c) {} 10 Clock* clock; ~DummyView()11 virtual ~DummyView() {} initialize()12 virtual void initialize() {} reset()13 virtual void reset() {} 14 virtual void displaySplash(const ProgressMeter*, const string&, SplashType, function<void()> = nullptr) {} clearSplash()15 virtual void clearSplash() {} close()16 virtual void close() {} refreshView()17 virtual void refreshView() {} getGameSpeed()18 virtual double getGameSpeed() { return 20; } updateView(CreatureView *,bool noRefresh)19 virtual void updateView(CreatureView*, bool noRefresh) {} drawLevelMap(const CreatureView *)20 virtual void drawLevelMap(const CreatureView*) {} setScrollPos(Vec2)21 virtual void setScrollPos(Vec2) {} resetCenter()22 virtual void resetCenter() {} getAction()23 virtual UserInput getAction() { return UserInputId::IDLE; } travelInterrupt()24 virtual bool travelInterrupt() { return false; } 25 virtual optional<int> chooseFromList(const string&, const vector<ListElem>&, int = 0, 26 MenuType = MenuType::NORMAL, ScrollPosition* = nullptr, optional<UserInputId> = none) { 27 return none; 28 } getPlayerRoleChoice(optional<PlayerRoleChoice> initial)29 virtual PlayerRoleChoice getPlayerRoleChoice(optional<PlayerRoleChoice> initial) { 30 return PlayerRole::KEEPER; 31 } chooseDirection(Vec2 playerPos,const string & message)32 virtual optional<Vec2> chooseDirection(Vec2 playerPos, const string& message) { 33 return none; 34 } 35 virtual bool yesOrNoPrompt(const string& message, bool defaultNo = false) { 36 return false; 37 } presentText(const string &,const string &)38 virtual void presentText(const string&, const string&) {} 39 virtual void presentList(const string&, const vector<ListElem>&, bool = false, 40 MenuType = MenuType::NORMAL, optional<UserInputId> = none) {} 41 virtual optional<int> getNumber(const string& title, int min, int max, int increments = 1) { 42 return none; 43 } 44 virtual optional<string> getText(const string& title, const string& value, int maxLength, 45 const string& hint = "") { 46 return none; 47 } chooseTradeItem(const string & title,pair<ViewId,int> budget,const vector<ItemInfo> &,ScrollPosition * scrollPos)48 virtual optional<UniqueEntity<Item>::Id> chooseTradeItem(const string& title, pair<ViewId, int> budget, 49 const vector<ItemInfo>&, ScrollPosition* scrollPos) { 50 return none; 51 } choosePillageItem(const string & title,const vector<ItemInfo> &,ScrollPosition * scrollPos)52 virtual optional<int> choosePillageItem(const string& title, const vector<ItemInfo>&, ScrollPosition* scrollPos) { 53 return none; 54 } chooseItem(const vector<ItemInfo> & items,ScrollPosition * scrollpos)55 virtual optional<int> chooseItem(const vector<ItemInfo>& items, ScrollPosition* scrollpos) { 56 return none; 57 } presentHighscores(const vector<HighscoreList> &)58 virtual void presentHighscores(const vector<HighscoreList>&) {} prepareCampaign(CampaignOptions,Options *,CampaignMenuState &)59 virtual CampaignAction prepareCampaign(CampaignOptions, Options*, CampaignMenuState&) { 60 return CampaignActionId::CANCEL; 61 } chooseCreature(const string &,const vector<CreatureInfo> &,const string & cancelText)62 virtual optional<UniqueEntity<Creature>::Id> chooseCreature(const string&, const vector<CreatureInfo>&, 63 const string& cancelText) { 64 return none; 65 } creatureInfo(const string & title,bool prompt,const vector<CreatureInfo> &)66 virtual bool creatureInfo(const string& title, bool prompt, const vector<CreatureInfo>&) { 67 return false; 68 } 69 virtual optional<Vec2> chooseSite(const string& message, const Campaign&, optional<Vec2> current = none) { 70 return none; 71 } presentWorldmap(const Campaign &)72 virtual void presentWorldmap(const Campaign&) {} animateObject(Vec2 begin,Vec2 end,ViewId object)73 virtual void animateObject(Vec2 begin, Vec2 end, ViewId object) {} animation(Vec2 pos,AnimationId)74 virtual void animation(Vec2 pos, AnimationId) {} getTimeMilli()75 virtual milliseconds getTimeMilli() { return clock->getMillis();} getTimeMilliAbsolute()76 virtual milliseconds getTimeMilliAbsolute() { return clock->getRealMillis();} stopClock()77 virtual void stopClock() {} continueClock()78 virtual void continueClock() {} isClockStopped()79 virtual bool isClockStopped() { return false; } addSound(const Sound &)80 virtual void addSound(const Sound&) {} logMessage(const string &)81 virtual void logMessage(const string&) {} 82 }; 83