public void RandomizeStats() { pLifespan = (BeeLifeSpan)UnityEngine.Random.Range(0, Extensions.GetMaxEnumValue(BeeLifeSpan.SEATURTLE) + 1); sLifespan = (BeeLifeSpan)UnityEngine.Random.Range(0, Extensions.GetMaxEnumValue(BeeLifeSpan.SEATURTLE) + 1); pEffect = (BeeEffect)UnityEngine.Random.Range(0, Extensions.GetMaxEnumValue(BeeEffect.NONE) + 1); sEffect = (BeeEffect)UnityEngine.Random.Range(0, Extensions.GetMaxEnumValue(BeeEffect.NONE) + 1); pProdSpeed = (BeeProductionSpeed)UnityEngine.Random.Range(0, Extensions.GetMaxEnumValue(BeeProductionSpeed.FAST) + 1); sProdSpeed = (BeeProductionSpeed)UnityEngine.Random.Range(0, Extensions.GetMaxEnumValue(BeeProductionSpeed.FAST) + 1); pFertility = (uint)UnityEngine.Random.Range(1, 3); sFertility = (uint)UnityEngine.Random.Range(1, 3); }
/// <summary> /// Combines the <see cref="BeeEffect"/> of the given <see cref="BeeEffect"/> /// </summary> /// <param name="b1">First <see cref="BeeEffect"/></param> /// <param name="b2">Second <see cref="BeeEffect"/></param> /// <returns>A new <see cref="BeeEffect"/></returns> private BeeEffect CombineEffect(BeeEffect b1, BeeEffect b2) { return((BeeEffect)ReturnChange((int)b1, (int)b2, (int)BeeEffect.POISON)); }
/// <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)); } }