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

◆ DrawRadialCircular()

static void Terraria.UI.ItemSlot.DrawRadialCircular ( SpriteBatch sb,
Vector2 position,
Player::SelectionRadial radial,
Item[] items )
inlinestatic

Definition at line 2955 of file ItemSlot.cs.

2956 {
2957 CircularRadialOpacity = MathHelper.Clamp(CircularRadialOpacity + ((PlayerInput.UsingGamepad && PlayerInput.Triggers.Current.RadialHotbar) ? 0.25f : (-0.15f)), 0f, 1f);
2958 if (CircularRadialOpacity == 0f)
2959 {
2960 return;
2961 }
2963 float num = CircularRadialOpacity * 0.9f;
2964 float num2 = CircularRadialOpacity * 1f;
2965 float num3 = (float)(int)Main.mouseTextColor / 255f;
2966 float num4 = 1f - (1f - num3) * (1f - num3);
2967 num4 *= 0.785f;
2968 Color color = Color.White * num4 * num;
2969 value = TextureAssets.HotbarRadial[1].Value;
2970 float num5 = (float)Math.PI * 2f / (float)radial.RadialCount;
2971 float num6 = -(float)Math.PI / 2f;
2972 for (int i = 0; i < radial.RadialCount; i++)
2973 {
2974 int num7 = radial.Bindings[i];
2975 Vector2 vector = new Vector2(150f, 0f).RotatedBy(num6 + num5 * (float)i) * num2;
2976 float num8 = 0.85f;
2977 if (radial.SelectedBinding == i)
2978 {
2979 num8 = 1.7f;
2980 }
2981 sb.Draw(value, position + vector, null, color * num8, 0f, value.Size() / 2f, num2 * num8, SpriteEffects.None, 0f);
2982 if (num7 != -1)
2983 {
2984 float inventoryScale = Main.inventoryScale;
2985 Main.inventoryScale = num2 * num8;
2986 Draw(sb, items, 14, num7, position + vector + new Vector2(-26f * num2 * num8), Color.White);
2987 Main.inventoryScale = inventoryScale;
2988 }
2989 }
2990 }
void Draw(Texture2D texture, Vector2 position, Color color)
static float Clamp(float value, float min, float max)
Definition MathHelper.cs:46
const double PI
Definition Math.cs:16
static Asset< Texture2D >[] HotbarRadial
static TriggersPack Triggers
static float CircularRadialOpacity
Definition ItemSlot.cs:157

References Terraria.UI.ItemSlot.CircularRadialOpacity, Microsoft.Xna.Framework.MathHelper.Clamp(), Microsoft.Xna.Framework.Graphics.SpriteBatch.Draw(), Microsoft.Xna.Framework.Draw, Terraria.GameContent.TextureAssets.HotbarRadial, Terraria.Main.inventoryScale, System.Math.PI, Terraria.GameInput.PlayerInput.Triggers, Terraria.GameInput.PlayerInput.UsingGamepad, System.value, Microsoft.Xna.Framework.Graphics.Vector2, and Microsoft.Xna.Framework.Color.White.

Referenced by Terraria.Main.DrawInterface_32_GamepadRadialHotbars().