Blame view

ios/Runner/Wowgame/Classes/Parsing/ScenarioParsing/BlockingActionParser.h 1.84 KB
cb213901   xiaoyu   添加一个游戏的源码和编译选项
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
  //
  //  BlockingActionParser.h
  //  SteveMaggieCpp
  //
  //  Created by Katarzyna Kalinowska-Górska on 31.05.2017.
  //
  //
  
  #ifndef BlockingActionParser_h
  #define BlockingActionParser_h
  
  #include "ActionParser.h"
  #include "ColourableSprite.h"
  
  class BlockingActionParser
  {
       public:
  
          static BlockingActionParser& getInstance()
          {
              static BlockingActionParser instance;
              return instance;
          };
  
          cocos2d::Action* parseJSONAction(const rapidjson::Value& jsonActionObject, ActionParseDelegate* parseDelegate, bool notifyDelegateWhenFinished = true);
      
      protected:
          cocos2d::Action* parseCallFunctionWithBlockingAction(const rapidjson::Value& jsonActionObject, ActionParseDelegate* parseDelegate, bool notifyDelegateWhenFinished);
          cocos2d::Action* parseWaitForTouchAction(const rapidjson::Value& jsonActionObject, ActionParseDelegate* parseDelegate, bool notifyDelegateWhenFinished);
          cocos2d::Action* parseWaitForPaletteComponentAction(const rapidjson::Value& jsonActionObject, ActionParseDelegate* parseDelegate, bool notifyDelegateWhenFinished);
          cocos2d::Action* parseWaitForDragAndDropAction(const rapidjson::Value& jsonActionObject, ActionParseDelegate* parseDelegate, bool notifyDelegateWhenFinished);
          cocos2d::Action* parseWaitForObjectUnlockAction(const rapidjson::Value& jsonActionObject, ActionParseDelegate* parseDelegate, bool notifyDelegateWhenFinished);
      
          std::function<void()> parseWaitForObjectUnlockActionFunction_ColourableSprite(ColourableSprite* unlockingObject, const rapidjson::Value& jsonActionObject, ActionParseDelegate* parseDelegate, bool notifyDelegateWhenFinished);
      
          void runCompletingActions(const rapidjson::Value& jsonActionObject, ActionParseDelegate* parseDelegate, int indexForConditionedActions = 0);
  };
  
  
  #endif /* BlockingActionParser_h */