Пример #1
0
        protected override void OnEnter()
        {
            CLog.Log("BattleStateEnter");
            world = new GameObjectWorld("Battle");

            inputSystem       = world.GetOrCreateSystem <InputSystem>();
            tileMoveSystem    = world.GetOrCreateSystem <TileMoveSystem>();
            tileOperateSystem = world.GetOrCreateSystem <TileOperateSystem>();
            tileSprawnSystem  = world.GetOrCreateSystem <TileSprawnSystem>();
            var renderSystem      = world.GetOrCreateSystem <RenderSystem>();
            var tileCheckSystem   = world.GetOrCreateSystem <TileCheckSystem>();
            var tileDestroySystem = world.GetOrCreateSystem <TileDestroySystem>();

            //初始化各个单例系统
            //出事化地图数据
            var tileMapComponent = world.AddSingletonComponent <TileMapComponent>();

            tileMapComponent.origin         = Vector3.zero;
            tileMapComponent.rowCount       = 10;
            tileMapComponent.columnCount    = 8;
            tileMapComponent.tileWidth      = 1;
            tileMapComponent.tileHeight     = 1;
            tileMapComponent.entities       = new Entity[tileMapComponent.rowCount, tileMapComponent.columnCount];
            tileMapComponent.minRemoveCount = 3;

            var tileCheckComponent = world.AddSingletonComponent <TileCheckComponent>();

            tileCheckComponent.stateCaches = new byte[tileMapComponent.rowCount, tileMapComponent.columnCount];

            var tileOpearteComponent = world.AddSingletonComponent <TileOpeareteComponent>();

            tileOpearteComponent.selectPos = new Vector2Int(-1, -1);

            var tileSprawnComponent = world.AddSingletonComponent <TileSprawnComponent>();

            tileSprawnSystem.InitTiles();

            //打开战斗界面
            ViewSys.Instance.Open("BattleView");
        }
Пример #2
0
 protected override void OnCreate()
 {
     renderSystem     = World.GetOrCreateSystem <RenderSystem>();
     tileSprawnSystem = World.GetOrCreateSystem <TileSprawnSystem>();
     tileMoveSystem   = World.GetOrCreateSystem <TileMoveSystem>();
 }