Files
BepInEx/Projects/BanquetForFools/Source/Assembly-CSharp/AnimateButton.cs
2025-05-21 20:40:04 +02:00

1177 lines
30 KiB
C#

using System;
using System.Collections;
using DarkTonic.MasterAudio;
using TMPro;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.EventSystems;
using UnityEngine.UI;
// Token: 0x02000093 RID: 147
public class AnimateButton : MonoBehaviour, IPointerEnterHandler, IEventSystemHandler, IPointerDownHandler, IPointerUpHandler, IPointerExitHandler
{
// Token: 0x06000E38 RID: 3640 RVA: 0x00110527 File Offset: 0x0010E727
private void OnEnable()
{
this.clickedDown = false;
if (this.controllerText && Links.x)
{
this.CheckController(Links.x.joy);
}
}
// Token: 0x06000E39 RID: 3641 RVA: 0x00110559 File Offset: 0x0010E759
public Button GetButton()
{
if (this.btn)
{
return this.btn;
}
return base.gameObject.GetComponent<Button>();
}
// Token: 0x06000E3A RID: 3642 RVA: 0x0011057C File Offset: 0x0010E77C
public void CheckController(bool joy)
{
if (!this.image)
{
this.image = base.gameObject.GetComponent<Image>();
}
this.controllerText.enabled = joy;
if (!joy)
{
this.image.enabled = true;
}
else
{
this.image.enabled = false;
}
if (this.controllerText.enabled)
{
if (this.type == "Close Rest" || (!Records.x.mainMenuOpen && this.type == "Close SaveLoad") || (this.type == "Close Formation" || (!Records.x.mainMenuOpen && this.type == "Close Options")) || this.type == "Close MapMenu" || this.type == "Close Map" || this.type == "Close CS" || this.type == "Close Journal" || this.type == "Close Tips")
{
this.controllerText.text = "";
}
else if (this.type.Contains("Feed"))
{
base.transform.GetChild(0).gameObject.SetActive(true);
this.controllerText.text = Links.x.gameplay.gameFeedText;
}
else if (this.type.Contains("Tutorial"))
{
this.controllerText.text = Links.x.gameplay.continueText;
}
else if (this.type.Contains("Spellcrafting"))
{
this.controllerText.text = Links.x.gameplay.keyboardText2;
}
else
{
this.controllerText.text = Links.x.gameplay.exitMenuText;
}
this.controllerText.spriteAsset = Links.x.GetSpriteSheetAsset(Links.x.gameplay.currentSpriteSheetAsset);
return;
}
if (this.type.Contains("Feed"))
{
base.transform.GetChild(0).gameObject.SetActive(false);
}
}
// Token: 0x06000E3B RID: 3643 RVA: 0x001107C0 File Offset: 0x0010E9C0
public void OnPointerEnter(PointerEventData eventData)
{
this.hovering = true;
if (Input.GetMouseButton(0))
{
return;
}
if (Links.x.joy && !this.canInteract)
{
return;
}
if (this.animator && this.enterAnimation != "")
{
if (this.ignoreEnterAnimation == "")
{
this.animator.Play(this.enterAnimation);
}
else if (!this.animator.currentAnimation.Contains(this.ignoreEnterAnimation))
{
this.animator.Play(this.enterAnimation);
}
}
if (this.showTooltip)
{
if (this.type.Contains("Proficiency"))
{
if (!this.rt)
{
this.GetRT();
}
Links.x.characterSheet.ShowProficiencyInfo(this.type, this.rt);
}
else if (this.type.Contains("ItemUse"))
{
Character character = base.gameObject.transform.parent.gameObject.GetComponent<SkillBag>().portrait.character;
Links.x.hudControl.currentHotkeyButton = this;
int num = character.GetInvNum(26);
if (this.type.Contains("2"))
{
num = character.GetInvNum(28);
}
if (this.type.Contains("3"))
{
num = character.GetInvNum(30);
}
string displayName = Links.x.library.GetInvRowByIndex(num)._DisplayName;
if (displayName == "")
{
Links.x.tooltip.AddHoverText("For belt item", base.gameObject, "Up");
}
else
{
Links.x.tooltip.AddHoverText("Use " + displayName, base.gameObject, "Up");
}
}
else if (this.type == "Head")
{
if (this.state)
{
this.state = false;
}
}
else if (this.type == "Clock")
{
this.str.Clear();
this.str.Append("Rest <voffset=.4em><size=30><sprite=");
int keyIconIndex = Links.x.keyControl.GetKeyIconIndex("LMB");
this.str.Append(keyIconIndex);
this.str.Append("></size></voffset>\n\nCurrently: ");
float num2 = Mathf.Floor(Links.x.gameplay.gameHours);
string text = Links.x.gameplay.ShowHour(num2);
this.str.Append(text);
Links.x.tooltip.AddHoverText(this.str.ToString(), base.gameObject, "UpMenuButtons");
}
else if (this.type == "Party Wait")
{
if (true)
{
if (Records.x.circle)
{
Links.x.tooltip.AddHoverText("Break", base.gameObject, "UpMenuButtons");
}
else
{
this.str.Clear();
if (Records.x.partySailing)
{
this.str.Append("Unavailable");
}
else
{
string hotkeyString = Links.x.keyControl.GetHotkeyString("Commands");
this.str.Append("Form Up <voffset=.4em><size=50> <sprite=");
int keyIconIndex2 = Links.x.keyControl.GetKeyIconIndex(hotkeyString);
this.str.Append(keyIconIndex2);
this.str.Append("></size></voffset>");
}
Links.x.tooltip.AddHoverText(this.str.ToString(), base.gameObject, "UpMenuButtons");
}
}
else
{
Links.x.tooltip.AddHoverText("Companions\n\nstay back", base.gameObject, "Up");
}
}
else if (this.type.Contains("Journal"))
{
if (Links.x.joy)
{
Links.x.tooltip.AddHoverText("Notes", base.gameObject, "Up");
}
else
{
this.str.Clear();
string hotkeyString2 = Links.x.keyControl.GetHotkeyString("Notes");
if (hotkeyString2 == "Space" || hotkeyString2 == "Tab" || hotkeyString2 == "Caps Lock" || hotkeyString2 == "Return")
{
this.str.Append("Notes <voffset=.4em><size=50> <sprite=");
}
else
{
this.str.Append("Notes <voffset=.4em><size=50> <sprite=");
}
int keyIconIndex3 = Links.x.keyControl.GetKeyIconIndex(hotkeyString2);
this.str.Append(keyIconIndex3);
this.str.Append("></size></voffset>");
Links.x.tooltip.AddHoverText(this.str.ToString(), base.gameObject, "UpMenuButtons");
}
}
else if (this.type.Contains("Map"))
{
if (Links.x.joy)
{
Links.x.tooltip.AddHoverText("Map", base.gameObject, "Up");
}
else
{
this.str.Clear();
string hotkeyString3 = Links.x.keyControl.GetHotkeyString("Map");
if (hotkeyString3 == "Space" || hotkeyString3 == "Tab" || hotkeyString3 == "Caps Lock" || hotkeyString3 == "Return")
{
this.str.Append("Map <voffset=.4em><size=50> <sprite=");
}
else
{
this.str.Append("Map <voffset=.4em><size=50> <sprite=");
}
int keyIconIndex4 = Links.x.keyControl.GetKeyIconIndex(hotkeyString3);
this.str.Append(keyIconIndex4);
this.str.Append("></size></voffset>");
Links.x.tooltip.AddHoverText(this.str.ToString(), base.gameObject, "UpMenuButtons");
}
}
else if (this.type.Contains("Sheep"))
{
if (Links.x.gaia.boroControls.BoroNearby())
{
Links.x.hudControl.BoroTooltipOn("Dismiss");
}
else
{
Links.x.hudControl.BoroTooltipOn("Call");
}
}
else if (this.type.Contains("Boro Stats"))
{
Links.x.hudControl.BoroTooltipOn("Boro stats");
}
else if (this.type.Contains("Character Sheet"))
{
if (Links.x.joy)
{
Links.x.tooltip.AddHoverText("Character Sheet", base.gameObject, "Up");
}
else
{
this.str.Clear();
string hotkeyString4 = Links.x.keyControl.GetHotkeyString("Character Sheet");
if (hotkeyString4 == "Space" || hotkeyString4 == "Tab" || hotkeyString4 == "Caps Lock" || hotkeyString4 == "Return")
{
this.str.Append("Character Sheet <voffset=.4em><size=50> <sprite=");
}
else
{
this.str.Append("Character Sheet <voffset=.4em><size=50> <sprite=");
}
int keyIconIndex5 = Links.x.keyControl.GetKeyIconIndex(hotkeyString4);
this.str.Append(keyIconIndex5);
this.str.Append("></size></voffset>");
Links.x.tooltip.AddHoverText(this.str.ToString(), base.gameObject, "UpMenuButtons");
}
}
else if (this.type.Contains("Settings"))
{
if (Links.x.joy)
{
Links.x.tooltip.AddHoverText("Settings", base.gameObject, "UpMenuButtonsRight");
}
else
{
this.str.Clear();
this.str.Append("Settings <voffset=.4em><size=50> <sprite=");
int keyIconIndex6 = Links.x.keyControl.GetKeyIconIndex("Escape");
this.str.Append(keyIconIndex6);
this.str.Append("></size></voffset>");
Links.x.tooltip.AddHoverText(this.str.ToString(), base.gameObject, "UpMenuButtonsRight");
}
}
else if (this.type.Contains("Tactics"))
{
Links.x.tooltip.AddHoverText("Tactics", base.gameObject, "UpMenuButtons");
}
else if (!this.type.Contains("Toggle Windows"))
{
if (this.type.Contains("Stun Badge"))
{
this.str.Clear();
Library.Characters pcrowFromName = Links.x.library.GetPCRowFromName(this.info);
this.str.Append(pcrowFromName._DisplayName);
this.str.Append(" (");
this.str.Append(pcrowFromName._GenericName);
this.str.Append(") ");
this.str.Append(" ~ Stunned for ");
int num3 = this.id + 24 - (int)Mathf.Floor((float)Links.x.gameplay.GetCurrentGameTimeHours());
if (num3 < 1)
{
this.str.Append("< 1 hour");
}
else
{
this.str.Append(num3);
if (num3 == 1)
{
this.str.Append(" hour");
}
else
{
this.str.Append(" hours");
}
}
if (!this.state)
{
this.str.Append("\n\n<color=#F8553C>[Cannot claim reward until area is clear!]</color>");
}
Links.x.tooltip.AddHoverText(this.str.ToString(), base.gameObject, "Down");
}
else if (this.type.Contains("Bribe Badge"))
{
this.str.Clear();
Library.Characters pcrowFromName2 = Links.x.library.GetPCRowFromName(this.info);
this.str.Append("Victim: ");
this.str.Append(pcrowFromName2._DisplayName);
string text2 = Records.x.CanBribe(this.info);
if (text2 == "Yes")
{
this.str.Append("\n\nShout 'Bribe' for reparations");
}
else if (text2 == "Too far")
{
this.str.Append("\n\nNo guards or victims nearby to bribe");
}
else if (text2 == "Out of town")
{
this.str.Append("\n\nToo far to bribe");
}
else if (text2 == "Stunned")
{
this.str.Append("\n\nWitnesses are stunned, but word will spread in ");
int num4 = this.id + 24 - (int)Mathf.Floor((float)Links.x.gameplay.GetCurrentGameTimeHours());
if (num4 < 1)
{
this.str.Append("< 1 hour");
}
else
{
this.str.Append(num4);
if (num4 == 1)
{
this.str.Append(" hour");
}
else
{
this.str.Append(" hours");
}
}
}
else
{
this.str.Append("\n\nCannot bribe now");
}
Links.x.tooltip.AddHoverText(this.str.ToString(), base.gameObject, "Down");
}
else if (this.type.Contains("Toggle Lethality"))
{
this.str.Clear();
if (Links.x.mk)
{
if (Records.x.kill)
{
this.str.Append("Party will kill");
}
else
{
this.str.Append("Party will stun");
}
Links.x.tooltip.AddHoverText(this.str.ToString(), base.gameObject, "Up");
}
}
else if (this.type.Contains("Pause"))
{
if (Links.x.mk)
{
this.str.Clear();
if (Records.x.paused)
{
this.str.Append("Free Time");
}
else
{
this.str.Append("Pause Time");
}
string hotkeyString5 = Links.x.keyControl.GetHotkeyString("Pause");
if (hotkeyString5 == "Space" || hotkeyString5 == "Tab" || hotkeyString5 == "Caps Lock" || hotkeyString5 == "Return")
{
this.str.Append(" <voffset=.4em><size=50> <sprite=");
}
else
{
this.str.Append(" <voffset=.4em><size=50> <sprite=");
}
int keyIconIndex7 = Links.x.keyControl.GetKeyIconIndex(hotkeyString5);
this.str.Append(keyIconIndex7);
this.str.Append("></size></voffset>");
Links.x.tooltip.AddHoverText(this.str.ToString(), base.gameObject, "Up");
}
else
{
Links.x.tooltip.AddHoverText("Pause (" + Links.x.keyControl.GetHotkeyString("Pause") + ")", base.gameObject, "Up");
}
}
else if (this.type.Contains("Rest"))
{
Links.x.tooltip.AddHoverText("Rest", base.gameObject, "Up");
}
else if (this.type.Contains("Tactics Label"))
{
Links.x.formation.SetDescriptionFromLabel(base.gameObject.name);
}
else if (this.type.Contains("Select All"))
{
Links.x.tooltip.AddHoverText("Select All (" + Links.x.keyControl.GetHotkeyString("Select All") + ")", base.gameObject, "Up");
}
else if (this.type.Contains("Select Party"))
{
SkillBag component = base.gameObject.transform.parent.gameObject.GetComponent<SkillBag>();
Character character2 = component.portrait.character;
component.portrait.PortraitHover(true);
}
else if (this.type.Contains("Show Items"))
{
this.str.Clear();
string hotkeyString6 = Links.x.keyControl.GetHotkeyString("Show Items");
if (Links.x.mk)
{
if (hotkeyString6 == "Space" || hotkeyString6 == "Tab" || hotkeyString6 == "Caps Lock" || hotkeyString6 == "Return")
{
this.str.Append("Show Items <voffset=.4em><size=50> <sprite=");
}
else
{
this.str.Append("Show Items <voffset=.4em><size=50> <sprite=");
}
int keyIconIndex8 = Links.x.keyControl.GetKeyIconIndex(hotkeyString6);
this.str.Append(keyIconIndex8);
this.str.Append("></size></voffset>");
}
else
{
this.str.Append("Show Items <voffset=.4em><size=50> <sprite=");
int controllerSprite = Links.x.gameplay.GetControllerSprite("Show Items", Links.x.gameplay.controllerName);
this.str.Append(controllerSprite);
this.str.Append("></size></voffset>");
}
Links.x.tooltip.AddHoverText(this.str.ToString(), base.gameObject, "UpMenuButtons");
}
else if (this.type.Contains("AI"))
{
if (Records.x.ai == 1)
{
Links.x.tooltip.AddHoverText("Always\n\nattack", base.gameObject, "Up");
}
else
{
Links.x.tooltip.AddHoverText("Wait for\n\norders", base.gameObject, "Up");
}
}
else if (this.type == "Effect")
{
Portrait component2 = base.gameObject.transform.parent.transform.parent.gameObject.GetComponent<Portrait>();
if (!this.image)
{
this.image = base.gameObject.GetComponent<Image>();
}
component2.skillBag.TooltipOn(null, base.gameObject, component2.GetEffectName(this.image), true);
}
else
{
Links.x.tooltip.AddHoverText(this.type, base.gameObject, "Up");
}
}
}
else if (this.type.Contains("Crafting"))
{
Links.x.arrowKit.SetHover(this.type, base.gameObject.name);
}
Links.x.gameplay.uiCanClick = true;
this.canInteract = false;
}
// Token: 0x06000E3C RID: 3644 RVA: 0x0011192C File Offset: 0x0010FB2C
public void OnPointerExit(PointerEventData eventData)
{
this.hovering = false;
Links.x.hudControl.currentHotkeyButton = null;
if (Links.x.joy && !this.canInteract)
{
return;
}
if (Input.GetMouseButton(0))
{
return;
}
if (this.animator && this.exitAnimation != "")
{
if (this.image)
{
if (this.image.enabled)
{
this.animator.Play(this.exitAnimation);
}
}
else
{
this.animator.Play(this.exitAnimation);
}
}
if (this.showTooltip)
{
if (this.type.Contains("Proficiency"))
{
Links.x.characterSheet.EndHover(this.rt);
}
else if (this.type == "Effect")
{
base.gameObject.transform.parent.transform.parent.gameObject.GetComponent<Portrait>().skillBag.TooltipOff();
}
else
{
Links.x.tooltip.EndHoverText(base.gameObject, false);
Links.x.characterTooltip.EndHoverText(base.gameObject, false);
}
}
if (this.type == "Sheep" || this.type == "Boro Stats")
{
Links.x.hudControl.BoroTooltipOff();
}
if (this.type == "Select Party")
{
base.gameObject.transform.parent.gameObject.GetComponent<SkillBag>().portrait.PortraitHover(false);
}
else if (this.type.Contains("Tactics Label"))
{
Links.x.formation.SetDescriptionFromLabel("");
}
else if (this.type.Contains("Crafting"))
{
Links.x.arrowKit.EndHover();
}
else if (this.type == "Head" && !this.state)
{
base.gameObject.GetComponent<Button>().interactable = true;
}
Links.x.gameplay.uiCanClick = false;
this.canInteract = false;
}
// Token: 0x06000E3D RID: 3645 RVA: 0x00111B68 File Offset: 0x0010FD68
public void OnPointerDown(PointerEventData eventData)
{
this.clickedDown = true;
this.timeSinceMouseDown = Time.timeSinceLevelLoad;
if (Links.x.mk && Records.x.movingWindows)
{
Records.x.movingWindows = false;
Links.x.hudControl.ToggleWindowVisual(false);
Links.x.hudControl.ToggleWindowInteractables(true);
}
if (this.animator && this.downAnimation != "")
{
this.animator.Play(this.downAnimation);
}
this.type == "Head";
if (this.type.Contains("Close"))
{
Links.x.gameplay.StoneSoundQuieter();
}
else if (Links.x.mk)
{
if (Input.GetMouseButton(1))
{
MasterAudio.PlaySoundAndForget("Click up", Random.Range(0.55f, 0.65f), new float?(1f), 0f, "", null);
}
else
{
MasterAudio.PlaySoundAndForget(this.soundName, Random.Range(0.75f, 0.8f), new float?(1f), 0f, "", null);
}
}
else
{
MasterAudio.PlaySoundAndForget(this.soundName, Random.Range(0.75f, 0.8f), new float?(1f), 0f, "", null);
}
if (this.type == "Spin")
{
Links.x.creation.spinning = true;
Links.x.creation.mouseStart = Input.mousePosition;
}
}
// Token: 0x06000E3E RID: 3646 RVA: 0x00111D28 File Offset: 0x0010FF28
public void SetImageFromSave()
{
if (this.type == "AI")
{
if (Records.x.ai == 0)
{
this.image.sprite = this.sprite1;
}
else
{
this.image.sprite = this.sprite2;
}
}
this.type == "Party Wait";
if (this.type == "Show Items")
{
if (!Links.x.inventory.groundBag.toggle)
{
this.image.sprite = this.sprite1;
if (Links.x.joy)
{
base.gameObject.GetComponent<Button>().spriteState = new SpriteState
{
highlightedSprite = this.sprite1,
selectedSprite = this.sprite1,
disabledSprite = this.sprite1
};
}
}
else
{
this.image.sprite = this.sprite2;
if (Links.x.joy)
{
base.gameObject.GetComponent<Button>().spriteState = new SpriteState
{
highlightedSprite = this.sprite2,
selectedSprite = this.sprite2,
disabledSprite = this.sprite2
};
}
}
}
if (this.type.Contains("Toggle Lethality"))
{
if (Records.x.kill)
{
this.animator.Play("Open");
}
else
{
this.animator.Play("Close");
}
}
this.type == "Pause";
}
// Token: 0x06000E3F RID: 3647 RVA: 0x00111EC3 File Offset: 0x001100C3
public void DoButtonFromHotkey()
{
this.clickedDown = true;
this.fromHotKey = true;
this.OnPointerUp(null);
}
// Token: 0x06000E40 RID: 3648 RVA: 0x00111EDC File Offset: 0x001100DC
public void CircleOn()
{
if (!this.anim)
{
this.anim = base.gameObject.GetComponent<Animator>();
}
this.anim.Play("FormUp_On");
this.anim.SetBool("Breaking", false);
}
// Token: 0x06000E41 RID: 3649 RVA: 0x00111F28 File Offset: 0x00110128
public void CircleOff()
{
if (!this.anim)
{
this.anim = base.gameObject.GetComponent<Animator>();
}
if (!this.anim.GetBool("Breaking"))
{
this.anim.Play("FormUp_Off");
}
}
// Token: 0x06000E42 RID: 3650 RVA: 0x00111F75 File Offset: 0x00110175
public void CircleBreak()
{
this.anim.SetBool("Breaking", true);
this.anim.Play("FormUp_Break");
}
// Token: 0x06000E43 RID: 3651 RVA: 0x00111F98 File Offset: 0x00110198
public void CircleMorale(float amt)
{
}
// Token: 0x06000E44 RID: 3652 RVA: 0x00111F9C File Offset: 0x0011019C
public void OnPointerUp(PointerEventData eventData)
{
if (!this.clickedDown && Links.x.mk)
{
return;
}
if (Links.x.joy && !this.canInteract)
{
return;
}
if (this.mouseUp != null && (!this.onlyForController || (this.onlyForController && Links.x.joy)))
{
this.mouseUp.Invoke();
}
if (Links.x.mk)
{
EventSystem.current.SetSelectedGameObject(null);
}
if (!this.fromHotKey && Links.x.mk && Input.GetMouseButtonUp(0))
{
MasterAudio.PlaySoundAndForget("Click up", Random.Range(0.6f, 0.7f), new float?(1f), 0f, "", null);
}
this.fromHotKey = false;
this.clickedDown = false;
if (this.animator && this.upAnimation != "")
{
this.animator.Play(this.upAnimation);
}
if (this.type == null)
{
this.canInteract = false;
return;
}
if (this.type == "Knowledge")
{
Links.x.spellcrafting.SelectLearningButton(this.id);
}
if (this.type == "Party Wait")
{
if (true)
{
if (!Records.x.circle && !Links.x.gameplay.makeCircleMode && !Records.x.partySailing)
{
Links.x.gameplay.makeCircleMode = true;
if (Links.x.joy)
{
Links.x.gameplay.StartControllerTargeting();
}
}
else if (!Records.x.partySailing)
{
if (Links.x.gameplay.makeCircleMode)
{
Links.x.gameplay.EndCircleMode();
}
else
{
Links.x.fellowship.BreakCircle(false);
}
}
if (Records.x.circle || Links.x.gameplay.makeCircleMode)
{
this.CircleOn();
}
else
{
this.CircleOff();
}
}
else
{
Links.x.gameplay.TogglePartyWait();
if (Records.x.partyWait)
{
base.gameObject.GetComponent<HannahAnimator>().enabled = false;
}
else
{
base.gameObject.GetComponent<HannahAnimator>().enabled = true;
}
}
}
if ((Links.x.joy || (Links.x.mk && Time.timeSinceLevelLoad < this.timeSinceMouseDown + 0.35f && !Input.GetMouseButton(0))) && this.type == "Select Party")
{
SkillBag component = base.gameObject.transform.parent.gameObject.GetComponent<SkillBag>();
bool flag = false;
if (Links.x.main && Links.x.main.timelineIcon && Links.x.main.timelineIcon.overridePause)
{
flag = true;
}
if (!flag)
{
component.portrait.SelectCharacter();
}
}
if (this.type.Contains("Toggle Lethality"))
{
Links.x.hudControl.ToggleLethality(false);
if (Links.x.joy)
{
this.OnPointerEnter(null);
}
if (Records.x.kill)
{
this.animator.Play("Open");
}
else
{
this.animator.Play("Close");
}
}
if (this.type == "Show Items")
{
if (!Links.x.inventory.groundBag.toggle)
{
Links.x.inventory.groundBag.toggle = true;
this.image.sprite = this.sprite2;
}
else
{
Links.x.inventory.groundBag.toggle = false;
this.image.sprite = this.sprite1;
}
this.OnPointerEnter(null);
}
if (this.type == "AI")
{
if (Records.x.ai == 0)
{
Records.x.ai = 1;
Links.x.gameFeed.AddFeed("Guards will automatically attack");
this.image.sprite = this.sprite2;
if (Links.x.hasMain && Records.x.combat && Links.x.main.hasActions)
{
Links.x.combat.AddPartyToTurnList();
}
}
else
{
Records.x.ai = 0;
Links.x.gameFeed.AddFeed("Guards will wait for actions");
this.image.sprite = this.sprite1;
}
this.OnPointerEnter(null);
}
if (this.type == "Pause")
{
if (!Records.x.paused)
{
Links.x.gameplay.TogglePause(true);
}
else
{
Links.x.gameplay.TogglePause(false);
}
}
if (this.type.Contains("Sheep"))
{
if (Records.x.removeControls)
{
this.canInteract = false;
return;
}
if (Links.x.gaia.boroControls.BoroNearby())
{
Links.x.gaia.boroControls.Leave();
}
else
{
Links.x.gameplay.CallBoro();
}
}
if (this.type.Contains("Boro Stats"))
{
Links.x.hudControl.OpenBoroCard();
}
if (this.type == "CharacterCreationName")
{
Links.x.creation.InputChanged();
Links.x.creation.input.gameObject.GetComponent<UITriggerButton>().FirstSelect();
}
if (this.type == "JournalScroll" && Links.x.joy)
{
if (!this.scroll)
{
this.scroll = base.gameObject.GetComponent<JournalScroll>();
}
if (this.scroll)
{
this.scroll.PointerUpFromTrigger();
}
}
if (this.type == "Spin")
{
Links.x.creation.spinning = false;
}
if (this.type.Contains("Close"))
{
this.CloseButton();
}
this.canInteract = false;
}
// Token: 0x06000E45 RID: 3653 RVA: 0x001125EC File Offset: 0x001107EC
public void CloseButton()
{
if (this.closeCoroutine == null && base.gameObject.activeSelf && !Links.x.keyboardScript.gameObject.activeSelf)
{
this.closeCoroutine = this.CloseButtonUp();
base.StartCoroutine(this.closeCoroutine);
}
}
// Token: 0x06000E46 RID: 3654 RVA: 0x0011263D File Offset: 0x0011083D
private IEnumerator CloseButtonUp()
{
yield return new WaitForSecondsRealtime(0.1f);
Links.x.gameplay.openingAnotherMenu = false;
if (this.type == "Close SaveLoad" && (!Records.x.mainCharacterDead || Records.x.mainMenuOpen))
{
Links.x.saveLoad.StartEndMenu(true);
}
if (this.type == "Close ResolutionConfirm")
{
Links.x.options.CloseResolutionBox();
}
if (this.type == "Close SaveLoad MainMenu")
{
Links.x.saveLoad.confirmMainMenu.SetActive(false);
Links.x.saveLoad.GetNewFirstObject();
}
if (this.type == "Close SaveLoad Quit")
{
Links.x.saveLoad.confirmQuit.SetActive(false);
Links.x.saveLoad.GetNewFirstObject();
}
if (this.type == "Close SaveLoadConfirm")
{
Links.x.saveLoad.CloseConfirm();
Links.x.saveLoad.GetNewFirstObject();
}
if (this.type == "Close CS")
{
Links.x.characterSheet.StartEndMenu(false, true);
}
if (this.type == "Close Map")
{
Links.x.sceneMap.StartEndMenu(true);
}
if (this.type == "Close LevelUp")
{
Links.x.characterSheet.levelUpMenu.CloseMenu();
}
if (this.type == "Close Rest")
{
Links.x.rest.CloseMenu(true);
}
if (this.type == "Close Forfeits")
{
Links.x.forfeits.CloseMenu(true);
}
if (this.type == "Close Note")
{
Links.x.characterSheet.CloseNote();
}
if (this.type == "Close EnchantMenu")
{
Links.x.inventory.enchantMenu.CloseMenu();
}
if (this.type == "Close Formations")
{
Links.x.formation.StartEndMenu(true);
}
if (this.type == "Close Status Effects")
{
Links.x.characterSheet.CloseStatusEffects();
}
if (this.type == "Close Options")
{
Links.x.options.StartEndMenu(true);
}
if (this.type == "Close Splitter")
{
Links.x.inventory.splitter.CloseFromButton();
}
if (this.type == "Close Remove Character")
{
Links.x.characterSheet.CloseRemoveFromParty();
}
if (this.type == "Close Character Creation")
{
Links.x.creation.Finish();
}
if (this.type == "Close Journal")
{
Links.x.journal.StartEndMenu(true);
}
if (this.type == "Close Journal Remove Scroll")
{
Links.x.journal.CloseRemoveScrollMenu();
}
if (this.type == "Close Books")
{
Links.x.characterSheet.booksMenu.CloseMenu();
}
if (this.type == "Close Tips")
{
Links.x.hudControl.CloseTips();
}
if (this.type == "Close Ruleset")
{
Links.x.characterSheet.CloseOutput();
}
if (this.type == "Close MapConfirm")
{
Links.x.mapConfirm.StartEndMenu();
}
if (this.type == "Close ArrowKit")
{
Links.x.arrowKit.StartClose();
}
if (this.type == "Close Spellcrafting")
{
Links.x.spellcrafting.StartEndMenu(true);
}
if (this.type == "Close Spellgrid")
{
Links.x.spellcrafting.CloseAllSpells();
}
if (this.type == "Close SpellDeleteConfirm")
{
Links.x.spellcrafting.CloseSpellDelete();
}
if (this.type == "Close SpellDeleteConfirmCS")
{
Links.x.characterSheet.booksMenu.CloseSpellDelete();
}
if (this.type == "Close Tutorial")
{
Links.x.hudControl.CloseTutorialTooltip();
}
if (this.type == "Close Credits")
{
GameObject.Find("Main Menu").GetComponent<MainMenu>().CloseCredits();
}
this.closeCoroutine = null;
yield break;
}
// Token: 0x06000E47 RID: 3655 RVA: 0x0011264C File Offset: 0x0011084C
public void GetRT()
{
this.rt = base.gameObject.GetComponent<RectTransform>();
}
// Token: 0x06000E48 RID: 3656 RVA: 0x0011265F File Offset: 0x0011085F
public void GetParentRT()
{
this.rt = base.gameObject.transform.parent.gameObject.GetComponent<RectTransform>();
}
// Token: 0x06000E49 RID: 3657 RVA: 0x00112684 File Offset: 0x00110884
public void SetPositionAtWorldPoint(Vector3 worldPoint)
{
Vector3 vector = Links.x.worldCamera.WorldToScreenPoint(worldPoint);
vector.z = 0f;
vector.x = vector.x * (1920f / (float)Screen.width) - 960f;
vector.y = vector.y * (Links.x.canvasRT.sizeDelta.y / (float)Screen.height) - Links.x.canvasRT.sizeDelta.y / 2f;
this.rt.localPosition = vector;
}
// Token: 0x04001690 RID: 5776
public string soundName = "Clicks Stone A";
// Token: 0x04001691 RID: 5777
public HannahAnimator animator;
// Token: 0x04001692 RID: 5778
public string downAnimation;
// Token: 0x04001693 RID: 5779
public string upAnimation;
// Token: 0x04001694 RID: 5780
public string enterAnimation;
// Token: 0x04001695 RID: 5781
public string exitAnimation;
// Token: 0x04001696 RID: 5782
public string ignoreEnterAnimation;
// Token: 0x04001697 RID: 5783
public string type;
// Token: 0x04001698 RID: 5784
public Image image;
// Token: 0x04001699 RID: 5785
public Sprite sprite1;
// Token: 0x0400169A RID: 5786
public Sprite sprite2;
// Token: 0x0400169B RID: 5787
public bool showTooltip;
// Token: 0x0400169C RID: 5788
private RectTransform rt;
// Token: 0x0400169D RID: 5789
private Image image2;
// Token: 0x0400169E RID: 5790
private IEnumerator closeCoroutine;
// Token: 0x0400169F RID: 5791
public UnityEvent mouseUp = new UnityEvent();
// Token: 0x040016A0 RID: 5792
private SkillButton skillButton;
// Token: 0x040016A1 RID: 5793
public bool canInteract;
// Token: 0x040016A2 RID: 5794
public bool clickedDown;
// Token: 0x040016A3 RID: 5795
public TextMeshProUGUI controllerText;
// Token: 0x040016A4 RID: 5796
private JournalScroll scroll;
// Token: 0x040016A5 RID: 5797
private StringFast str = new StringFast(64);
// Token: 0x040016A6 RID: 5798
public bool hovering;
// Token: 0x040016A7 RID: 5799
public bool onlyForController;
// Token: 0x040016A8 RID: 5800
private bool fromHotKey;
// Token: 0x040016A9 RID: 5801
public int id;
// Token: 0x040016AA RID: 5802
public string info;
// Token: 0x040016AB RID: 5803
public bool state;
// Token: 0x040016AC RID: 5804
private float timeSinceMouseDown;
// Token: 0x040016AD RID: 5805
private Button btn;
// Token: 0x040016AE RID: 5806
private Animator anim;
}