Beispiel #1
0
        /// <summary>
        /// Make a bee with given stats
        /// </summary>
        /// <param name="beeType"><see cref="BeeType"/></param>
        /// <param name="species"><see cref="BeeSpecies"/></param>
        /// <param name="lifespan"><see cref="BeeLifeSpan"/></param>
        /// <param name="fertility">1 or greater</param>
        /// <param name="effect"><see cref="BeeEffect"/></param>
        /// <param name="prodSpeed"><see cref="BeeProductionSpeed"/></param>
        /// <returns>A <see cref="Bee"/> with the given stats</returns>
        public Bee MakeBeeWithStats(BeeType beeType = BeeType.DRONE, BeeSpecies species = BeeSpecies.FOREST, BeeLifeSpan lifespan = BeeLifeSpan.NORMAL, uint fertility = 2, BeeEffect effect = BeeEffect.NONE, BeeProductionSpeed prodSpeed = BeeProductionSpeed.NORMAL)
        {
            NormalBee normBee = new NormalBee()
            {
                pSpecies   = species,
                pLifespan  = lifespan,
                pFertility = fertility,
                pProdSpeed = prodSpeed,
                pEffect    = effect,
                sEffect    = effect,
                sFertility = fertility,
                sLifespan  = lifespan,
                sProdSpeed = prodSpeed,
                sSpecies   = species
            };

            switch (beeType)
            {
            case BeeType.QUEEN:
                return(new Bee(beeType, new QueenBee(normBee, normBee)));

            default:
                return(new Bee(beeType, normBee));
            }
        }
Beispiel #2
0
        /// <summary>
        /// Will Convert this bee into a <see cref="BeeType.QUEEN"/> Bee
        /// </summary>
        /// <param name="princess">The <see cref="BeeType.PRINCESS"/> Stats</param>
        /// <param name="drone">The <see cref="BeeType.DRONE"/></param>
        public static void ConvertToQueen(ref Bee princess, NormalBee drone)
        {
            princess.beeType   = BeeType.QUEEN;
            princess.queenBee  = new QueenBee(princess.normalBee, drone);
            princess.normalBee = null;

            princess.itemName = new CultureInfo("en-US", false).TextInfo.ToTitleCase($"{princess.queenBee.queen.pSpecies} {princess.beeType}".ToLower());
        }
Beispiel #3
0
 /// <summary>
 /// Create a bee from <see cref="NormalBee"/>
 /// </summary>
 /// <param name="beeType"><see cref="BeeType"/> of the bee</param>
 /// <param name="normalBee"><see cref="NormalBee"/> data</param>
 public Bee(BeeType beeType, NormalBee normalBee) : base(new CultureInfo("en-US", false).TextInfo.ToTitleCase($"{normalBee.pSpecies} {beeType}".ToLower()))
 {
     usesGameObject = true;
     if (beeType == BeeType.PRINCESS || beeType == BeeType.QUEEN)
     {
         maxStack = 1;
     }
     this.beeType   = beeType;
     this.normalBee = normalBee;
 }
Beispiel #4
0
 public Bee()
 {
     usesGameObject = true;
     normalBee      = new NormalBee();
 }
Beispiel #5
0
 public QueenBee(NormalBee princess, NormalBee drone)
 {
     this.queen = princess;
     this.drone = drone;
 }
Beispiel #6
0
 /// <summary>
 /// Will convery this bee to a <see cref="BeeType.QUEEN"/> useing this bees stats as the <see cref="BeeType.PRINCESS"/> stats
 /// </summary>
 /// <param name="drone"></param>
 public static void ConvertToQueen(Bee princess, NormalBee drone)
 {
     ConvertToQueen(ref princess, drone);
 }