123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- import BasicTreeBehaviorNode from "../../Engine/Basic/BasicTreeBehaviorNode";
- import BasicTreeControlNode from "../../Engine/Basic/BasicTreeControlNode";
- import EventManager from "../../Engine/Event/EventManager";
- import { _EGameBehavior, ConstObject } from "../Data/GameDataType";
- import GameEventName from "../Event/GameEventName";
- import Game_Gameing_Behavior from "./Game_Gameing_Behavior";
- import Game_Hall_Behavior from "./Game_Hall_Behavior";
- import { Game_Hall_Precondition } from "./Game_Hall_Precondition";
- import Game_InitLoad_Behavior from "./Game_InitLoad_Behavior";
- import Game_Login_Behavior from "./Game_Login_Behavior";
- import Game_Over_Behavior from "./Game_Over_Behavior";
- import { Game_Precondition } from "./Game_Precondition";
- import Game_WaitStart_Behavior from "./Game_WaitStart_Behavior";
- /**
- * 游戏行为树
- */
- export default class GameBehaviorTree extends BasicTreeControlNode {
- constructor (node: cc.Node, behaviorTreeConfig: any) {
- let controls = new Map<_EGameBehavior, BasicTreeBehaviorNode>();
- controls.set(_EGameBehavior.Login, new Game_Login_Behavior(node, _EGameBehavior.Login, ConstObject.GameBehaviorTreeID, new Game_Precondition()));
- controls.set(_EGameBehavior.InitLoad, new Game_InitLoad_Behavior(node, _EGameBehavior.InitLoad, ConstObject.GameBehaviorTreeID, new Game_Precondition()));
- controls.set(_EGameBehavior.Hall, new Game_Hall_Behavior(node, _EGameBehavior.Hall, ConstObject.GameBehaviorTreeID, new Game_Hall_Precondition()));
- controls.set(_EGameBehavior.WaitStart, new Game_WaitStart_Behavior(node, _EGameBehavior.WaitStart, ConstObject.GameBehaviorTreeID, new Game_Precondition()));
- controls.set(_EGameBehavior.Gameing, new Game_Gameing_Behavior(node, _EGameBehavior.Gameing, ConstObject.GameBehaviorTreeID, new Game_Precondition()));
- controls.set(_EGameBehavior.Over, new Game_Over_Behavior(node, _EGameBehavior.Over, ConstObject.GameBehaviorTreeID, new Game_Precondition()));
- super(node, "", ConstObject.GameBehaviorTreeID, behaviorTreeConfig, controls);
- EventManager.onEvent(GameEventName.Game_GetGameBehavior, this, this.onGetGameBehavior);
- }
- protected _enterFail (): void {
-
- }
- protected _enterAgain (): void {
-
- }
-
- /**获得当前游戏状态 */
- private onGetGameBehavior (callback: Function): void {
- callback && callback(this.currentChilds.pop());
- }
- }
|