コード例 #1
0
ファイル: AppStart.cs プロジェクト: OutsiderYY/ETBomb
        public override async ETTask Run(ET.EventType.AppStart args)
        {
            Log.Info($"AppStart...");

            AkaBuilder.Create()
            .UseUI()
            .UseEventBus()
            .AddAssemblyPart(typeof(AppStart).Assembly)
            .Build();

            Game.Scene.AddComponent <TimerComponent>();

            // 更新资源 并预加载资源
            var resources = Game.Scene.AddComponent <ResourcesComponent>();
            await resources.Load();

            // 添加必要组件
            Game.Scene.AddComponent <ConfigComponent>();
            Game.Scene.AddComponent <OpcodeTypeComponent>();
            Game.Scene.AddComponent <MessageDispatcherComponent>();
            Game.Scene.AddComponent <NetOuterComponent>();

            // 进入登录界面
            Akau.Open(nameof(LoginPage), true);
        }
コード例 #2
0
        private async ETTask Preload()
        {
            // 开始预加载资源
            EventBus.Publish(new ResUpdateEvent {
                IsPreload = true, PreloadName = "UI"
            });
            await Akau.Preload();

            EventSystem.Instance.Publish(new PreloadCompleted());
        }
コード例 #3
0
        public override async ETTask Run(EnterRoomSuccess a)
        {
            // 创建一个房间
            Room room = Game.Scene.AddComponent <Room, long, long>(a.RoomNum, a.RoomMaster);

            room.AddComponent <GameController>();
            room.AddComponent <LocalPlayerComponent>().LocalPlayerSeatIndex = a.CurrentPlayerSeatIndex;

            // 进入房间UI
            Akau.Open(nameof(RoomPage));
        }
コード例 #4
0
ファイル: OnRoundEnd.cs プロジェクト: OutsiderYY/ETBomb
        public override async ETTask Run(RoundEndEvent a)
        {
            // var args = new Dialog.Args("游戏", "游戏结束");
            // args.OkAction = () =>
            // {
            //     EventBus.Publish(new GameStartEvent { GameOver = true });
            //     Dialog.Close();
            // };
            // Dialog.Open(args);

            Akau.Open(nameof(RoundEndWindow));

            await ETTask.CompletedTask;
        }
コード例 #5
0
ファイル: NetworkLoading.cs プロジェクト: OutsiderYY/ETBomb
 public static void Close()
 {
     Akau.Close(nameof(NetworkLoading));
 }
コード例 #6
0
ファイル: NetworkLoading.cs プロジェクト: OutsiderYY/ETBomb
 public static void Open(bool mask = false)
 {
     Akau.Open(nameof(NetworkLoading), false, mask);
 }
コード例 #7
0
 protected override void OnCreate()
 {
     this._joinBtn.onClick.AddListener(() => Akau.Open(nameof(JoinOrCreateDialog), args: nameof(JoinPanel)));
     this._createBtn.onClick.AddListener(() => Akau.Open(nameof(JoinOrCreateDialog), args: nameof(CreatePanel)));
 }
コード例 #8
0
ファイル: OnLoginSuccess.cs プロジェクト: OutsiderYY/ETBomb
 public override async ETTask Run(LoginSuccess a)
 {
     // 登录成功,跳转UI
     Akau.Open(nameof(LobbyPage), true);
     await ETTask.CompletedTask;
 }
コード例 #9
0
ファイル: Dialog.cs プロジェクト: OutsiderYY/ETBomb
 public static void Close()
 {
     Akau.Close(nameof(Dialog));
 }
コード例 #10
0
ファイル: Dialog.cs プロジェクト: OutsiderYY/ETBomb
 public static void Open(Args args)
 {
     Akau.Open(nameof(Dialog), args: args);
 }
コード例 #11
0
ファイル: OnExitRoom.cs プロジェクト: OutsiderYY/ETBomb
 public override async ETTask Run(ExitRoom a)
 {
     Game.Scene.RemoveComponent <Room>();
     Akau.Open(nameof(LobbyPage));
 }