cb213901
xiaoyu
添加一个游戏的源码和编译选项
|
1
|
//
|
5daad4bc
xiaoyu
游戏源码添加编译(现存问题:游戏内...
|
2
|
// ToyScenarioHandler.h
|
cb213901
xiaoyu
添加一个游戏的源码和编译选项
|
3
4
5
6
7
8
|
// SteveMaggieCpp
//
// Created by Katarzyna Kalinowska-Górska on 23.05.2017.
//
//
|
5daad4bc
xiaoyu
游戏源码添加编译(现存问题:游戏内...
|
9
10
|
#ifndef ToyScenarioHandler_h
#define ToyScenarioHandler_h
|
cb213901
xiaoyu
添加一个游戏的源码和编译选项
|
11
12
|
#include "json/document.h"
|
5daad4bc
xiaoyu
游戏源码添加编译(现存问题:游戏内...
|
13
14
15
16
|
#include "ToyLayoutObject.h"
//#include "ToyScenarioObject.h"
#include "ToyActionParser.h"
#include "ToyTimeIndicatorInterface.h"
|
cb213901
xiaoyu
添加一个游戏的源码和编译选项
|
17
|
|
5daad4bc
xiaoyu
游戏源码添加编译(现存问题:游戏内...
|
18
|
class ToyParentScene;
|
cb213901
xiaoyu
添加一个游戏的源码和编译选项
|
19
|
|
5daad4bc
xiaoyu
游戏源码添加编译(现存问题:游戏内...
|
20
|
class ToyScenarioHandler : public ToyScenarioObject, public ActionParseDelegate
|
cb213901
xiaoyu
添加一个游戏的源码和编译选项
|
21
22
23
24
25
26
27
28
|
{
public:
static const std::string DEMO_STATE_UNINITIALIZED;
static const std::string DEMO_STATE_PLAYING;
static const std::string DEMO_STATE_FINISHED;
static const std::string DEMO_STATE_NEVER_PLAYED;
|
5daad4bc
xiaoyu
游戏源码添加编译(现存问题:游戏内...
|
29
30
|
ToyScenarioHandler(ToyParentScene* scene);
virtual ~ToyScenarioHandler();
|
cb213901
xiaoyu
添加一个游戏的源码和编译选项
|
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
virtual void end();
virtual void loadScenarioFromJSONString(std::string jsonString, bool skipDemoActions);
virtual void loadScenarioFromJSONObject(const rapidjson::Value& jsonObject, bool skipDemoActions, bool isReplay = false);
virtual void reloadScenario(bool skipDemo, bool isReplay);
virtual void runScenario();
virtual void pauseScenario();
virtual void resumeScenario();
virtual void resetScenario(bool skipDemo, bool reloadLayout = true);
virtual std::string getDemoState(){ return _demoState; };
virtual void stopAllActions();
// sounds
void preloadSoundEffects(std::vector<rapidjson::Value*> actions);
void preloadSoundEffects(const rapidjson::Value& action);
void stopAllSoundEffects();
// timer
void startTimer(float pTimeToFinish, float step, const rapidjson::Value* actionsOnProgressStep, const rapidjson::Value* actionsOnTimeUp, bool finishScenarioAfterTimeUp, std::string timeIndicatorObjectName);
void stopTimer();
void pauseTimer();
void resumeTimer();
|
5daad4bc
xiaoyu
游戏源码添加编译(现存问题:游戏内...
|
55
56
57
|
// review prompt
void countUpRateMePromptCounter();
|
cb213901
xiaoyu
添加一个游戏的源码和编译选项
|
58
59
|
// ActionParseDelegate
|
5daad4bc
xiaoyu
游戏源码添加编译(现存问题:游戏内...
|
60
61
62
63
|
virtual ToyScenarioObject* getObjectByName(std::string objectName) override;
virtual ToyScenarioObject* getDefaultObjectForAction(std::string actionType) override;
virtual ToyScenarioObject* getDefaultObjectForConditionCheck() override;
virtual void addNewObject(std::string objectName, ToyScenarioObject* newObject) override;
|
cb213901
xiaoyu
添加一个游戏的源码和编译选项
|
64
65
|
virtual std::string getDefaultSoundsPath() override;
virtual std::string getAlternativeSoundsPath() override;
|
5daad4bc
xiaoyu
游戏源码添加编译(现存问题:游戏内...
|
66
|
virtual std::string getToyValueStorageContainerName() override;
|
cb213901
xiaoyu
添加一个游戏的源码和编译选项
|
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
virtual void runAction(cocos2d::Action* action) override;
virtual void actionFinished(const rapidjson::Value& jsonActionObject) override;
virtual void runInstantly(std::function<void()> actionFunction) override;
virtual void runCompletingAction(cocos2d::Action* action) override;
virtual void cancelAllCompletingActions() override;
virtual void schedule(std::function<void(float)> callback, std::string key, float delay) override;
virtual void scheduleOnce(std::function<void(float)> callback, float delay, std::string key) override;
virtual void unschedule(std::string key) override;
virtual void newTouchHandler(std::string key, TouchHandlerFunction touchHandler, TouchHandlerType touchType) override;
virtual void removeTouchHandler(std::string key, TouchHandlerType touchType) override;
virtual long long getLastScreenTouchTime() override;
virtual int getLoopActionCounter(std::string loopId) override;
virtual int addNewLoopActionCounter(std::string loopId, int timesRepeated) override;
virtual int decrementLoopActionCounter(std::string loopId) override;
virtual void deleteLoopActionCounter(std::string loopId) override;
virtual void setLastActionIndex(int index) override;
virtual unsigned int removeStoredSoundId(std::string soundPath) override;
virtual void storeSoundId(std::string soundPath, unsigned int newSoundId) override;
|
5daad4bc
xiaoyu
游戏源码添加编译(现存问题:游戏内...
|
86
|
// ToyScenarioObject
|
cb213901
xiaoyu
添加一个游戏的源码和编译选项
|
87
88
89
90
91
92
93
|
virtual void setProperty(std::string propertyName, const rapidjson::Value& newValue, ActionParseDelegate* parseDelegate) override;
virtual void callFunctionByName(std::string methodName, const rapidjson::Value* arguments, ActionParseDelegate* parseDelegate, std::function<void()> callback = [](){}) override;
virtual bool shouldSkipLayoutReloadOnFastForward(){return _shouldSkipLayoutReloadOnFastForward; }
protected:
|
5daad4bc
xiaoyu
游戏源码添加编译(现存问题:游戏内...
|
94
|
ToyParentScene* _scene;
|
cb213901
xiaoyu
添加一个游戏的源码和编译选项
|
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
std::string _soundsResFolder;
std::string _altSoundsResFolder;
bool _shouldSkipLayoutReloadOnFastForward;
std::string _valueStorageContainerName;
std::string _cachedJSONString;
rapidjson::Document* _cachedJSONData;
std::vector<rapidjson::Value*> _actionsSequence;
std::map<std::string, rapidjson::Value*> _predefinedActions;
std::map<std::string, int> _loopActionCounters;
int _lastActionIndex;
std::vector<int> _currentCompletingActionTags;
// rapidjson::Value* _onTimerCountdownAction;
std::vector<rapidjson::Value*> _actionsOnTimerUp;
bool _scenarioPaused;
bool _scenarioBarred;
bool _scenarioFinished;
bool _timerRunning;
float _timerStep;
float _timePassed;
float _totalTimerTime;
|
5daad4bc
xiaoyu
游戏源码添加编译(现存问题:游戏内...
|
120
|
ToyTimeIndicatorInterface* _timeSlider;
|
cb213901
xiaoyu
添加一个游戏的源码和编译选项
|
121
122
123
124
125
126
127
128
129
130
131
132
133
|
std::string _demoState;
std::map<std::string, int> _storedSoundIds;
virtual void clearSetup();
virtual void clearAllScheduledActions();
virtual void prepareAction(const rapidjson::Value* action);
virtual void trimActions(std::vector<rapidjson::Value*>& actions);
virtual void mergeSequences(std::vector<rapidjson::Value*>& actions);
void simpleCopyActionsToMainSequence(std::vector<rapidjson::Value*> actions);
};
|
5daad4bc
xiaoyu
游戏源码添加编译(现存问题:游戏内...
|
134
|
#endif /* ToyScenarioHandler_h */
|
cb213901
xiaoyu
添加一个游戏的源码和编译选项
|
|
|