public Floor(IScanner scanner, ITurret turret, int floorLevel, string floorName) { this.scanner = scanner; this.turret = turret; SecurityLevel = floorLevel; this.floorName = floorName; }
public ITurret CloneTurret(ITurret turret) { var tempTurret = new LaserTurret(); tempTurret = (LaserTurret)turret; return(tempTurret); }
// Use this for initialization void Start() { iturret = (ITurret)gameObject.GetComponent(typeof(ITurret)); upgradeObject = GameObject.Find("TurretUpgradeObject"); turretUpgrade = upgradeObject.GetComponent <TurretUpgradeControl> (); timeOfLastShot = Time.time; }
public bool TryGetTurret(int _id, out ITurret _turret) { _turret = null; if (turrets.ContainsKey(_id)) { _turret = turrets[_id]; } return(_turret != null); }
public bool PurchaseTurret(ITurret turret) { int turretCost = turret.GetCost(); if (turretCost <= gold) { gold -= turretCost; return(true); } return(false); }
public void PlayOn(Tile tile) { ITurret turret = tile.turret; turret.AddBadge(Badge); if (turret is Turret) { ((Turret)turret).fireRate *= 2; } if (turret is LaserTurret) { ((LaserTurret)turret).dps *= 2; } Destroy(Instantiate(PlayEffect, tile.transform.position, Quaternion.identity), 3f); }
internal virtual void LoadTurret(ITurret turret, bool validateGun = true, bool validateLoadCapacity = true) { this.BeginChangeModules(); this.LoadedModules.Turret = this.AvailableTurrets[turret]; if (!this.IsTdorSPG) { this.AvailableGuns.Clear(); foreach (var gun in turret.AvailableGuns.Values) { this.AvailableGuns.Add(gun, _gunViewModelCache[gun]); } } if (validateGun) { if (!turret.AvailableGuns.TryGetValue(this.LoadedModules.Gun.Gun.Key, out IGun gun)) { this.LoadGun(turret.AvailableGuns.Values.FirstOrDefault(), false, false); } else { if (gun != this.LoadedModules.Gun.Gun) // same gun, but parameters are different in this turret, so another instance { this.LoadGun(gun, false, false); } } } if (validateLoadCapacity) { this.TryUpgradeChassis(); } this.EndChangeModules(); }
private static IGun GetEliteGun(ITurret turret) { var maxTier = turret.AvailableGuns.Values.Max(gun => gun.Tier); return(turret.AvailableGuns.Values.Where(gun => gun.Tier == maxTier).LastOrDefault()); }
public long GetCurrentTurret(ITurret turret) => (turret.Level.Value + turret.Id) + turret.Id * 3;
public void SetGameState(NWGameStateInfo _gameState) { if (_gameState == null) { Console.LogError(ConsoleFilter.GameController, "Update GameStateInfo is null"); return; } if (Util.ArrayIsNullOrEmpty(_gameState.Teams)) { Console.LogError(ConsoleFilter.GameController, "Update GameStateInfo Teams is null"); return; } foreach (NWTeamInfo team in _gameState.Teams) { if (!teams.ContainsKey(team.Id)) { Console.LogErrorFormat(ConsoleFilter.GameController, "Team {0} is not Containce", team.Id); continue; } teams[team.Id].Resources = team.Resources; teams[team.Id].Units = team.Units; teams[team.Id].Builds = team.Builds; teams[team.Id].Turrets = team.Turrets; } if (!Util.ArrayIsNullOrEmpty(_gameState.Units)) { foreach (NWUnit serverUnit in _gameState.Units) { Unit unit = null; if (UnitController.TryGetUnit(serverUnit.Id, out unit) && unit != null) { unit.transform.position = Util.ConvertRTSStructToVector3(serverUnit.trasform); } } } if (!Util.ArrayIsNullOrEmpty(_gameState.Builds)) { foreach (NWBuild serverBuild in _gameState.Builds) { BuildController.UpdateBuild(serverBuild); } } //add and Update Turrets int[] turretsId = BuildController.GetAllTurretsId(); HashSet <int> Turrets = new HashSet <int>(turretsId); int[] serverTurretsId = Util.ArrayIsNullOrEmpty(_gameState.Turrets) ? new int[0] : Array.ConvertAll(_gameState.Turrets, x => x.Id); HashSet <int> ServerTurrets = new HashSet <int>(serverTurretsId); HashSet <int> removeTurrets = new HashSet <int>(Turrets); removeTurrets.ExceptWith(ServerTurrets); foreach (NWTurret nwTurret in _gameState.Turrets) { int id = nwTurret.Id; ITurret turret = null; if (BuildController.TryGetTurret(id, out turret) && turret != null) { turret.UpdateInfo(nwTurret); } else { BuildController.AddTurret(nwTurret); } } foreach (int turretId in removeTurrets) { BuildController.RemoveTurret(turretId); } commandQueue.Enqueue(() => { UI.SetMainPlayerTeamInfo(teams[MainPlayerController.TeamId]); }); }
protected virtual void LoadModules(IChassis chassis = null, IEngine engine = null, IRadio radio = null, ITurret turret = null, IGun gun = null) { this.BeginChangeModules(); if (engine != null) { this.LoadEngine(engine, false); } if (radio != null) { this.LoadRadio(radio, false); } if (turret != null) { this.LoadTurret(turret, gun == null, false); } if (gun != null) { this.LoadGun(gun, turret == null, false); } if (chassis == null) { this.TryUpgradeChassis(); } else { this.LoadChassis(chassis); } this.EndChangeModules(); }
private IGun GetStockGun(ITurret turret) { return(turret.AvailableGuns.Values.FirstOrDefault()); }
public bool IsEliteModule(ITurret turret) { return(turret == this.Tank.AvailableTurrets.Values.Last()); }
public void AddTurret(ITurret turret) => _turrets.Add(turret);
public ITurret CloneTurret(ITurret turret) { var tempTurret = new BasicTurret((BasicTurret)turret); return(tempTurret); }
//Set turret element for variables public void StartTurret( IEntity _parentEntity, TurretElement _turretType ) { rotation = new RotateToPoint2D(); fireSignal = new Signal(); parentEntity = _parentEntity; View view = parentEntity.view; turretEntity = view.GetComponent<PlayerView>().turretBehaviour; if( view == null || turretEntity == null ){ Debug.Log( "Selected Entity does not not meet requirement, entity null " + (turretEntity == null) ); return; } _t = view._t; isFiring = true; SetNewTurretType( _turretType ); fireMechanism = FireMechanism(); parentEntity.view.StartCoroutine(fireMechanism); }