// // Use this for initialization void Start() { fightReg = transform.GetComponentInChildren <FightRegion>(); foreach (FightPoint fp in fightReg.fightPoints) { soldierMaxLaneNum = Mathf.Max(soldierMaxLaneNum, fp.lane); } if (lanesTimeList) { laneTimes = new float[lanesTimeList.nums.Length]; for (int i = 0; i < laneTimes.Length; i++) { laneTimes[i] = lanesTimeList.nums[i]; } if (laneTimes.Length < soldierMaxLaneNum) { Debug.LogError("Not enough lane times exist in list!"); } } SetSoldierCurrentLaneNum(0, true); }
void HandleMonsterRefresh(FightRegion fr) { //send fight region bundle.region = fr; LvInfo lvInfo = LvInfoSQL.instance.GetValueByK(fr.scId); if (lvInfo != null) { //Fight g_Fight = JsonConvert.DeserializeObject<Fight>(lvInfo.scInfoJson); GameMonster[] gameMonsters = lvInfo.fight.gameMonsters[fr.index]; bundle.gameMonsters = new GameMonster[gameMonsters.Length]; for (int i = 0; i < gameMonsters.Length; i++) { bundle.gameMonsters[i] = new GameMonster(); Tool.Copy(bundle.gameMonsters[i], gameMonsters[i]); } } Dictionary <string, GameMonster> gmDict = new Dictionary <string, GameMonster>(); foreach (GameMonster gm in bundle.gameMonsters) { gmDict.Add(gm.id, gm); } FightCache cache = FightInstance.instance.GetFightCache(this.marsPeer.Role.roleId.ToString(), gmDict); this.marsPeer.fightCache = cache; }
public void InitForFightReg(FightRegion _fightReg, FightPoint _initialFightPoint) { fightReg = _fightReg; selectedFightPoint = _initialFightPoint; needsToGoToInitialPoint = true; initialPoint = _initialFightPoint; }
void HandleMonsterRefreshOnOperation(string json, Command cmd) { FightRegion g_fr = JsonConvert.DeserializeObject <FightRegion>(json); monsterOperator.EnqueueOperator(cmd, g_fr); // return bundle; }
public override void ExecuteOperation(Command cmd, params object[] objs) { base.ExecuteOperation(cmd, objs); switch (cmd) { case Command.MonsterRefresh: FightRegion fr = (FightRegion)objs[0]; HandleMonsterRefresh(fr); marsPeer.SendClientResponse(bundle); break; case Command.MonsterStateUpdate: GameMonster gm = (GameMonster)objs[0]; HandleMonsterStateUpdate(gm); marsPeer.SendClientResponse(bundle); break; } }