示例#1
0
        void Test_StartGame()
        {
            int    stageId = 1091;
            VSMode vsModel = VSMode.Dungeon;

            TestWarParameter parameter = GameObject.Find("GlobalGenerator").GetComponent <TestWarParameter>();

            if (parameter != null)
            {
                stageId = parameter.stageId;
                vsModel = parameter.vsMode;


                if (parameter.useJsonData)
                {
                    StartCoroutine(OnUseJson());
                    return;
                }
                else if (parameter.useRecrodJson)
                {
                    StartCoroutine(WRTimeLineData.OnUseJson(parameter.watchRoleId));
                    return;
                }
                else if (parameter.useRecrodBinary)
                {
                    StartCoroutine(WRTimeLineData.OnUseBinary(parameter.watchRoleId));
                    return;
                }
            }

            // heroSkill=[heroId, skillId, skillLevel, skillId2, skillLevel2]
//			WarEnterData enterData = WarEnterData.CreateTest(3004, 1, new int[][]{
//				new int[]{2, 20002, 1, 1, 101, 1},
//				new int[]{5, 20003, 2, 1, 102, 1}
//			});



            WarEnterData enterData;


            enterData = WarEnterData.CreateTest(stageId, 1,
                                                // 自己技能
                                                new int[][] {
//										new int[]{20003, 8, 1, 0, 1},
//										new int[]{20004, 8, 1, 0, 1},
//										new int[]{20010, 8, 1, 0, 0},
//										new int[]{20102, 8, 1, 0, 0},
//										new int[]{20107, 8, 1, 0, 0},
//										new int[]{20109, 8, 1, 0, 0},
//                    new int[]{20202, 17, 1, 0, 0},
                //				new int[]{20204, 19, 1, 0, 0},
//				new int[]{20104, 8, 1, 0, 0},
//				new int[]{20205, 8, 1, 0, 0},

//									new int[]{20104, 3, 1, 0, 0},
//									new int[]{20206, 3, 1, 0, 0},
//									new int[]{20205, 12, 1, 0, 0},

                new int[] { 20301, 19, 1, 0, 0 },
                new int[] { 20302, 24, 1, 0, 0 },
                new int[] { 20303, 25, 1, 0, 0 },
                new int[] { 20304, 32, 1, 0, 0 },
                new int[] { 20305, 33, 1, 0, 0 },

//                    new int[]{20301, 8, 1, 0, 0},
//                    new int[]{20302, 32, 1, 0, 0},
//                    new int[]{20303, 32, 1, 0, 0},
//                    new int[]{20304, 3, 1, 0, 0},
//                    new int[]{20305, 32, 1, 0, 0},
                //new int[]{20202, 100004, 1, 0, 0},
                //new int[]{20204, 100005, 1, 0, 0},
                //new int[]{20205, 100006, 1, 0, 0},
                //new int[]{20301, 100007, 1, 0, 0},
                //new int[]{20302, 100008, 1, 0, 0},
            },


                                                //电脑技能
                                                new int[][] {
//					new int[]{20301, 251001, 1, 0, 0},
//					new int[]{20302, 251001, 1, 0, 0},
                //					new int[]{20303, 251001, 1, 0, 0},
                new int[] { 20301, 101001, 1, 0, 0 },
                new int[] { 20302, 191001, 1, 0, 0 },
                new int[] { 20303, 251001, 1, 0, 0 },
                new int[] { 20304, 311001, 1, 0, 0 },
            }
                                                );

            enterData.skillConfigDict = skillConfigs;
            enterData.vsmode          = vsModel;

            War.Start(enterData);
//			StartCoroutine(CloseSound());
        }
示例#2
0
        /// <summary>
        /// 进入战斗
        /// </summary>
        /// <param name="enterData">进入战斗数据</param>


        public static void Start(WarEnterData enterData)
        {
            Debug.Log("进入战斗数据 enterData=" + enterData);

            if (War.isTest)
            {
                War.Clear();
            }

            War.enterData = enterData;
            War.isRecord  = enterData.isRecord;
            // 初始化
            War.Init();

            // 战斗流程状态--生成数据
            War.processState = WarProcessState.GenerateData;
            // 对战模式
            War.vsmode = enterData.vsmode;
            // 是否自动关闭加载面板
            War.isAutoCloseLoad = !War.requireSynch;
            // 自己势力ID
            War.ownLegionID = enterData.ownLegionId;

            Debug.LogFormat("type====={0}", enterData.vsmode);
            // 战斗已过时间
            War.time = 0;
            // 战斗环境配置--PC机是否开启PC操作模式
            War.config.PCOperater = ConstConfig.GetInt(ConstConfig.ID.War_PCOperater) == 1;

            // 生成战场数据
            War.sceneData = new SceneDataForEnterData();
            (War.sceneData as SceneDataForEnterData).Generation(enterData);

            // 生成预加载资源
            WarRes.GenerationPreloadList();

            // 战斗流程状态--加载中
            War.processState = WarProcessState.Loading;

            if (War.isEditor == false)
            {
                if (!War.isTest)
                {
                    LoadType loadType = LoadType.None;
                    switch (War.vsmode)
                    {
                    case VSMode.Dungeon:
                    case VSMode.Train:
                        loadType = LoadType.Scene_Dungeon;
                        break;

                    case VSMode.PVP:
                        loadType = LoadType.Scene_PVP;
                        break;

                    case VSMode.PVE:
                    case VSMode.PVE_Expedition:
                    default:
                        loadType = LoadType.Scene_Normal;
                        break;
                    }

                    Coo.menuManager.OpenMenuBack(MenuType.WarScene, enterData.backMenuId, null, loadType);
                }
            }

            War.signal.GenerateDataComplete();
            Debug.Log("	战斗数据生成完毕 War.sGenerateDataComplete.Dispatch();");

            LuaCallMethod("Start");
        }