private void UpdateSummary() { this.Singular = this.SingEntry.Text; this.Plural = this.PlurEntry.Text; this.HomeSystemName = this.HomeSystemEntry.Text; this.RaceSummary = new RacialTrait(); foreach (TraitEntry t in this.AllTraits) { if (!t.Selected) { continue; } //Added by McShooterz: code cleaning this.RaceSummary.ConsumptionModifier += t.trait.ConsumptionModifier; this.RaceSummary.DiplomacyMod += t.trait.DiplomacyMod; this.RaceSummary.EnergyDamageMod += t.trait.EnergyDamageMod; this.RaceSummary.MaintMod += t.trait.MaintMod; this.RaceSummary.ReproductionMod += t.trait.ReproductionMod;// t.trait.ReproductionMod; //this.RaceSummary.ReproductionMod += t.trait.PopGrowthMin; //this.RaceSummary.ReproductionMod -= t.trait.PopGrowthMax; this.RaceSummary.PopGrowthMax += t.trait.PopGrowthMax; this.RaceSummary.PopGrowthMin += t.trait.PopGrowthMin; this.RaceSummary.ResearchMod += t.trait.ResearchMod; this.RaceSummary.ShipCostMod += t.trait.ShipCostMod; this.RaceSummary.TaxMod += t.trait.TaxMod; this.RaceSummary.ProductionMod += t.trait.ProductionMod; this.RaceSummary.ModHpModifier += t.trait.ModHpModifier; this.RaceSummary.Mercantile += t.trait.Mercantile; this.RaceSummary.GroundCombatModifier += t.trait.GroundCombatModifier; this.RaceSummary.Cybernetic += t.trait.Cybernetic; this.RaceSummary.Blind += t.trait.Blind; this.RaceSummary.DodgeMod += t.trait.DodgeMod; this.RaceSummary.HomeworldFertMod += t.trait.HomeworldFertMod; this.RaceSummary.HomeworldRichMod += t.trait.HomeworldRichMod; this.RaceSummary.HomeworldSizeMod += t.trait.HomeworldSizeMod; this.RaceSummary.Militaristic += t.trait.Militaristic; this.RaceSummary.BonusExplored += t.trait.BonusExplored; this.RaceSummary.Prototype += t.trait.Prototype; this.RaceSummary.Spiritual += t.trait.Spiritual; this.RaceSummary.SpyMultiplier += t.trait.SpyMultiplier; this.RaceSummary.RepairMod += t.trait.RepairMod; if(t.trait.Pack) this.RaceSummary.Pack = t.trait.Pack; } }
public override void Update(GameTime gameTime, bool otherScreenHasFocus, bool coveredByOtherScreen) { float elapsedTime = (float)gameTime.ElapsedGameTime.TotalSeconds; Vector2 mousePos = new Vector2((float)this.currentMouse.X, (float)this.currentMouse.Y); bool overSomething = false; if (this.DrawingColorSelector) { overSomething = false; } else { foreach (TraitEntry t in this.AllTraits) { if (!HelperFunctions.CheckIntersection(t.rect, mousePos)) { continue; } overSomething = true; RaceDesignScreen raceDesignScreen = this; raceDesignScreen.tTimer = raceDesignScreen.tTimer - elapsedTime; if (this.tTimer > 0f) { continue; } this.tipped = t.trait; } if (!overSomething) { this.tTimer = 0.35f; this.tipped = null; } } this.UpdateSummary(); base.Update(gameTime, otherScreenHasFocus, coveredByOtherScreen); }