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

◆ DrawHairWindow()

void Terraria.Main.DrawHairWindow ( )
inlineprotected

Definition at line 40700 of file Main.cs.

40701 {
40702 if (npcChatText != "" || playerInventory || player[myPlayer].chest != -1 || npcShop != 0 || player[myPlayer].talkNPC == -1 || InGuideCraftMenu)
40703 {
40705 return;
40706 }
40707 Hairstyles.UpdateUnlocks();
40708 int count = Hairstyles.AvailableHairstyles.Count;
40709 int num = screenHeight / 2 + 60;
40710 int num2 = screenWidth / 2 - TextureAssets.HairStyleBack.Width() / 2;
40711 int num3 = num + 42;
40712 int num4 = num2 + 22;
40713 int num5 = num2 + 234;
40714 int num6 = num + 18;
40715 selColor = player[myPlayer].hairColor;
40716 spriteBatch.Draw(TextureAssets.HairStyleBack.Value, new Vector2(num2, num), new Microsoft.Xna.Framework.Rectangle(0, 0, TextureAssets.HairStyleBack.Width(), TextureAssets.HairStyleBack.Height()), new Microsoft.Xna.Framework.Color(200, 200, 200, 200), 0f, default(Vector2), 1f, SpriteEffects.None, 0f);
40718 {
40719 int num7 = PlayerInput.ScrollWheelDelta / 120;
40720 num7 = -num7;
40721 int num8 = Math.Sign(num7);
40722 while (num7 != 0)
40723 {
40724 if (num7 < 0)
40725 {
40726 hairStart -= 5;
40728 }
40729 else
40730 {
40731 hairStart += 5;
40733 }
40734 num7 -= num8;
40735 }
40736 }
40737 if (mouseX > num2 && mouseX < num2 + TextureAssets.HairStyleBack.Width() && mouseY > num && mouseY < num + TextureAssets.HairStyleBack.Height())
40738 {
40739 player[myPlayer].mouseInterface = true;
40740 }
40741 int num9 = num5 - 18;
40742 int num10 = num6 + 74;
40743 if (hairStart > 1)
40744 {
40745 if (mouseX >= num9 && mouseX <= num9 + TextureAssets.CraftUpButton.Width() && mouseY >= num10 && mouseY <= num10 + TextureAssets.CraftUpButton.Height())
40746 {
40747 player[myPlayer].mouseInterface = true;
40749 {
40750 hairStart -= 15;
40752 }
40753 }
40754 spriteBatch.Draw(TextureAssets.ScrollLeftButton.Value, new Vector2(num9, num10), new Microsoft.Xna.Framework.Rectangle(0, 0, TextureAssets.CraftUpButton.Width(), TextureAssets.CraftUpButton.Height()), new Microsoft.Xna.Framework.Color(200, 200, 200, 200), 0f, default(Vector2), 1f, SpriteEffects.None, 0f);
40755 }
40756 if (hairStart + 15 < count)
40757 {
40758 num9 += 296;
40759 if (mouseX >= num9 && mouseX <= num9 + TextureAssets.CraftUpButton.Width() && mouseY >= num10 && mouseY <= num10 + TextureAssets.CraftUpButton.Height())
40760 {
40761 player[myPlayer].mouseInterface = true;
40763 {
40764 hairStart += 15;
40766 }
40767 }
40768 spriteBatch.Draw(TextureAssets.ScrollRightButton.Value, new Vector2(num9, num10), new Microsoft.Xna.Framework.Rectangle(0, 0, TextureAssets.CraftUpButton.Width(), TextureAssets.CraftUpButton.Height()), new Microsoft.Xna.Framework.Color(200, 200, 200, 200), 0f, default(Vector2), 1f, SpriteEffects.None, 0f);
40769 }
40770 if (hairStart + 15 >= count)
40771 {
40772 hairStart = count - 15;
40773 }
40774 if (hairStart < 0)
40775 {
40776 hairStart = 0;
40777 }
40778 int num11 = 0;
40779 if (oldHairStyle != player[myPlayer].hair)
40780 {
40781 num11 += 100000;
40782 }
40783 if (oldHairColor != player[myPlayer].hairColor)
40784 {
40785 num11 += 20000;
40786 }
40787 num11 = (int)((double)num11 * player[myPlayer].currentShoppingSettings.PriceAdjustment);
40788 num11 = (int)Math.Round((float)num11 / 10000f) * 10000;
40789 string text = "";
40790 string text2 = "";
40791 int num12 = 0;
40792 int num13 = 0;
40793 int num14 = 0;
40794 int num15 = 0;
40795 int num16 = num11;
40796 _ = 0;
40797 if (num16 < 0)
40798 {
40799 num16 = 0;
40800 }
40801 num11 = num16;
40802 if (num16 >= 1000000)
40803 {
40804 num12 = num16 / 1000000;
40805 num16 -= num12 * 1000000;
40806 }
40807 if (num16 >= 10000)
40808 {
40809 num13 = num16 / 10000;
40810 num16 -= num13 * 10000;
40811 }
40812 if (num16 >= 100)
40813 {
40814 num14 = num16 / 100;
40815 num16 -= num14 * 100;
40816 }
40817 if (num16 >= 1)
40818 {
40819 num15 = num16;
40820 }
40821 if (num12 > 0)
40822 {
40823 text2 = text2 + num12 + " " + Lang.inter[15].Value + " ";
40824 }
40825 if (num13 > 0)
40826 {
40827 text2 = text2 + num13 + " " + Lang.inter[16].Value + " ";
40828 }
40829 if (num14 > 0)
40830 {
40831 text2 = text2 + num14 + " " + Lang.inter[17].Value + " ";
40832 }
40833 if (num15 > 0)
40834 {
40835 text2 = text2 + num15 + " " + Lang.inter[18].Value + " ";
40836 }
40837 text = Language.GetTextValue("GameUI.BuyWithValue", text2);
40838 if (num11 == 0)
40839 {
40840 text = Language.GetTextValue("GameUI.Buy");
40841 }
40842 int num17 = (mouseTextColor * 2 + 255) / 3;
40843 Microsoft.Xna.Framework.Color color = new Microsoft.Xna.Framework.Color(num17, (int)((double)num17 / 1.1), num17 / 2, num17);
40844 float num18 = 0.9f;
40845 string text3 = text;
40846 int num19 = num2 + 18;
40847 int num20 = num + 156;
40848 bool flag = false;
40849 if (num11 > 0)
40850 {
40851 ItemSlot.DrawSavings(spriteBatch, num19, num20 - 70, horizontal: true);
40852 }
40853 if (num11 > 0 && mouseX > num19 && (float)mouseX < (float)num19 + FontAssets.MouseText.Value.MeasureString(text3).X && mouseY > num20 && (float)mouseY < (float)num20 + FontAssets.MouseText.Value.MeasureString(text3).Y)
40854 {
40855 flag = true;
40856 num18 = 1.1f;
40857 if (!npcChatFocus1)
40858 {
40860 }
40861 npcChatFocus1 = true;
40862 player[myPlayer].releaseUseItem = false;
40863 }
40864 else
40865 {
40866 if (npcChatFocus1)
40867 {
40869 }
40870 npcChatFocus1 = false;
40871 }
40872 Vector2 vector = FontAssets.MouseText.Value.MeasureString(text3);
40873 vector *= 0.5f;
40875 for (int i = 0; i < 5; i++)
40876 {
40877 int num21 = num19;
40878 int num22 = num20;
40880 if (flag)
40881 {
40883 }
40884 if (i == 0)
40885 {
40886 num21 -= 2;
40887 }
40888 if (i == 1)
40889 {
40890 num21 += 2;
40891 }
40892 if (i == 2)
40893 {
40894 num22 -= 2;
40895 }
40896 if (i == 3)
40897 {
40898 num22 += 2;
40899 }
40900 if (i == 4)
40901 {
40902 color2 = ((num11 != 0) ? color : new Microsoft.Xna.Framework.Color(100, 100, 100));
40903 }
40905 }
40906 num18 = 0.9f;
40907 string textValue = Language.GetTextValue("GameUI.Cancel");
40908 num19 += 130;
40909 flag = false;
40910 if (mouseX > num19 && (float)mouseX < (float)num19 + FontAssets.MouseText.Value.MeasureString(textValue).X && mouseY > num20 && (float)mouseY < (float)num20 + FontAssets.MouseText.Value.MeasureString(textValue).Y)
40911 {
40912 flag = true;
40913 num18 = 1.1f;
40914 if (!npcChatFocus2)
40915 {
40917 }
40918 npcChatFocus2 = true;
40919 player[myPlayer].releaseUseItem = false;
40920 }
40921 else
40922 {
40923 if (npcChatFocus2)
40924 {
40926 }
40927 npcChatFocus2 = false;
40928 }
40929 vector = FontAssets.MouseText.Value.MeasureString(textValue);
40930 vector *= 0.5f;
40932 for (int j = 0; j < 5; j++)
40933 {
40934 int num23 = num19;
40935 int num24 = num20;
40937 if (flag)
40938 {
40940 }
40941 if (j == 0)
40942 {
40943 num23 -= 2;
40944 }
40945 if (j == 1)
40946 {
40947 num23 += 2;
40948 }
40949 if (j == 2)
40950 {
40951 num24 -= 2;
40952 }
40953 if (j == 3)
40954 {
40955 num24 += 2;
40956 }
40957 if (j == 4)
40958 {
40959 color3 = color;
40960 }
40962 }
40964 {
40965 if (npcChatFocus1)
40966 {
40967 if (player[myPlayer].BuyItem(num11))
40968 {
40969 BuyHairWindow();
40970 return;
40971 }
40972 }
40973 else if (npcChatFocus2)
40974 {
40976 return;
40977 }
40978 }
40979 if (!mouseLeft)
40980 {
40981 grabColorSlider = 0;
40982 blockMouse = false;
40983 }
40984 int num25 = 167;
40986 float num26 = vector2.X;
40987 float num27 = vector2.Y;
40988 float z = vector2.Z;
40989 float num28 = (float)(int)selColor.A / 255f;
40990 if (hBar == -1f || sBar == -1f || lBar == -1f || aBar == -1f)
40991 {
40992 hBar = num26;
40993 sBar = num27;
40994 lBar = z;
40995 aBar = (float)(int)selColor.A / 255f;
40996 }
40997 else
40998 {
40999 num26 = hBar;
41000 num27 = sBar;
41001 z = lBar;
41002 aBar = num28;
41003 }
41004 UILinkPointNavigator.SetPosition(2600, new Vector2(num4, num3) + TextureAssets.Hue.Value.Size() / 2f);
41006 if ((mouseX > num4 - 4 && mouseX < num4 + TextureAssets.Hue.Width() + 4 && mouseY > num3 - 4 && mouseY < num3 + TextureAssets.Hue.Height() + 4) || grabColorSlider == 1)
41007 {
41009 }
41010 spriteBatch.Draw(TextureAssets.ColorSlider.Value, new Vector2((float)num4 + (float)(TextureAssets.Hue.Width() - 2) * hBar - (float)(TextureAssets.ColorSlider.Width() / 2), num3 - TextureAssets.ColorSlider.Height() / 2 + TextureAssets.Hue.Height() / 2), Microsoft.Xna.Framework.Color.White);
41011 if (((mouseX > num4 - 4 && mouseX < num4 + TextureAssets.Hue.Width() + 4 && mouseY > num3 - 4 && mouseY < num3 + TextureAssets.Hue.Height() + 4) || grabColorSlider == 1) && mouseLeft && !blockMouse)
41012 {
41013 grabColorSlider = 1;
41014 num26 = mouseX - num4;
41015 num26 /= (float)TextureAssets.Hue.Width();
41016 if (num26 < 0f)
41017 {
41018 num26 = 0f;
41019 }
41020 if (num26 > 1f)
41021 {
41022 num26 = 1f;
41023 }
41024 hBar = num26;
41025 }
41026 num3 += 26;
41027 UILinkPointNavigator.SetPosition(2601, new Vector2(num4, num3) + TextureAssets.ColorBar.Value.Size() / 2f);
41029 for (int k = 0; k <= num25; k++)
41030 {
41031 float saturation = (float)k / (float)num25;
41033 spriteBatch.Draw(TextureAssets.ColorBlip.Value, new Vector2(num4 + k + 5, num3 + 4), color4);
41034 }
41035 if ((mouseX > num4 - 4 && mouseX < num4 + TextureAssets.Hue.Width() + 4 && mouseY > num3 - 4 && mouseY < num3 + TextureAssets.Hue.Height() + 4) || grabColorSlider == 2)
41036 {
41038 }
41039 spriteBatch.Draw(TextureAssets.ColorSlider.Value, new Vector2((float)num4 + (float)(TextureAssets.Hue.Width() - 2) * sBar - (float)(TextureAssets.ColorSlider.Width() / 2), num3 - TextureAssets.ColorSlider.Height() / 2 + TextureAssets.Hue.Height() / 2), Microsoft.Xna.Framework.Color.White);
41040 if (((mouseX > num4 - 4 && mouseX < num4 + TextureAssets.Hue.Width() + 4 && mouseY > num3 - 4 && mouseY < num3 + TextureAssets.Hue.Height() + 4) || grabColorSlider == 2) && mouseLeft && !blockMouse)
41041 {
41042 grabColorSlider = 2;
41043 num27 = mouseX - num4;
41044 num27 /= (float)TextureAssets.Hue.Width();
41045 if (num27 < 0f)
41046 {
41047 num27 = 0f;
41048 }
41049 if (num27 > 1f)
41050 {
41051 num27 = 1f;
41052 }
41053 sBar = num27;
41054 }
41055 num3 += 26;
41056 UILinkPointNavigator.SetPosition(2602, new Vector2(num4, num3) + TextureAssets.ColorBar.Value.Size() / 2f);
41058 float num29 = 0.15f;
41059 for (int l = 0; l <= num25; l++)
41060 {
41061 float luminosity = (float)l / (float)num25;
41063 spriteBatch.Draw(TextureAssets.ColorBlip.Value, new Vector2(num4 + l + 5, num3 + 4), color5);
41064 }
41065 if ((mouseX > num4 - 4 && mouseX < num4 + TextureAssets.Hue.Width() + 4 && mouseY > num3 - 4 && mouseY < num3 + TextureAssets.Hue.Height() + 4) || grabColorSlider == 3)
41066 {
41068 }
41069 spriteBatch.Draw(TextureAssets.ColorSlider.Value, new Vector2((float)num4 + (float)(TextureAssets.Hue.Width() - 2) * ((lBar - num29) / (1f - num29)) - (float)(TextureAssets.ColorSlider.Width() / 2), num3 - TextureAssets.ColorSlider.Height() / 2 + TextureAssets.Hue.Height() / 2), Microsoft.Xna.Framework.Color.White);
41070 if (((mouseX > num4 - 4 && mouseX < num4 + TextureAssets.Hue.Width() + 4 && mouseY > num3 - 4 && mouseY < num3 + TextureAssets.Hue.Height() + 4) || grabColorSlider == 3) && mouseLeft && !blockMouse)
41071 {
41072 grabColorSlider = 3;
41073 z = mouseX - num4;
41074 z /= (float)TextureAssets.Hue.Width();
41075 if (z < 0f)
41076 {
41077 z = 0f;
41078 }
41079 if (z > 1f)
41080 {
41081 z = 1f;
41082 }
41083 z = z * (1f - num29) + num29;
41084 lBar = z;
41085 }
41087 player[myPlayer].hairColor = selColor;
41088 int num30 = num5;
41089 int num31 = num6;
41090 _ = hairStart;
41091 int num32 = 0;
41092 int num33 = 0;
41093 for (int m = 0; m < 15; m++)
41094 {
41095 int num34 = Hairstyles.AvailableHairstyles[hairStart + m];
41096 UILinkPointNavigator.SetPosition(2605 + m, new Vector2(num30, num31) + TextureAssets.InventoryBack.Value.Size() * 0.75f);
41097 if (player[myPlayer].hair == num34)
41098 {
41099 spriteBatch.Draw(TextureAssets.InventoryBack14.Value, new Vector2(num30, num31), new Microsoft.Xna.Framework.Rectangle(0, 0, TextureAssets.InventoryBack.Width(), TextureAssets.InventoryBack.Height()), new Microsoft.Xna.Framework.Color(200, 200, 200, 200), 0f, default(Vector2), 1f, SpriteEffects.None, 0f);
41100 }
41101 else
41102 {
41103 spriteBatch.Draw(TextureAssets.InventoryBack8.Value, new Vector2(num30, num31), new Microsoft.Xna.Framework.Rectangle(0, 0, TextureAssets.InventoryBack.Width(), TextureAssets.InventoryBack.Height()), new Microsoft.Xna.Framework.Color(200, 200, 200, 200), 0f, default(Vector2), 1f, SpriteEffects.None, 0f);
41104 }
41106 {
41107 Asset<Texture2D> val = Assets.Request<Texture2D>("Images/UI/PanelBorder", (AssetRequestMode)1);
41108 Utils.DrawSplicedPanel(spriteBatch, val.Value, num30, num31, TextureAssets.InventoryBack.Width(), TextureAssets.InventoryBack.Height(), val.Width() / 2 - 1, val.Width() / 2 - 1, val.Height() / 2 - 1, val.Height() / 2 - 1, OurFavoriteColor);
41110 {
41111 mouseLeftRelease = false;
41112 player[myPlayer].hair = num34;
41114 }
41115 }
41116 LoadHair(num34);
41117 float x = num30 + TextureAssets.InventoryBack.Width() / 2 - TextureAssets.PlayerHair[num34].Width() / 2;
41118 float y = num31 + 4;
41119 spriteBatch.Draw(TextureAssets.Players[num32, 0].Value, new Vector2(x, y), new Microsoft.Xna.Framework.Rectangle(0, 0, TextureAssets.PlayerHair[num34].Width(), 56), player[myPlayer].skinColor, 0f, default(Vector2), 1f, SpriteEffects.None, 0f);
41120 spriteBatch.Draw(TextureAssets.Players[num32, 1].Value, new Vector2(x, y), new Microsoft.Xna.Framework.Rectangle(0, 0, TextureAssets.PlayerHair[num34].Width(), 56), new Microsoft.Xna.Framework.Color(255, 255, 255, 255), 0f, default(Vector2), 1f, SpriteEffects.None, 0f);
41121 spriteBatch.Draw(TextureAssets.Players[num32, 2].Value, new Vector2(x, y), new Microsoft.Xna.Framework.Rectangle(0, 0, TextureAssets.PlayerHair[num34].Width(), 56), player[myPlayer].eyeColor, 0f, default(Vector2), 1f, SpriteEffects.None, 0f);
41122 Vector2 vector3 = player[myPlayer].GetHairDrawOffset(num34, hatHair: false) * player[myPlayer].Directions;
41123 spriteBatch.Draw(TextureAssets.PlayerHair[num34].Value, new Vector2(x, y) + vector3, new Microsoft.Xna.Framework.Rectangle(0, 0, TextureAssets.PlayerHair[num34].Width(), 56), selColor, 0f, default(Vector2), 1f, SpriteEffects.None, 0f);
41124 num33++;
41125 num30 += 56;
41126 if (num33 >= 5)
41127 {
41128 num33 = 0;
41129 num30 = num5;
41130 num31 += 56;
41131 }
41132 }
41133 }
static void DrawString(this SpriteBatch spriteBatch, DynamicSpriteFont spriteFont, string text, Vector2 position, Color color)
static decimal Round(decimal d)
Definition Math.cs:1096
static int Sign(decimal value)
Definition Math.cs:1202
static void PlaySound(int type, Vector2 position, int style=1)
static Asset< DynamicSpriteFont > MouseText
Definition FontAssets.cs:10
static Asset< Texture2D > ColorHighlight
static Asset< Texture2D >[] PlayerHair
static Asset< Texture2D > InventoryBack8
static Asset< Texture2D > InventoryBack
static Asset< Texture2D > Hue
static Asset< Texture2D > ScrollRightButton
static Asset< Texture2D > HairStyleBack
static Asset< Texture2D > ColorSlider
static Asset< Texture2D > InventoryBack14
static Asset< Texture2D > CraftUpButton
static Asset< Texture2D >[,] Players
static Asset< Texture2D > ColorBlip
static Asset< Texture2D > ScrollLeftButton
static Asset< Texture2D > ColorBar
static string GetTextValue(string key)
Definition Language.cs:15
int grabColorSlider
Definition Main.cs:2519
static float lBar
Definition Main.cs:2515
static float sBar
Definition Main.cs:2513
static bool npcChatFocus1
Definition Main.cs:1827
static bool npcChatFocus2
Definition Main.cs:1829
static string npcChatText
Definition Main.cs:1825
static Chest[] chest
Definition Main.cs:1699
static SpriteBatch spriteBatch
Definition Main.cs:974
static int myPlayer
Definition Main.cs:1801
static Microsoft.Xna.Framework.Color selColor
Definition Main.cs:2497
static bool mouseLeftRelease
Definition Main.cs:1755
static void CancelHairWindow()
Definition Main.cs:40662
static bool blockMouse
Definition Main.cs:2521
static int screenHeight
Definition Main.cs:1721
static Vector2 MouseScreen
Definition Main.cs:2773
static byte mouseTextColor
Definition Main.cs:1751
static Microsoft.Xna.Framework.Color OurFavoriteColor
Definition Main.cs:902
static int hairStart
Definition Main.cs:2459
static float hBar
Definition Main.cs:2511
static Microsoft.Xna.Framework.Color oldHairColor
Definition Main.cs:2463
static int npcShop
Definition Main.cs:2833
static bool InGuideCraftMenu
Definition Main.cs:1906
static Vector3 rgbToHsl(Microsoft.Xna.Framework.Color newColor)
Definition Main.cs:44972
void LoadHair(int i)
Definition Main.cs:56101
static bool playerInventory
Definition Main.cs:1759
static int screenWidth
Definition Main.cs:1719
static Microsoft.Xna.Framework.Color hslToRgb(Vector3 hslVector)
Definition Main.cs:44913
static int oldHairStyle
Definition Main.cs:2461
static int mouseY
Definition Main.cs:606
static IAssetRepository Assets
Definition Main.cs:209
static HairstyleUnlocksHelper Hairstyles
Definition Main.cs:1669
static Player[] player
Definition Main.cs:1803
static void BuyHairWindow()
Definition Main.cs:40677
static float aBar
Definition Main.cs:2517
static int mouseX
Definition Main.cs:604
static bool mouseLeft
Definition Main.cs:614
static void SetPosition(int ID, Vector2 Position)
static void DrawSavings(SpriteBatch sb, float shopx, float shopy, bool horizontal=false)
Definition ItemSlot.cs:2859
bool Contains(int x, int y)
Definition Rectangle.cs:92

