Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ DrawPlayer_TransformDrawData()

static void Terraria.DataStructures.PlayerDrawLayers.DrawPlayer_TransformDrawData ( ref PlayerDrawSet drawinfo)
inlinestatic

Definition at line 3414 of file PlayerDrawLayers.cs.

3415 {
3416 _ = drawinfo.rotation;
3417 _ = 0f;
3418 Vector2 vector = drawinfo.Position - Main.screenPosition + drawinfo.rotationOrigin;
3419 Vector2 vector2 = drawinfo.drawPlayer.position + drawinfo.rotationOrigin;
3420 Matrix matrix = Matrix.CreateRotationZ(drawinfo.rotation);
3421 for (int i = 0; i < drawinfo.DustCache.Count; i++)
3422 {
3423 Vector2 position = Main.dust[drawinfo.DustCache[i]].position - vector2;
3424 position = Vector2.Transform(position, matrix);
3425 Main.dust[drawinfo.DustCache[i]].position = position + vector2;
3426 }
3427 for (int j = 0; j < drawinfo.GoreCache.Count; j++)
3428 {
3429 Vector2 position2 = Main.gore[drawinfo.GoreCache[j]].position - vector2;
3431 Main.gore[drawinfo.GoreCache[j]].position = position2 + vector2;
3432 }
3433 for (int k = 0; k < drawinfo.DrawDataCache.Count; k++)
3434 {
3435 DrawData value = drawinfo.DrawDataCache[k];
3436 if (!value.ignorePlayerRotation)
3437 {
3438 Vector2 position3 = value.position - vector;
3440 value.position = position3 + vector;
3441 value.rotation += drawinfo.rotation;
3442 drawinfo.DrawDataCache[k] = value;
3443 }
3444 }
3445 }
static Matrix CreateRotationZ(float radians)
Definition Matrix.cs:746
static Vector2 Transform(Vector2 position, Matrix matrix)
Definition Vector2.cs:317

References System.Collections.Generic.Dictionary< TKey, TValue >.Count, Microsoft.Xna.Framework.Matrix.CreateRotationZ(), Terraria.Main.dust, Terraria.Main.gore, Microsoft.Xna.Framework.Vector2.Transform(), and System.value.

Referenced by Terraria.Graphics.Renderers.LegacyPlayerRenderer.DrawPlayer().