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

◆ DrawLoadoutButtons()

static void Terraria.Main.DrawLoadoutButtons ( int inventoryTop,
bool demonHeartSlotAvailable,
bool masterModeSlotAvailable )
inlinestaticprivate

Definition at line 38988 of file Main.cs.

38989 {
38990 int num = 10;
38991 Player player = Main.player[myPlayer];
38993 {
38994 num--;
38995 }
38997 {
38998 num--;
38999 }
39000 int x = screenWidth - 58 + 14;
39001 int num2 = (int)((float)(inventoryTop - 2) + 0f * inventoryScale);
39002 int num3 = (int)((float)(inventoryTop - 2) + (float)(num * 56) * inventoryScale);
39003 Texture2D value = TextureAssets.Extra[259].Value;
39005 ItemSlot.GetLoadoutColor(player.CurrentLoadoutIndex);
39006 int num4 = player.Loadouts.Length;
39007 int num5 = 32;
39008 int num6 = 4;
39009 int num7 = -1;
39010 _ = FontAssets.ItemStack.Value;
39011 for (int i = 0; i < num4; i++)
39012 {
39015 _ = player.Loadouts[i];
39016 int frameX = ((i == player.CurrentLoadoutIndex) ? 1 : 0);
39017 bool flag = false;
39018 if (rectangle2.Contains(MouseScreen.ToPoint()))
39019 {
39020 flag = true;
39022 player.mouseInterface = true;
39023 if (!mouseText)
39024 {
39025 instance.MouseText(Language.GetTextValue("UI.Loadout" + (i + 1)), 0, 0);
39026 mouseText = true;
39027 }
39029 {
39030 player.TrySwitchingLoadout(i);
39031 }
39032 }
39033 Microsoft.Xna.Framework.Rectangle rectangle3 = value.Frame(3, 3, frameX, i);
39034 spriteBatch.Draw(value, rectangle2.Center.ToVector2(), rectangle3, Microsoft.Xna.Framework.Color.White, 0f, rectangle3.Size() / 2f, 1f, SpriteEffects.None, 0f);
39035 if (flag)
39036 {
39037 rectangle3 = value.Frame(3, 3, 2, i);
39038 spriteBatch.Draw(value, rectangle2.Center.ToVector2(), rectangle3, OurFavoriteColor, 0f, rectangle3.Size() / 2f, 1f, SpriteEffects.None, 0f);
39039 }
39040 UILinkPointNavigator.SetPosition(312 + i, rectangle2.Center.ToVector2());
39041 }
39043 {
39046 }
39047 }
bool ICollection< KeyValuePair< TKey, TValue > >. Contains(KeyValuePair< TKey, TValue > keyValuePair)
static void PlaySound(int type, Vector2 position, int style=1)
static Asset< DynamicSpriteFont > ItemStack
Definition FontAssets.cs:8
static Asset< Texture2D >[] Extra
static string GetTextValue(string key)
Definition Language.cs:15
static SpriteBatch spriteBatch
Definition Main.cs:974
static int myPlayer
Definition Main.cs:1801
static bool mouseLeftRelease
Definition Main.cs:1755
static Main instance
Definition Main.cs:283
static Vector2 MouseScreen
Definition Main.cs:2773
static bool mouseText
Definition Main.cs:2453
static Microsoft.Xna.Framework.Color OurFavoriteColor
Definition Main.cs:902
static float inventoryScale
Definition Main.cs:1779
static int _lastHoveredLoadoutIndex
Definition Main.cs:2433
static int screenWidth
Definition Main.cs:1719
static Player[] player
Definition Main.cs:1803
static bool mouseLeft
Definition Main.cs:614
static void SetPosition(int ID, Vector2 Position)
static Color GetLoadoutColor(int loadoutIndex)
Definition ItemSlot.cs:2268
static Color Lerp(Color value1, Color value2, float amount)
Definition Color.cs:491

References Terraria.Main._lastHoveredLoadoutIndex, System.Collections.Generic.Dictionary< TKey, TValue >.Contains(), Terraria.GameContent.TextureAssets.Extra, Terraria.UI.ItemSlot.GetLoadoutColor(), Terraria.Localization.Language.GetTextValue(), System.Text.RegularExpressions.i, Terraria.Main.instance, Terraria.Main.inventoryScale, Terraria.GameContent.FontAssets.ItemStack, Microsoft.Xna.Framework.Color.Lerp(), Terraria.Main.mouseLeft, Terraria.Main.mouseLeftRelease, Terraria.Main.MouseScreen, Terraria.Main.mouseText, Terraria.Main.myPlayer, Terraria.Main.OurFavoriteColor, Terraria.Main.player, Terraria.Audio.SoundEngine.PlaySound(), Terraria.Main.screenWidth, Terraria.UI.Gamepad.UILinkPointNavigator.SetPosition(), Terraria.Main.spriteBatch, System.value, and Microsoft.Xna.Framework.Color.White.

Referenced by Terraria.Main.DrawInventory().