Beispiel #1
0
            public void Draw(ref CreditsRollInfo info)
            {
                float num1            = 400f;
                float num2            = 400f;
                int   timeInAnimation = info.TimeInAnimation;
                float num3            = Utils.GetLerpValue(this._timeToShowPeak - num1, this._timeToShowPeak, (float)timeInAnimation, true) * Utils.GetLerpValue(this._timeToShowPeak + num2, this._timeToShowPeak, (float)timeInAnimation, true);

                if ((double)num3 <= 0.0)
                {
                    return;
                }
                float   num4     = this._timeToShowPeak - (float)timeInAnimation;
                Vector2 position = info.AnchorPositionOnScreen + new Vector2(0.0f, num4 * 0.5f);
                float   Hue      = (float)((double)this._timeToShowPeak / 100.0 % 1.0);

                if ((double)Hue < 0.0)
                {
                    ++Hue;
                }
                Color   rgb    = Main.hslToRgb(Hue, 1f, 0.5f);
                string  text   = this._text.Value;
                Vector2 origin = FontAssets.DeathText.Value.MeasureString(text) * 0.5f;
                float   num5   = (float)(1.0 - (1.0 - (double)num3) * (1.0 - (double)num3));

                ChatManager.DrawColorCodedStringShadow(info.SpriteBatch, FontAssets.DeathText.Value, text, position, rgb * num5 * num5 * 0.25f, 0.0f, origin, Vector2.One, -1f, 2f);
                ChatManager.DrawColorCodedString(info.SpriteBatch, FontAssets.DeathText.Value, text, position, Color.White * num5, 0.0f, origin, Vector2.One, -1f, false);
            }
            public void Draw(CreditsRollInfo info)
            {
                float num             = 400f;
                float num2            = 400f;
                int   timeInAnimation = info.TimeInAnimation;
                float num3            = Utils.GetLerpValue(_timeToShowPeak - num, _timeToShowPeak, timeInAnimation, clamped: true) * Utils.GetLerpValue(_timeToShowPeak + num2, _timeToShowPeak, timeInAnimation, clamped: true);

                if (!(num3 <= 0f))
                {
                    float   num4     = _timeToShowPeak - (float)timeInAnimation;
                    Vector2 position = info.AnchorPositionOnScreen + new Vector2(0f, num4 * 0.5f);
                    float   num5     = _timeToShowPeak / 100f % 1f;
                    if (num5 < 0f)
                    {
                        num5 += 1f;
                    }
                    Color   value  = Main.hslToRgb(num5, 1f, 0.5f);
                    string  value2 = _text.Value;
                    Vector2 origin = FontAssets.DeathText.Value.MeasureString(value2);
                    origin *= 0.5f;
                    float scale = 1f - (1f - num3) * (1f - num3);
                    ChatManager.DrawColorCodedStringShadow(info.SpriteBatch, FontAssets.DeathText.Value, value2, position, value * scale * scale * 0.25f, 0f, origin, Vector2.One);
                    ChatManager.DrawColorCodedString(info.SpriteBatch, FontAssets.DeathText.Value, value2, position, Color.White * scale, 0f, origin, Vector2.One);
                }
            }
