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;
 }
Exemple #5
0
    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);
        }
    }
Exemple #6
0
    private static ISport GetSport(SportRequirements requirements)
    {
        SportFactory factory = new SportFactory(requirements);

        return(factory.Create());
    }