public ISport Create(SportRequirements requirements) { if (requirements.isTeam) { if (requirements.inWater) { return(new BeachBall()); } else { return(new KinBall()); } } else { if (requirements.inWater) { return(new WaterBall()); } else { return(new YardPong()); } } }
public ISport Create(SportRequirements requirements) { if (requirements.isTeam) { if (requirements.inWater) { return(new WaterFootBall()); } else { return(new VolleyBall()); } } else { if (requirements.inWater) { return(new WaterBasketBall()); } else { return(new Bowling()); } } }
public ISport Create(SportRequirements requirements) { if (requirements.isTeam) { if (requirements.inWater) { return(new WaterPolo()); } else { return(new SpikeBall()); } } else { if (requirements.inWater) { return(new DivingBall()); } else { return(new Golf()); } } }
public SportFactory(SportRequirements requirements) { if (requirements.ballSize == 0) { _factory = (ISportFactory) new SmallBallSportFactory(); } else if (requirements.ballSize == 1) { _factory = (ISportFactory) new MedBallSportFactory(); } else { _factory = (ISportFactory) new LargeBallSportFactory(); } _requirements = requirements; }
public void SpawnSport() { int temp; temp = teamDrpDwn.GetComponent <Dropdown>().value; if (temp == 0) { isTeam = true; } else { isTeam = false; } ballSize = ballSizeDrpDwn.GetComponent <Dropdown>().value; temp = inWaterDrpDwn.GetComponent <Dropdown>().value; if (temp == 0) { inWater = true; } else { inWater = false; } SportRequirements requirements = new SportRequirements(); requirements.isTeam = isTeam; requirements.ballSize = ballSize; requirements.inWater = inWater; ISport s = GetSport(requirements); sportTxt.text = s.ToString(); if (s.ToString() == "Golf") { spawner.SpawnBall(golf); } else if (s.ToString() == "WaterPolo") { spawner.SpawnBall(waterPolo); } else if (s.ToString() == "WaterFootBall") { spawner.SpawnBall(waterFootBall); } else if (s.ToString() == "BeachBall") { spawner.SpawnBall(beachBall); } else if (s.ToString() == "SpikeBall") { spawner.SpawnBall(spikeBall); } else if (s.ToString() == "VolleyBall") { spawner.SpawnBall(volleyBall); } else if (s.ToString() == "KinBall") { spawner.SpawnBall(kinBall); } else if (s.ToString() == "DivingBall") { spawner.SpawnBall(divingBall); } else if (s.ToString() == "WaterBasketBall") { spawner.SpawnBall(waterBasketBall); } else if (s.ToString() == "WaterBall") { spawner.SpawnBall(waterBall); } else if (s.ToString() == "Bowling") { spawner.SpawnBall(bowlingBall); } else { spawner.SpawnBall(yardPong); } }
private static ISport GetSport(SportRequirements requirements) { SportFactory factory = new SportFactory(requirements); return(factory.Create()); }