public FleetL GetFleet(long fleetID) { FleetL fleet = null; _fleetList.TryGetValue(fleetID, out fleet); // Debug.Log ("Find the fleet, id = " + fleetID.ToString()); return(fleet); }
public FleetL CreateFleet(long fleetID) { FleetL fleet = GetFleet(fleetID); if (fleet != null) { return(fleet); } fleet = new FleetL(fleetID); fleet.Initialze(); _fleetList.Add(fleetID, fleet); return(fleet); }
// 2012.04.05 LiHaojie Begin the battle logic public virtual void BeginBattleLogic() { // Recalculate the formation bounds actorFormations.Clear(); enemyFormations.Clear(); FleetL fleet = null; WarshipL warship = null; foreach (GameData.BattleGameData.Fleet fleetData in _battleResult.Fleets) { List <GameData.BattleGameData.Ship> shipDatas = fleetData.Ships; fleet = Globals.Instance.MPlayerManager.CreateFleet(fleetData.FleetID); fleet._isActorFleet = !fleetData.NPCFleet; fleet._isAttachFleet = fleetData.IsAttacker; PlayerData data = null; if (_battleResult.BattleType == GameData.BattleGameData.BattleType.PORT_VIE_BATTLE && Globals.Instance.MPortVieManager.puFlagReverseFleetPosition) { if (fleet._isAttachFleet) { data = Globals.Instance.MGameDataManager.MEnemyData; } else { data = Globals.Instance.MGameDataManager.MActorData; } } else { if (fleet._isAttachFleet) { data = Globals.Instance.MGameDataManager.MActorData; } else { data = Globals.Instance.MGameDataManager.MEnemyData; } } foreach (GameData.BattleGameData.Ship shipData in shipDatas) { GirlData wsData = data.GetGirlData(shipData.ShipID); //tzz added wsData.WarshipGeneralLogicID = shipData.GeneralLogicID; wsData.WarshipGeneralAvatar = shipData.GeneralAvatar; fleet.CreateWarship(wsData, delegate(WarshipL ws) { warship = ws; warship.setBloodDisplay(true); warship._warshipLogicID = shipData.LogicShipID; // warship.U3DGameObject.name = wsData.BasicData.Name; warship.GameObjectTag = TagMaskDefine.GFAN_FIGHT_WARSHIP; // Fleet data warship.Property.WarshipFleetID = fleet._fleetID; warship.Property.WarshipIsAttacker = fleet._isAttachFleet; warship.Property.WarshipIsNpc = shipData.IsNpc; // // A specifical value, use to simulate server running warship._numBeAttacked = 0; Vector3 position = HelpUtil.GetWarFiledGridPosition(shipData.Position); position += SceneOffset; warship.ForceMoveTo(position); // Rotate 180 around y axis if (!fleet._isAttachFleet) { warship.U3DGameObject.transform.rotation = Quaternion.AngleAxis(180, Vector3.up); } }); if (fleet._isAttachFleet) { AddFormationCell(shipData.Position, actorFormations); } else { AddFormationCell(shipData.Position, enemyFormations); } } // If is Npc fleet if (fleetData.NPCFleet == true) { // The enemy fleet information _enemyFleet = fleet; } else { // The actor information _actorFleet = fleet; } _currentFleets.Add(fleet._fleetID, fleet); } //tzz added for store the fov in order restore when Battle end // CustomCameraFormerFov = Globals.Instance.MSceneManager.mMainCamera.fov; Globals.Instance.MSceneManager.mMainCamera.fov = 60; }
public void RemoveFleet(FleetL fleet) { fleet.Release(); _fleetList.Remove(fleet._fleetID); }