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

◆ SetupGamepadPoints()

void Terraria.GameContent.UI.States.UICharacterSelect.SetupGamepadPoints ( SpriteBatch spriteBatch)
inlineprivate

Definition at line 229 of file UICharacterSelect.cs.

230 {
231 UILinkPointNavigator.Shortcuts.BackButtonCommand = 1;
232 int num = 3000;
233 UILinkPointNavigator.SetPosition(num, _backPanel.GetInnerDimensions().ToRectangle().Center.ToVector2());
234 UILinkPointNavigator.SetPosition(num + 1, _newPanel.GetInnerDimensions().ToRectangle().Center.ToVector2());
235 int num2 = num;
237 uILinkPoint.Unlink();
238 uILinkPoint.Right = num2 + 1;
239 num2 = num + 1;
241 uILinkPoint.Unlink();
242 uILinkPoint.Left = num2 - 1;
243 float num3 = 1f / Main.UIScale;
246 Vector2 maximum = clippingRectangle.BottomRight() * num3;
248 for (int i = 0; i < snapPoints.Count; i++)
249 {
250 if (!snapPoints[i].Position.Between(minimum, maximum))
251 {
253 i--;
254 }
255 }
256 int num4 = 5;
258 foreach (SnapPoint item in snapPoints.Where((SnapPoint a) => a.Name == "Play"))
259 {
260 array[item.Id, 0] = item;
261 }
262 foreach (SnapPoint item2 in snapPoints.Where((SnapPoint a) => a.Name == "Favorite"))
263 {
264 array[item2.Id, 1] = item2;
265 }
266 foreach (SnapPoint item3 in snapPoints.Where((SnapPoint a) => a.Name == "Cloud"))
267 {
268 array[item3.Id, 2] = item3;
269 }
270 foreach (SnapPoint item4 in snapPoints.Where((SnapPoint a) => a.Name == "Rename"))
271 {
272 array[item4.Id, 3] = item4;
273 }
274 foreach (SnapPoint item5 in snapPoints.Where((SnapPoint a) => a.Name == "Delete"))
275 {
276 array[item5.Id, 4] = item5;
277 }
278 num2 = num + 2;
279 int[] array2 = new int[_playerList.Count];
280 for (int j = 0; j < array2.Length; j++)
281 {
282 array2[j] = -1;
283 }
284 for (int k = 0; k < num4; k++)
285 {
286 int num5 = -1;
287 for (int l = 0; l < array.GetLength(0); l++)
288 {
289 if (array[l, k] != null)
290 {
292 uILinkPoint.Unlink();
294 if (num5 != -1)
295 {
296 uILinkPoint.Up = num5;
298 }
299 if (array2[l] != -1)
300 {
301 uILinkPoint.Left = array2[l];
303 }
304 uILinkPoint.Down = num;
305 if (k == 0)
306 {
308 }
309 num5 = num2;
310 array2[l] = num2;
311 UILinkPointNavigator.Shortcuts.FANCYUI_HIGHEST_INDEX = num2;
312 num2++;
313 }
314 }
315 }
317 {
319 }
320 }
bool ICollection< KeyValuePair< TKey, TValue > >. Remove(KeyValuePair< TKey, TValue > keyValuePair)
static Dictionary< int, UILinkPoint > Points
static void SetPosition(int ID, Vector2 Position)
virtual List< SnapPoint > GetSnapPoints()
Definition UIElement.cs:267
Rectangle GetClippingRectangle(SpriteBatch spriteBatch)
Definition UIElement.cs:246

References Terraria.GameContent.UI.States.UICharacterSelect._backPanel, Terraria.GameContent.UI.States.UICharacterSelect._containerPanel, Terraria.GameContent.UI.States.UICharacterSelect._newPanel, Terraria.GameContent.UI.States.UICharacterSelect._playerList, System.array, Terraria.UI.Gamepad.UILinkPointNavigator.ChangePoint(), System.Collections.Generic.Dictionary< TKey, TValue >.Count, Terraria.GameContent.UI.Elements.UIList.Count, Terraria.UI.Gamepad.UILinkPointNavigator.CurrentPoint, Terraria.UI.UIElement.GetClippingRectangle(), Terraria.UI.UIElement.GetSnapPoints(), System.item, Terraria.UI.Gamepad.UILinkPointNavigator.Points, System.Collections.Generic.Dictionary< TKey, TValue >.Remove(), Terraria.UI.Gamepad.UILinkPointNavigator.SetPosition(), Terraria.Main.UIScale, and Terraria.GameInput.PlayerInput.UsingGamepadUI.

Referenced by Terraria.GameContent.UI.States.UICharacterSelect.Draw().