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