public NoticeNumbers(Vector2 v2Origin, int iNumber, bool bUseSign, NoticeNumbers.NumberTileset enTileset) { if (enTileset != NoticeNumbers.NumberTileset.CritNumbers) { NumberRenderComponent asd = new NumberRenderComponent(); this.xTransform = new TransformComponent(v2Origin); asd.xTransform = this.xTransform; bool bIsMinus = false; if (iNumber < 0) { bIsMinus = true; bUseSign = true; iNumber *= -1; } string sAsset = "RedNumbers"; if (enTileset == NoticeNumbers.NumberTileset.GrayNumbers) { sAsset = "GrayNumbers"; } else if (enTileset == NoticeNumbers.NumberTileset.GreenNumbers) { sAsset = "GreenNumbers"; } else if (enTileset == NoticeNumbers.NumberTileset.TealNumbers) { sAsset = "TealNumbers"; } string sNumAsString = iNumber.ToString(); asd.txTileset = Program.GetTheGame().Content.Load<Texture2D>("Effects/Numbers/" + sAsset); asd.v2Offset = Utility.Vector2_ToInts(new Vector2((float)(16 * sNumAsString.Length), 24f) / 2f); asd.fScale = 1f; if (bUseSign) { NumberRenderComponent expr_CC_cp_0 = asd; expr_CC_cp_0.v2Offset.X = expr_CC_cp_0.v2Offset.X - 10f; if (bIsMinus) { asd.lrecCellsToRender.Add(new Rectangle(176, 0, 16, 24)); } else { asd.lrecCellsToRender.Add(new Rectangle(160, 0, 16, 24)); } } for (int i = 0; i < sNumAsString.Length; i++) { switch (sNumAsString[i]) { case '0': asd.lrecCellsToRender.Add(new Rectangle(0, 0, 16, 24)); break; case '1': asd.lrecCellsToRender.Add(new Rectangle(16, 0, 16, 24)); break; case '2': asd.lrecCellsToRender.Add(new Rectangle(32, 0, 16, 24)); break; case '3': asd.lrecCellsToRender.Add(new Rectangle(48, 0, 16, 24)); break; case '4': asd.lrecCellsToRender.Add(new Rectangle(64, 0, 16, 24)); break; case '5': asd.lrecCellsToRender.Add(new Rectangle(80, 0, 16, 24)); break; case '6': asd.lrecCellsToRender.Add(new Rectangle(96, 0, 16, 24)); break; case '7': asd.lrecCellsToRender.Add(new Rectangle(112, 0, 16, 24)); break; case '8': asd.lrecCellsToRender.Add(new Rectangle(128, 0, 16, 24)); break; case '9': asd.lrecCellsToRender.Add(new Rectangle(144, 0, 16, 24)); break; } } this.xRenderComponent = asd; } else { CritNumberRenderComponent asd2 = new CritNumberRenderComponent(); this.xTransform = new TransformComponent(v2Origin); asd2.xTransform = this.xTransform; asd2.sNumbersAsString = iNumber.ToString(); this.xRenderComponent = asd2; } Program.GetTheGame().xRenderMaster.RegisterGUIRenderComponent(this.xRenderComponent); }
public DamageNumbers(Vector2 v2Origin, int iNumber, bool bUseSign, NoticeNumbers.NumberTileset enTileset) : base(v2Origin, iNumber, bUseSign, enTileset) { this.fAngle = -0.3f + (float)Program.GetTheGame().randomInVisual.NextDouble() * 0.6f; }