public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { if (fishType != "FreshwaterFish" && fishType != "SaltwaterFish") { throw new InvalidOperationException("Invalid fish type."); } IFish fish = null; if (fishType == "FreshwaterFish") { fish = new FreshwaterFish(fishName, fishSpecies, price); } else if (fishType == "SaltwaterFish") { fish = new SaltwaterFish(fishName, fishSpecies, price); } IAquarium aquarium = this.aquariums.Where(x => x.Name == aquariumName).FirstOrDefault(); if (aquarium.GetType().Name.Contains("Fresh") && fish.GetType().Name.Contains("Fresh")) { aquarium.AddFish(fish); } else if (aquarium.GetType().Name.Contains("Salt") && fish.GetType().Name.Contains("Salt")) { aquarium.AddFish(fish); } else { return($"Water not suitable."); } return($"Successfully added {fish.GetType().Name} to {aquariumName}."); }
//Changed by Xhj. use info as Parameter public IFish SpawnFish(FishInfo info) { //iType = 23; IFish fish = fishPoolMgr.Spawn(info.fishType); if (fish == null) { DebugLogger.LogWarning(eLogType.LT_LOGIC, info.fishType.ToString() + " fish spawn failed"); return(null); } fish.Init(); fish.FishID = info.fishId; fish.LifeTime = info.expireTime; fish.Lottery = info.lottery; fish.CreateTime = info.createTime; fish.EscapeTime = info.escapePlace / 100f; ILevelObj obj = fish as ILevelObj; obj.level = this; FishPath path = SceneMgr.Instance.GetFishPath(info.pathId - 1); if (path != null) { fish.SetPath(path.start.position, path.end.position); } else { DebugLogger.LogWarning(eLogType.LT_LOGIC, "path not exist"); } return(fish); }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { IFish fish = null; var aquarium = this.aquariums.FirstOrDefault(a => a.Name == aquariumName); if (fishType == "FreshwaterFish") { fish = new FreshwaterFish(fishName, fishSpecies, price); } else if (fishType == "SaltwaterFish") { fish = new SaltwaterFish(fishName, fishSpecies, price); } if (fish == null) { throw new InvalidOperationException("Invalid fish type."); } var fishWaterType = fish.GetType().Name.Contains("Fresh") ? "Fresh" : "Salt"; if (!aquarium.GetType().Name.StartsWith(fishWaterType)) { return("Water not suitable."); } aquarium.AddFish(fish); return($"Successfully added {fishType} to {aquariumName}."); }
/// <summary> /// Spawns a fish in a random position /// </summary> /// <param name="f">Fish object</param> /// <param name="speedMultiplier">Speed multiplier for this wave</param> /// <param name="distance">Range of distance for this wave</param> /// <param name="distance">Range of angles (in radians) for this wave</param> public void RandomSpawnFish(FishContainer f, float speedMultiplier, Vector2 distance, Vector2 angle) { Vector2 position = Utility.RandomPointOnUnitCircle(distance, angle); IFish fish = SpawnFish(f.fishPrefab, f.spawnPositionOverride.GetValueOrDefault(position), speedMultiplier); fishList.Add(fish); }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { IFish fish = null; if (fishType == nameof(FreshwaterFish)) { fish = new FreshwaterFish(fishName, fishSpecies, price); } else if (fishType == nameof(SaltwaterFish)) { fish = new SaltwaterFish(fishName, fishSpecies, price); } else { throw new InvalidOperationException(ExceptionMessages.InvalidFishType); } var aquariumType = aquariumByName[aquariumName].GetType().Name; if (aquariumType == nameof(SaltwaterAquarium) && fishType == nameof(FreshwaterFish) || aquariumType == nameof(FreshwaterAquarium) && fishType == nameof(SaltwaterFish)) { throw new InvalidOperationException(OutputMessages.UnsuitableWater); } aquariumByName[aquariumName].AddFish(fish); return(string.Format(OutputMessages.EntityAddedToAquarium, fishType, aquariumName)); }
public Movement(IFish fish, Vector3 startPos, Vector3 endPos) { Owner = fish; this._startPos = startPos; this._endPos = endPos; Init(); }
public void UpDate() { this._timeOver.Clear(); foreach (var item in _fishes) { item.Value.OnUpDate(); if (item.Value.TimeOver()) { this._timeOver.Add(item.Key); } } foreach (var key in this._timeOver) { IFish fish = this._fishes[key]; ResFishInfo info = InfoManager.Instance.GetFishInfo(fish.ObjType); level.fishPoolMgr.Recycle(info.name, fish); this._fishes.Remove(key); } _escapeTimeOver.Clear(); foreach (var fish in _fishesEscaped) { fish.OnEscapeUpDate(); if (fish.EscapeTimeOver()) { this._escapeTimeOver.Add(fish); } } foreach (var fish in this._escapeTimeOver) { ResFishInfo info = InfoManager.Instance.GetFishInfo(fish.ObjType); level.fishPoolMgr.Recycle(info.name, fish); this._fishesEscaped.Remove(fish); } }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { var aquarium = this.aquariums.FirstOrDefault(x => x.Name == aquariumName); IFish fish = null; if (fishType == "SaltwaterFish") { fish = new SaltwaterFish(fishName, fishSpecies, price); } else if (fishType == "FreshwaterFish") { fish = new FreshwaterFish(fishName, fishSpecies, price); } else { throw new InvalidOperationException(ExceptionMessages.InvalidFishType); } if ((fishType == "SaltwaterFish" && aquarium.GetType().Name == "SaltwaterAquarium") || (fishType == "FreshwaterFish" && aquarium.GetType().Name == "FreshwaterAquarium")) { aquarium.AddFish(fish); return(String.Format(OutputMessages.EntityAddedToAquarium, fishType, fishName)); } return("Water not suitable."); }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { IFish fish = null; if (fishType == "FreshwaterFish") { fish = new FreshwaterFish(fishName, fishSpecies, price); } else if (fishType == "SaltwaterFish") { fish = new SaltwaterFish(fishName, fishSpecies, price); } else { throw new InvalidOperationException(ExceptionMessages.InvalidFishType); } if (aquariums[aquariumName].GetType().Name.StartsWith("Freshwater") && fishType.StartsWith("Freshwater")) { aquariums[aquariumName].AddFish(fish); } else if (aquariums[aquariumName].GetType().Name.StartsWith("Saltwater") && fishType.StartsWith("Saltwater")) { aquariums[aquariumName].AddFish(fish); } else { return(OutputMessages.UnsuitableWater); } return(string.Format(OutputMessages.EntityAddedToAquarium, fishType, aquariumName)); }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { var aquarium = aquariums.FirstOrDefault(a => a.Name == aquariumName); if (fishType == "FreshwaterFish" && aquarium.GetType().Name == "FreshwaterAquarium") { fish = new FreshwaterFish(fishName, fishSpecies, price); aquarium.AddFish(fish); } else if (fishType == "SaltwaterFish" && aquarium.GetType().Name == "SaltwaterAquarium") { fish = new SaltwaterFish(fishName, fishSpecies, price); aquarium.AddFish(fish); } if (fishType != "SaltwaterFish" && fishType != "FreshwaterFish") { throw new InvalidOperationException(ExceptionMessages.InvalidFishType); } if (fish == null) { return(OutputMessages.UnsuitableWater); } return(string.Format(OutputMessages.FishAdded, fish.GetType().Name, aquariumName)); }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { IFish fish = null; IAquarium aquarium = aquariums.FirstOrDefault(x => x.Name == aquariumName); if (fishType != nameof(FreshwaterFish) && fishType != nameof(SaltwaterFish)) { throw new InvalidOperationException(ExceptionMessages.InvalidFishType); } else { string currentAquariumType = aquarium.GetType().Name; if (fishType == "FreshwaterFish" && currentAquariumType == "FreshwaterAquarium") { fish = new FreshwaterFish(fishName, fishSpecies, price); } else if (fishType == "SaltwaterFish" && currentAquariumType == "SaltwaterAquarium") { fish = new SaltwaterFish(fishName, fishSpecies, price); } else { return(OutputMessages.UnsuitableWater); } aquarium.AddFish(fish); return(string.Format(OutputMessages.EntityAddedToAquarium, fishType, aquariumName)); } }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price)//todo { IAquarium aquarium = this.aquariums.FirstOrDefault(a => a.Name == aquariumName); IFish fish = null; if (fishType == "FreshwaterFish") { fish = new FreshwaterFish(fishName, fishSpecies, price); } else if (fishType == "SaltwaterFish") { fish = new SaltwaterFish(fishName, fishSpecies, price); } else { throw new InvalidOperationException("Invalid fish type."); } if ((fish.GetType().Name.Contains("Freshwater") && aquarium.GetType().Name.Contains("Freshwater")) || (fish.GetType().Name.Contains("Saltwater") && aquarium.GetType().Name.Contains("Saltwater"))) { aquarium.AddFish(fish); return($"Successfully added {fishType} to {aquariumName}."); } else { return("Water not suitable."); } }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { IFish fish = null; if (fishType != "FreshwaterFish" && fishType != "SaltwaterFish") { throw new InvalidOperationException(ExceptionMessages.InvalidFishType); } else if (fishType == "FreshwaterFish") { fish = new FreshwaterFish(fishName, fishSpecies, price); } else { fish = new SaltwaterFish(fishName, fishSpecies, price); } IAquarium aquarium = aquariums.FirstOrDefault(x => x.Name == aquariumName); Fish fish1 = fish as Fish; if (fish1.FIshLivingPlace != aquarium.GetType().Name) { return("Water not suitable."); } else { aquarium.AddFish(fish); return(string.Format(OutputMessages.EntityAddedToAquarium, fishType, aquariumName)); } }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { //Posible exception IAquarium aquarium = this.aquariums.First(a => a.Name == aquariumName); IFish fish = null; switch (fishType) { case "FreshwaterFish": fish = new FreshwaterFish(fishName, fishSpecies, price); aquarium.AddFish(fish); return(aquarium.GetType().Name == "FreshwaterAquarium" ? string.Format(OutputMessages.FishAdded, fishType, aquariumName) : OutputMessages.UnsuitableWater); case "SaltwaterFish": fish = new SaltwaterFish(fishName, fishSpecies, price); aquarium.AddFish(fish); return(aquarium.GetType().Name == "SaltwaterAquarium" ? string.Format(OutputMessages.FishAdded, fishType, aquariumName) : OutputMessages.UnsuitableWater); default: throw new InvalidOperationException(ExceptionMessages.InvalidFishType); } }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { IFish fish = null; switch (fishType) { case "FreshwaterFish": fish = new FreshwaterFish(fishName, fishSpecies, price); break; case "SaltwaterFish": fish = new SaltwaterFish(fishName, fishSpecies, price); break; default: throw new InvalidOperationException(ExceptionMessages.InvalidFishType); } var aquarium = this.aquariums.FirstOrDefault(a => a.Name == aquariumName); bool canLiveInWater = (fish.GetType().Name.Contains("Freshwater") && aquarium.GetType().Name.Contains("Freshwater")) || (fish.GetType().Name.Contains("Saltwater") && aquarium.GetType().Name.Contains("Saltwater")); if (canLiveInWater) { aquarium.AddFish(fish); return(string.Format(OutputMessages.FishAdded, fishType, aquariumName)); } else { return(string.Format(OutputMessages.UnsuitableWater)); } }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { var message = OutputMessages.UnsuitableWater; var aquarium = this.aquariumRepository.FindByType(aquariumName); IFish fish = (IFish)this.fishFactory.Create(fishName, fishType, fishSpecies, price); var aquariumType = aquarium.GetType().Name; var fishFromType = fish.GetType().Name; if (aquariumType.Contains("Fresh") && fishFromType.Contains("Fresh")) { aquarium.AddFish(fish); message = string.Format(OutputMessages.EntityAddedToAquarium, fishFromType, aquarium.Name); } if (aquariumType.Contains("Salt") && fishFromType.Contains("Salt")) { aquarium.Fish.Add(fish); message = string.Format(OutputMessages.EntityAddedToAquarium, fishFromType, aquarium.Name); } return(message); }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { IFish fish = null; if (fishType == "FreshwaterFish") { fish = new FreshwaterFish(fishName, fishSpecies, price); } else if (fishType == "SaltwaterFish") { fish = new SaltwaterFish(fishName, fishSpecies, price); } if (fish == null) { throw new InvalidOperationException("Invalid fish type."); } var aquarium = this.aquariums.FirstOrDefault(x => x.Name == aquariumName); if (aquarium.GetType().Name == "FreshwaterAquarium" && fishType == "FreshwaterFish") { aquarium.AddFish(fish); return($"Successfully added {fishType} to {aquariumName}."); } if (aquarium.GetType().Name == "SaltwaterAquarium" && fishType == "SaltwaterFish") { aquarium.AddFish(fish); return($"Successfully added {fishType} to {aquariumName}."); } return("Water not suitable."); }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { IFish fish = null; if (fishType == "FreshwaterFish") { fish = new FreshwaterFish(fishName, fishSpecies, price); } if (fishType == "SaltwaterFish") { fish = new SaltwaterFish(fishName, fishSpecies, price); } if (fish == null) { throw new InvalidOperationException(ExceptionMessages.InvalidFishType); } IAquarium seachedAqua = aquariums.FirstOrDefault(a => a.Name == aquariumName); if (seachedAqua.GetType().Name == "SaltwaterAquarium" && fishType == "FreshwaterFish") { return($"Water not suitable."); } if (seachedAqua.GetType().Name == "FreshwaterAquarium" && fishType == "SaltwaterFish") { return($"Water not suitable."); } seachedAqua.AddFish(fish); return($"Successfully added {fishType} to {aquariumName}."); }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { IAquarium aquarium = shopAquariums.FirstOrDefault(el => el.Name == aquariumName); IFish fish = null; if (fishType != "FreshwaterFish" && fishType != "SaltwaterFish") { throw new InvalidOperationException(ExceptionMessages.InvalidFishType); } if ((fishType == "FreshwaterFish" && aquarium.GetType().Name != "FreshwaterAquarium") || (fishType == "SaltwaterFish" && aquarium.GetType().Name != "SaltwaterAquarium")) { return(OutputMessages.UnsuitableWater); } if (fishType == "FreshwaterFish") { fish = new FreshwaterFish(fishName, fishSpecies, price); shopAquariums.FirstOrDefault(el => el.Name == aquariumName).AddFish(fish); } else { fish = new SaltwaterFish(fishName, fishSpecies, price); shopAquariums.FirstOrDefault(el => el.Name == aquariumName).AddFish(fish); } //return string.Format(OutputMessages.SuccessfullyAdded, fishType, aquariumName); return($"Successfully added {fishType} to {aquariumName}."); }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { IFish fish = null; var aquarium = this.aquariums.FirstOrDefault(x => x.Name == aquariumName); if (fishType == "FreshwaterFish") { fish = new FreshwaterFish(fishName, fishSpecies, price); } if (fishType == "SaltwaterFish") { fish = new SaltwaterFish(fishName, fishSpecies, price); } if (fish == null) { throw new InvalidOperationException(ExceptionMessages.InvalidFishType); } var typeOfwater = fish.GetType().Name.Contains("Fresh") ? "Fresh" : "Salt"; if (!aquarium.GetType().Name.StartsWith(typeOfwater)) { return(string.Format(OutputMessages.UnsuitableWater)); } aquarium.AddFish(fish); return(string.Format(OutputMessages.EntityAddedToAquarium, fishType, aquariumName)); }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { IFish fish = null; if (fishType == nameof(FreshwaterFish)) { fish = new FreshwaterFish(fishName, fishSpecies, price); } else if (fishType == nameof(SaltwaterFish)) { fish = new SaltwaterFish(fishName, fishSpecies, price); } else { throw new InvalidOperationException("Invalid fish type."); } IAquarium aquarium = aquariums.FirstOrDefault(a => a.Name == aquariumName); if (fish.GetType().Name.StartsWith("Fresh") && aquarium.GetType().Name.StartsWith("Fresh") || fish.GetType().Name.StartsWith("Salt") && aquarium.GetType().Name.StartsWith("Salt")) { aquarium.AddFish(fish); return($"Successfully added {fishType} to {aquariumName}."); } else { return($"Water not suitable."); } }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { IFish fish = null; if (fishType.ToLower() == "freshwaterfish") { fish = new FreshwaterFish(fishName, fishSpecies, price); } else if (fishType.ToLower() == "saltwaterfish") { fish = new SaltwaterFish(fishName, fishSpecies, price); } if (fish == null) { throw new InvalidOperationException(ExceptionMessages.InvalidFishType); } if (!aquariums.ContainsKey(aquariumName)) { throw new InvalidOperationException(ExceptionMessages.InvalidAquariumName); } IAquarium aquarium = this.aquariums[aquariumName]; if (fishType.ToLower() == "saltwaterfish" && aquarium.GetType().Name.ToLower() == "freshwateraquarium") { return(OutputMessages.UnsuitableWater); } else if (fishType.ToLower() == "freshwaterfish" && aquarium.GetType().Name.ToLower() == "saltwateraquarium") { return(OutputMessages.UnsuitableWater); } this.aquariums[aquariumName].AddFish(fish); return(String.Format(OutputMessages.EntityAddedToAquarium, fish.GetType().Name, aquarium.Name)); }
public void Recycle(string strName, IFish fish) { if (this._pools.ContainsKey(strName)) { this._pools[strName].Release(fish); } }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { if (fishType != nameof(FreshwaterFish) && fishType != nameof(SaltwaterFish)) { throw new InvalidOperationException(ExceptionMessages.InvalidFishType); } IFish fish = null; var aquariumToCheck = aquariums.FirstOrDefault(x => x.Name == aquariumName); //TODO: Must check if aquarium is null?? if (fishType == nameof(FreshwaterFish) && aquariumToCheck.GetType().Name == nameof(FreshwaterAquarium)) { fish = new FreshwaterFish(fishName, fishSpecies, price); aquariumToCheck.AddFish(fish); return(string.Format(OutputMessages.EntityAddedToAquarium, fish.GetType().Name, aquariumName)); } else if (fishType == nameof(SaltwaterFish) && aquariumToCheck.GetType().Name == nameof(SaltwaterFish)) { fish = new SaltwaterFish(fishName, fishSpecies, price); aquariumToCheck.AddFish(fish); return(string.Format(OutputMessages.EntityAddedToAquarium, fish.GetType().Name, aquariumName)); } else { return(OutputMessages.UnsuitableWater); } }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { IAquarium aquarium = aquariums.FirstOrDefault(p => p.Name == aquariumName); IFish fish = null; if (fishType == nameof(FreshwaterFish)) { fish = new FreshwaterFish(fishName, fishSpecies, price); if (aquarium.GetType().Name == nameof(FreshwaterAquarium)) { aquarium.AddFish(fish); return(string.Format(OutputMessages.EntityAddedToAquarium, fishType, aquariumName)); } } else if (fishType == nameof(SaltwaterFish)) { fish = new SaltwaterFish(fishName, fishSpecies, price); if (aquarium.GetType().Name == nameof(SaltwaterAquarium)) { aquarium.AddFish(fish); return(string.Format(OutputMessages.EntityAddedToAquarium, fishType, aquariumName)); } } else { throw new InvalidOperationException(string.Format(ExceptionMessages.InvalidFishType)); } return(string.Format(OutputMessages.UnsuitableWater)); }
public static FishController AddFish(IFish fish) { var newFish = (FishController)fish; takenNames.Add(newFish.FishName); return(newFish); }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { if (fishType != "FreshwaterFish" && fishType != "SaltwaterFish") { throw new InvalidOperationException("Invalid fish type."); } IAquarium aquarium = aquariums.FirstOrDefault(a => a.Name == aquariumName); string aquariumToFish = string.Empty; IFish fish = null; if (fishType == "FreshwaterFish") { fish = new FreshwaterFish(fishName, fishSpecies, price); aquariumToFish = "Freshwater"; } else if (fishType == "SaltwaterFish") { fish = new SaltwaterFish(fishName, fishSpecies, price); aquariumToFish = "Saltwater"; } if (!aquarium.GetType().Name.Contains(aquariumToFish)) { return("Water not suitable."); } aquarium.AddFish(fish); return($"Successfully added {fish.GetType().Name} to {aquarium.Name}."); }
public void AddFish(Message msg) { //change the value of flag if (_bInSceneChanging) { _bInSceneChanging = false; } MessageFishInfo fishInfo = JsonReader.Deserialize <MessageFishInfo>(msg.rawString); int iCount = fishInfo.fishList.Count; int iCurLevelTime = -1; for (int i = 0; i < iCount; i++) { FishInfo info = fishInfo.fishList[i]; //*2 test IFish fish = SpawnFish(info); if (fish != null) { fishMgr.Add(info.fishId, fish); } iCurLevelTime = info.createTime; } if (iCurLevelTime != -1) { this.PassTime = iCurLevelTime; } }
public object Create(params object[] value) { IFish fish = null; string fishType = value[1].ToString(); string fishName = value[0].ToString(); string fishSpecies = value[2].ToString(); decimal fishPrice = Convert.ToDecimal(value[3]); if (fishType == "FreshwaterFish" || fishType == "SaltwaterFish") { if (fishType == "FreshwaterFish") { fish = new FreshwaterFish(fishName, fishSpecies, fishPrice); } if (fishType == "SaltwaterFish") { fish = new SaltwaterFish(fishName, fishSpecies, fishPrice); } return(fish); } throw new InvalidOperationException(ExceptionMessages.InvalidFishType); }
public string AddFish(string aquariumName, string fishType, string fishName, string fishSpecies, decimal price) { IFish fish = null; if (fishType == "FreshwaterFish") { fish = new FreshwaterFish(fishName, fishSpecies, price); } else if (fishType == "SaltwaterFish") { fish = new SaltwaterFish(fishName, fishSpecies, price); } else { throw new InvalidOperationException (ExceptionMessages.InvalidFishType); } IAquarium aquarium = GetAquariumByName(aquariumName); if (((fish is FreshwaterFish) && (aquarium is FreshwaterAquarium)) || ((fish is SaltwaterFish) && (aquarium is SaltwaterAquarium))) { aquarium.AddFish(fish); return(string.Format(OutputMessages .EntityAddedToAquarium, fishType, aquariumName)); } return(OutputMessages.UnsuitableWater); }
public Tuna(IFish fish, IFisherman fisherman, IBoat boat) { }