References Terraria.Main.aBar, Terraria.Main.Assets, Microsoft.Xna.Framework.Color.Black, Terraria.Main.blockMouse, Microsoft.Xna.Framework.Color.Brown, Terraria.Main.BuyHairWindow(), Terraria.Main.CancelHairWindow(), Terraria.Main.chest, Terraria.GameContent.TextureAssets.ColorBar, Terraria.GameContent.TextureAssets.ColorBlip, Terraria.GameContent.TextureAssets.ColorHighlight, Terraria.GameContent.TextureAssets.ColorSlider, Microsoft.Xna.Framework.Rectangle.Contains(), System.Linq.count, Terraria.GameContent.TextureAssets.CraftUpButton, Terraria.UI.ItemSlot.DrawSavings(), Terraria.Utils.DrawSplicedPanel(), ReLogic.Graphics.DynamicSpriteFontExtensionMethods.DrawString(), Terraria.Localization.Language.GetTextValue(), Terraria.Main.grabColorSlider, Terraria.Main.hairStart, Terraria.GameContent.TextureAssets.HairStyleBack, Terraria.Main.Hairstyles, Terraria.Main.hBar, Terraria.Main.hslToRgb(), Terraria.GameContent.TextureAssets.Hue, System.Text.RegularExpressions.i, Terraria.Main.InGuideCraftMenu, Terraria.Lang.inter, Terraria.GameContent.TextureAssets.InventoryBack, Terraria.GameContent.TextureAssets.InventoryBack14, Terraria.GameContent.TextureAssets.InventoryBack8, Terraria.Main.lBar, Terraria.Main.LoadHair(), Terraria.Main.mouseLeft, Terraria.Main.mouseLeftRelease, Terraria.Main.MouseScreen, Terraria.GameContent.FontAssets.MouseText, Terraria.Main.mouseTextColor, Terraria.Main.mouseX, Terraria.Main.mouseY, Terraria.Main.myPlayer, Terraria.Main.npcChatFocus1, Terraria.Main.npcChatFocus2, Terraria.Main.npcChatText, Terraria.Main.npcShop, Terraria.Main.oldHairColor, Terraria.Main.oldHairStyle, Terraria.Main.OurFavoriteColor, Terraria.Main.player, Terraria.GameContent.TextureAssets.PlayerHair, Terraria.Main.playerInventory, Terraria.GameContent.TextureAssets.Players, Terraria.Audio.SoundEngine.PlaySound(), Terraria.Main.rgbToHsl(), System.Math.Round(), Terraria.Main.sBar, Terraria.Main.screenHeight, Terraria.Main.screenWidth, Terraria.GameContent.TextureAssets.ScrollLeftButton, Terraria.GameContent.TextureAssets.ScrollRightButton, Terraria.Main.selColor, Terraria.UI.Gamepad.UILinkPointNavigator.SetPosition(), System.Math.Sign(), Terraria.Main.spriteBatch, System.text, Microsoft.Xna.Framework.Graphics.Vector2, and Microsoft.Xna.Framework.Color.White.

Referenced by Terraria.Main.DrawInterface_21_HairWindow().