Beispiel #3
0
            public void Draw(ref CreditsRollInfo info)
            {
                int num = info.TimeInAnimation - this._targetTime;

                if (num < 0 || (double)num >= (double)this.DedicatedTimeNeeded)
                {
                    return;
                }
                Vector2       position  = (info.AnchorPositionOnScreen + this._offset).Floor();
                bool          flag      = num < 6 || (double)num >= (double)this.DedicatedTimeNeeded - 6.0;
                Texture2D     texture2D = TextureAssets.Extra[48].Value;
                Rectangle     rectangle = texture2D.Frame(8, 38, flag ? 0 : 1, 0, 0, 0);
                Vector2       origin    = new Vector2((float)(rectangle.Width / 2), (float)rectangle.Height);
                SpriteEffects effect    = this._effect;

                info.SpriteBatch.Draw(texture2D, position, new Rectangle?(rectangle), Color.White, 0.0f, origin, 1f, effect, 0.0f);
                if (flag)
                {
                    return;
                }
                switch (this._emoteId)
                {
                case 87:
                case 89:
                    if (effect.HasFlag((Enum)SpriteEffects.FlipHorizontally))
                    {
                        effect     &= ~SpriteEffects.FlipHorizontally;
                        position.X += 4f;
                        break;
                    }
                    break;
                }
                info.SpriteBatch.Draw(texture2D, position, new Rectangle?(this.GetFrame(num % 20)), Color.White, 0.0f, origin, 1f, effect, 0.0f);
            }
            public void Draw(CreditsRollInfo info)
            {
                int num = info.TimeInAnimation - _targetTime;

                if (num < 0 || (float)num >= DedicatedTimeNeeded)
                {
                    return;
                }
                Vector2 vector = info.AnchorPositionOnScreen + _offset;

                vector = vector;
                bool          flag          = num < 6 || (float)num >= DedicatedTimeNeeded - 6f;
                Texture2D     value         = TextureAssets.Extra[48].Value;
                Rectangle     value2        = value.Frame(8, 38, (!flag) ? 1 : 0);
                Vector2       origin        = new Vector2(value2.Width / 2, value2.Height);
                SpriteEffects spriteEffects = _effect;

                info.SpriteBatch.Draw(value, vector, value2, Color.White, 0f, origin, 1f, spriteEffects, 0f);
                if (!flag)
                {
                    int emoteId = _emoteId;
                    if ((emoteId == 87 || emoteId == 89) && spriteEffects.HasFlag(SpriteEffects.FlipHorizontally))
                    {
                        spriteEffects &= ~SpriteEffects.FlipHorizontally;
                        vector.X      += 4f;
                    }
                    info.SpriteBatch.Draw(value, vector, GetFrame(num % 20), Color.White, 0f, origin, 1f, spriteEffects, 0f);
                }
            }
 public override void Draw(CreditsRollInfo info)
 {
     if (!((float)info.TimeInAnimation > (float)_targetTime + base.DedicatedTimeNeeded))
     {
         ResetSpriteAnimation(info);
         float localTimeForObject = info.TimeInAnimation - _targetTime;
         ProcessActions(_sprite, localTimeForObject);
         DrawData currentDrawData = _sprite.CurrentDrawData;
         currentDrawData.position += info.AnchorPositionOnScreen;
         currentDrawData.color    *= _sprite.CurrentOpacity;
         currentDrawData.Draw(info.SpriteBatch);
     }
 }
Beispiel #6
0
            public override void Draw(ref CreditsRollInfo info)
            {
                if ((double)info.TimeInAnimation > (double)this._targetTime + (double)this.DedicatedTimeNeeded)
                {
                    return;
                }
                this.ResetSpriteAnimation(ref info);
                this.ProcessActions(this._sprite, (float)(info.TimeInAnimation - this._targetTime));
                DrawData currentDrawData = this._sprite.CurrentDrawData;

                currentDrawData.position += info.AnchorPositionOnScreen;
                currentDrawData.color    *= this._sprite.CurrentOpacity;
                currentDrawData.Draw(info.SpriteBatch);
            }
 public override void Draw(CreditsRollInfo info)
 {
     if (!((float)info.TimeInAnimation > (float)_targetTime + base.DedicatedTimeNeeded))
     {
         ResetNPCAnimation(info);
         float localTimeForObject = info.TimeInAnimation - _targetTime;
         ProcessActions(_npc, localTimeForObject);
         if (_npc.alpha < 255)
         {
             _npc.FindFrame();
             Main.instance.DrawNPCDirect(info.SpriteBatch, _npc, _npc.behindTiles, Vector2.Zero);
         }
     }
 }
Beispiel #8
0
 public override void Draw(ref CreditsRollInfo info)
 {
     if ((double)info.TimeInAnimation > (double)this._targetTime + (double)this.DedicatedTimeNeeded)
     {
         return;
     }
     this.ResetNPCAnimation(ref info);
     this.ProcessActions(this._npc, (float)(info.TimeInAnimation - this._targetTime));
     if (this._npc.alpha >= (int)byte.MaxValue)
     {
         return;
     }
     this._npc.FindFrame();
     Main.instance.DrawNPCDirect(info.SpriteBatch, this._npc, this._npc.behindTiles, Vector2.Zero);
 }
Beispiel #9
0
 private void ResetSpriteAnimation(ref CreditsRollInfo info)
 {
     this._sprite.Reset();
 }
Beispiel #10
0
 private void ResetNPCAnimation(ref CreditsRollInfo info)
 {
     this._npc.position = info.AnchorPositionOnScreen + this._anchorOffset - this._npc.Size * this._normalizedOriginForHitbox;
     this._npc.alpha    = 0;
     this._npc.velocity = Vector2.Zero;
 }
Beispiel #11
0
 public abstract void Draw(ref CreditsRollInfo info);
 private void ResetSpriteAnimation(CreditsRollInfo info)
 {
     _sprite.Reset();
 }