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

◆ DrawPlayer_12_Skin_Composite()

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

Definition at line 1066 of file PlayerDrawLayers.cs.

1067 {
1068 if (!drawinfo.hidesTopSkin && !drawinfo.drawPlayer.invis)
1069 {
1070 Vector2 vector = new Vector2((int)(drawinfo.Position.X - Main.screenPosition.X - (float)(drawinfo.drawPlayer.bodyFrame.Width / 2) + (float)(drawinfo.drawPlayer.width / 2)), (int)(drawinfo.Position.Y - Main.screenPosition.Y + (float)drawinfo.drawPlayer.height - (float)drawinfo.drawPlayer.bodyFrame.Height + 4f)) + drawinfo.drawPlayer.bodyPosition + new Vector2(drawinfo.drawPlayer.bodyFrame.Width / 2, drawinfo.drawPlayer.bodyFrame.Height / 2);
1071 vector.Y += drawinfo.torsoOffset;
1072 Vector2 vector2 = Main.OffsetsPlayerHeadgear[drawinfo.drawPlayer.bodyFrame.Y / drawinfo.drawPlayer.bodyFrame.Height];
1073 vector2.Y -= 2f;
1074 vector += vector2 * -drawinfo.playerEffect.HasFlag(SpriteEffects.FlipVertically).ToDirectionInt();
1075 float bodyRotation = drawinfo.drawPlayer.bodyRotation;
1078 Vector2 bodyVect = drawinfo.bodyVect;
1079 Vector2 bodyVect2 = drawinfo.bodyVect;
1082 _ = bodyVect + compositeOffset_BackArm;
1086 if (drawinfo.drawFloatingTube)
1087 {
1088 drawinfo.DrawDataCache.Add(new DrawData(TextureAssets.Extra[105].Value, vector, new Rectangle(0, 0, 40, 56), drawinfo.floatingTubeColor, bodyRotation, drawinfo.bodyVect, 1f, drawinfo.playerEffect)
1089 {
1090 shader = drawinfo.cFloatingTube
1091 });
1092 }
1093 drawinfo.DrawDataCache.Add(new DrawData(TextureAssets.Players[drawinfo.skinVar, 3].Value, vector, drawinfo.compTorsoFrame, drawinfo.colorBodySkin, bodyRotation, drawinfo.bodyVect, 1f, drawinfo.playerEffect)
1094 {
1095 shader = drawinfo.skinDyePacked
1096 });
1097 }
1098 if (!drawinfo.hidesBottomSkin && !drawinfo.drawPlayer.invis && !IsBottomOverridden(ref drawinfo))
1099 {
1100 if (drawinfo.isSitting)
1101 {
1102 DrawSittingLegs(ref drawinfo, TextureAssets.Players[drawinfo.skinVar, 10].Value, drawinfo.colorLegs, drawinfo.skinDyePacked);
1103 }
1104 else
1105 {
1106 DrawData drawData = new DrawData(TextureAssets.Players[drawinfo.skinVar, 10].Value, new Vector2((int)(drawinfo.Position.X - Main.screenPosition.X - (float)(drawinfo.drawPlayer.bodyFrame.Width / 2) + (float)(drawinfo.drawPlayer.width / 2)), (int)(drawinfo.Position.Y - Main.screenPosition.Y + (float)drawinfo.drawPlayer.height - (float)drawinfo.drawPlayer.bodyFrame.Height + 4f)) + drawinfo.drawPlayer.bodyPosition + new Vector2(drawinfo.drawPlayer.bodyFrame.Width / 2, drawinfo.drawPlayer.bodyFrame.Height / 2), drawinfo.drawPlayer.legFrame, drawinfo.colorLegs, drawinfo.drawPlayer.legRotation, drawinfo.bodyVect, 1f, drawinfo.playerEffect);
1107 drawData.shader = drawinfo.skinDyePacked;
1108 DrawData item = drawData;
1109 drawinfo.DrawDataCache.Add(item);
1110 }
1111 }
1113 }
void Add(TKey key, TValue value)
static Vector2 GetCompositeOffset_BackArm(ref PlayerDrawSet drawinfo)
static bool IsBottomOverridden(ref PlayerDrawSet drawinfo)
static Vector2 GetCompositeOffset_FrontArm(ref PlayerDrawSet drawinfo)
static void DrawSittingLegs(ref PlayerDrawSet drawinfo, Texture2D textureToDraw, Color matchingColor, int shaderIndex=0, bool glowmask=false)
static void DrawPlayer_12_SkinComposite_BackArmShirt(ref PlayerDrawSet drawinfo)
static Asset< Texture2D >[] Extra
static Asset< Texture2D >[,] Players

References System.Collections.Generic.Dictionary< TKey, TValue >.Add(), Terraria.DataStructures.PlayerDrawLayers.DrawPlayer_12_SkinComposite_BackArmShirt(), Terraria.DataStructures.PlayerDrawLayers.DrawSittingLegs(), Terraria.GameContent.TextureAssets.Extra, Terraria.DataStructures.PlayerDrawLayers.GetCompositeOffset_BackArm(), Terraria.DataStructures.PlayerDrawLayers.GetCompositeOffset_FrontArm(), Terraria.DataStructures.PlayerDrawLayers.IsBottomOverridden(), System.item, Terraria.Main.OffsetsPlayerHeadgear, Terraria.GameContent.TextureAssets.Players, Terraria.Main.screenPosition, and Microsoft.Xna.Framework.Graphics.Vector2.

Referenced by Terraria.DataStructures.PlayerDrawLayers.DrawPlayer_12_Skin().