Decompiled source of AnglerFishingNode v2.0.0
plugins/GeckVolantMarin-AnglerFishingNode.dll
Decompiled a month ago
The result has been truncated due to the large size, download it to view full contents!
using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using System.Security; using System.Security.Permissions; using BepInEx; using BepInEx.Logging; using DiskCardGame; using InscryptionAPI.Boons; using InscryptionAPI.Card; using InscryptionAPI.Helpers; using InscryptionAPI.Nodes; using Microsoft.CodeAnalysis; using UnityEngine; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")] [assembly: AssemblyCompany("GeckVolantMarin-AnglerFishingNode")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("GeckVolantMarin-AnglerFishingNode")] [assembly: AssemblyTitle("GeckVolantMarin-AnglerFishingNode")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("1.0.0.0")] [module: UnverifiableCode] [module: RefSafetyRules(11)] namespace Microsoft.CodeAnalysis { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] internal sealed class EmbeddedAttribute : Attribute { } } namespace System.Runtime.CompilerServices { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] [AttributeUsage(AttributeTargets.Module, AllowMultiple = false, Inherited = false)] internal sealed class RefSafetyRulesAttribute : Attribute { public readonly int Version; public RefSafetyRulesAttribute(int P_0) { Version = P_0; } } } namespace GeckVolantMarin { public static class NewMechanicsConcept { public static MechanicsConcept anglerFishing; public static void createMechanicsConcept() { //IL_0006: Unknown result type (might be due to invalid IL or missing references) //IL_0007: Unknown result type (might be due to invalid IL or missing references) //IL_0009: Unknown result type (might be due to invalid IL or missing references) //IL_000a: Unknown result type (might be due to invalid IL or missing references) //IL_000b: Unknown result type (might be due to invalid IL or missing references) //IL_000c: Unknown result type (might be due to invalid IL or missing references) MechanicsConcept val = (MechanicsConcept)16777322; val = (anglerFishing = (MechanicsConcept)(val + 1)); } } } namespace GeckVolantMarin.AnglerFishingNode { public static class NewProperties { public static string baitAboutToDiveExamineDialogue = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitAboutToDiveExamineDialogue"; public static string baitLossProbability = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitLossProbability"; public static string baitLossDialogueMessage = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitLossDialogueMessage"; public static string baitDerivationProbability = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitDerivationProbability"; public static string baitDerivationDialogueMessage = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitDerivationDialogueMessage"; public static string baitCatch0Loot0Rescue0DialogueMessage = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitCatch0Loot0Rescue0DialogueMessage"; public static string baitCatch1DialogueMessage = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitCatch1DialogueMessage"; public static string baitCatchMoreThen1DialogueMessage = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitCatchMoreThen1DialogueMessage"; public static string baitRescue1DialogueMessage = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitRescue1DialogueMessage"; public static string baitRescueMoreThen1DialogueMessage = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitRescueMoreThen1DialogueMessage"; public static string baitAlsoRescue1DialogueMessage = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitAlsoRescue1DialogueMessage"; public static string baitAlsoRescueMoreThen1DialogueMessage = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitAlsoRescueMoreThen1DialogueMessage"; public static string baitLoot1DialogueMessage = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitLoot1DialogueMessage"; public static string baitLootMoreThen1DialogueMessage = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitLootMoreThen1DialogueMessage"; public static string baitAlsoLoot1DialogueMessage = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitAlsoLoot1DialogueMessage"; public static string baitAlsoLootMoreThen1DialogueMessage = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitAlsoLootMoreThen1DialogueMessage"; public static string baitKeepDialogueMessage = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitKeepDialogueMessage"; public static string baitCatchFishProbability = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitCatchFishProbability"; public static string baitCatchFishGlobalLuck = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitCatchFishGlobalLuck"; public static string baitCatchBonusFishProbabilities = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitCatchBonusFishProbabilities"; public static string baitCatchTinyFishProbabilityWeight = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitCatchTinyFishProbabilityWeight"; public static string baitCatchTinyFishLuck = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitCatchTinyFishLuck"; public static string baitCatchSmallFishProbabilityWeight = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitCatchSmallFishProbabilityWeight"; public static string baitCatchSmallFishLuck = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitCatchSmallFishLuck"; public static string baitCatchMediumFishProbabilityWeight = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitCatchMediumFishProbabilityWeight"; public static string baitCatchMediumFishLuck = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitCatchMediumFishLuck"; public static string baitCatchBigFishProbabilityWeight = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitCatchBigFishProbabilityWeight"; public static string baitCatchBigFishLuck = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitCatchBigFishLuck"; public static string baitCatchHugeFishProbabilityWeight = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitCatchHugeFishProbabilityWeight"; public static string baitCatchHugeFishLuck = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitCatchHugeFishLuck"; public static string baitCatchCustomFishProbabilityWeights = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitCatchCustomFishProbabilityWeights"; public static string baitFindLootProbability = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitFindLootProbability"; public static string baitFindLootGlobalLuck = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitFindLootGlobalLuck"; public static string baitFindBonusLootsProbabilities = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitFindBonusLootsProbabilities"; public static string baitFindCardLootProbabilityWeight = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitFindCardLootProbabilityWeight"; public static string baitFindCardLootLuck = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitFindCardLootLuck"; public static string baitFindBoonLootProbabilityWeight = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitFindBoonLootProbabilityWeight"; public static string baitFindBoonLootLuck = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitFindBoonLootLuck"; public static string baitFindCustomCardLootsProbabilityWeights = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitFindCustomCardLootsProbabilityWeights"; public static string baitFindCustomBoonLootsProbabilityWeights = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitFindCustomBoonLootsProbabilityWeights"; public static string baitRescueCreatureProbability = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitRescueCreatureProbability"; public static string baitRescueCreatureGlobalLuck = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitRescueCreatureGlobalLuck"; public static string baitRescueBonusCreaturesProbabilities = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitRescueBonusCreaturesProbabilities"; public static string baitRescueTinyCreatureProbabilityWeight = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitRescueTinyCreatureProbabilityWeight"; public static string baitRescueTinyCreatureLuck = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitRescueTinyCreatureLuck"; public static string baitRescueSmallCreatureProbabilityWeight = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitRescueSmallCreatureProbabilityWeight"; public static string baitRescueSmallCreatureLuck = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitRescueSmallCreatureLuck"; public static string baitRescueMediumCreatureProbabilityWeight = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitRescueMediumCreatureProbabilityWeight"; public static string baitRescueMediumCreatureLuck = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitRescueMediumCreatureLuck"; public static string baitRescueBigCreatureProbabilityWeight = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitRescueBigCreatureProbabilityWeight"; public static string baitRescueBigCreatureLuck = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitRescueBigCreatureLuck"; public static string baitRescueHugeCreatureProbabilityWeight = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitRescueHugeCreatureProbabilityWeight"; public static string baitRescueHugeCreatureLuck = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitRescueHugeCreatureLuck"; public static string baitRescueCustomCreaturesProbabilityWeights = "GeckVolantMarin.AnglerFishingNode.NewProperties.baitRescueCustomCreaturesProbabilityWeights"; public static string fishCatchedExamineDialogue = "GeckVolantMarin.AnglerFishingNode.NewProperties.fishCatchedExamineDialogue"; public static string tinyFishCatchProbabilityWeights = "GeckVolantMarin.AnglerFishingNode.NewProperties.tinyFishCatchProbabilityWeights"; public static string smallFishCatchProbabilityWeights = "GeckVolantMarin.AnglerFishingNode.NewProperties.smallFishCatchProbabilityWeights"; public static string mediumFishCatchProbabilityWeights = "GeckVolantMarin.AnglerFishingNode.NewProperties.mediumFishCatchProbabilityWeights"; public static string bigFishCatchProbabilityWeights = "GeckVolantMarin.AnglerFishingNode.NewProperties.bigFishCatchProbabilityWeights"; public static string hugeFishCatchProbabilityWeights = "GeckVolantMarin.AnglerFishingNode.NewProperties.hugeFishCatchProbabilityWeights"; public static string lootFoundExamineDialogue = "GeckVolantMarin.AnglerFishingNode.NewProperties.lootFoundExamineDialogue"; public static string lootCardFoundProbabilityWeights = "GeckVolantMarin.AnglerFishingNode.NewProperties.lootCardFoundProbabilityWeights"; public static string lootBoonFoundProbabilityWeights = "GeckVolantMarin.AnglerFishingNode.NewProperties.lootBoonFoundProbabilityWeights"; public static string creatureRescueExamineDialogue = "GeckVolantMarin.AnglerFishingNode.NewProperties.lootFoundExamineDialogue"; public static string tinyCreatureRescueProbabilityWeights = "GeckVolantMarin.AnglerFishingNode.NewProperties.tinyCreatureRescueProbabilityWeights"; public static string smallCreatureRescueProbabilityWeights = "GeckVolantMarin.AnglerFishingNode.NewProperties.smallCreatureRescueProbabilityWeights"; public static string mediumCreatureRescueProbabilityWeights = "GeckVolantMarin.AnglerFishingNode.NewProperties.mediumCreatureRescueProbabilityWeights"; public static string bigCreatureRescueProbabilityWeights = "GeckVolantMarin.AnglerFishingNode.NewProperties.bigCreatureRescueProbabilityWeights"; public static string hugeCreatureRescueProbabilityWeights = "GeckVolantMarin.AnglerFishingNode.NewProperties.hugeCreatureRescueProbabilityWeights"; } public class FishingResults { public bool lostBait; public List<SelectableCard> catchedFish; public List<SelectableCard> foundCardLoots; public List<SelectableCard> foundBoonLoots; public List<SelectableCard> rescuedCreature; } public class AnglerFishingNodeSequencer : CardChoicesSequencer, ICustomNodeSequencer { private class MoveFromToUntilOnSpot : MonoBehaviour { public float timeElapsed = 1f; private void Update() { //IL_008d: Unknown result type (might be due to invalid IL or missing references) //IL_0097: Unknown result type (might be due to invalid IL or missing references) //IL_00a1: Unknown result type (might be due to invalid IL or missing references) //IL_003d: Unknown result type (might be due to invalid IL or missing references) //IL_0047: Unknown result type (might be due to invalid IL or missing references) //IL_0051: Unknown result type (might be due to invalid IL or missing references) //IL_00ef: Unknown result type (might be due to invalid IL or missing references) //IL_010f: Unknown result type (might be due to invalid IL or missing references) if (timeElapsed < 1f) { if (timeElapsed < 0f) { ((Component)this).transform.Translate(new Vector3(-0.1f, 11.6f, 2f) * Time.deltaTime * 10f); timeElapsed += Time.deltaTime * 0.1f; } else { ((Component)this).transform.Translate(new Vector3(0.1f, -11.6f, -2f) * Time.deltaTime * 10f); timeElapsed += Time.deltaTime * 10f; } if (timeElapsed >= 1f) { ((Component)this).transform.position = new Vector3(0.1f, -3.6f, 2f); ((Component)this).transform.localPosition = new Vector3(0.1f, -3.6f, 2f); } } } } private class PloufLaCarte : MonoBehaviour { public float timeElapsed = 0f; public bool shouldRecenter = true; private void Update() { //IL_006c: Unknown result type (might be due to invalid IL or missing references) //IL_0076: Unknown result type (might be due to invalid IL or missing references) //IL_003d: Unknown result type (might be due to invalid IL or missing references) //IL_0047: Unknown result type (might be due to invalid IL or missing references) //IL_00c5: Unknown result type (might be due to invalid IL or missing references) //IL_00e5: Unknown result type (might be due to invalid IL or missing references) //IL_0105: Unknown result type (might be due to invalid IL or missing references) if (timeElapsed < 1f) { if (timeElapsed < 0f) { ((Component)this).transform.Translate(new Vector3(0f, -2f, 0f) * Time.deltaTime, (Space)0); } else { ((Component)this).transform.Translate(new Vector3(0f, 2f, 0f) * Time.deltaTime, (Space)0); } timeElapsed += Time.deltaTime; if (timeElapsed >= 0.75f && shouldRecenter) { ((Component)this).transform.position = new Vector3(0.26f, 6.2218f, 1.2109f); ((Component)this).transform.localPosition = new Vector3(0f, 0.1218f, 1.6109f); ((Component)this).transform.localRotation = Quaternion.Euler(289.5936f, 0f, 0f); } } } } public static FullNode anglerFishingNode; [SerializeField] private Animator stoneCircleAnim; [SerializeField] private SelectCardFromDeckSlot fishBaitSlot; [SerializeField] private ConfirmStoneButton confirmStone; private GameObject pondGameObject; private GameObject cardHolder; private bool didIntroSequence = false; public override Vector3 CardExaminePosition => new Vector3(0f, 6.4f, -1f); public override Vector3 CardExamineEulers => new Vector3(125f, 178.5f, 180f); private void IntroSequence() { //IL_019a: Unknown result type (might be due to invalid IL or missing references) //IL_01d8: Unknown result type (might be due to invalid IL or missing references) //IL_020a: Unknown result type (might be due to invalid IL or missing references) //IL_023c: Unknown result type (might be due to invalid IL or missing references) GameObject val = Object.Instantiate<GameObject>(ResourceBank.Get<GameObject>("Prefabs/SpecialNodeSequences/CardRemoveSequencer"), ((Component)Singleton<SpecialNodeHandler>.Instance).transform); CardRemoveSequencer component = val.GetComponent<CardRemoveSequencer>(); base.gamepadGrid = ((CardChoicesSequencer)component).gamepadGrid; stoneCircleAnim = component.stoneCircleAnim; Plugin.Logger.LogInfo((object)"This object have those Components:"); ((Component)val.transform.GetChild(2).GetChild(0).GetChild(1)).gameObject.SetActive(false); ((Component)val.transform.GetChild(2).GetChild(0).GetChild(2)).gameObject.SetActive(false); ((Component)val.transform.GetChild(2).GetChild(0).GetChild(3)).gameObject.SetActive(false); ((Component)val.transform.GetChild(2).GetChild(1)).gameObject.SetActive(false); ((Component)val.transform.GetChild(2).GetChild(2)).gameObject.SetActive(false); ((Component)val.transform.GetChild(2).GetChild(3)).gameObject.SetActive(false); ((Component)val.transform.GetChild(2).GetChild(4)).gameObject.SetActive(false); ((Component)val.transform.GetChild(2).GetChild(5)).gameObject.SetActive(false); GameObject val2 = default(GameObject); if (AssetBundleHelper.TryGet<GameObject>(Path.Combine(Path.GetDirectoryName(Plugin.directory), "assets/Nodes/anglerFishing/customanglerfishing"), "Pond", ref val2)) { pondGameObject = Object.Instantiate<GameObject>(val2); pondGameObject.transform.localScale = new Vector3(100f, 60f, 100f); pondGameObject.AddComponent<MoveFromToUntilOnSpot>(); val.transform.GetChild(2).GetChild(0).GetChild(0) .position = new Vector3(0.26f, 6.2218f, 1.2109f); val.transform.GetChild(2).GetChild(0).GetChild(0) .localPosition = new Vector3(0f, 0.1218f, 1.6109f); val.transform.GetChild(2).GetChild(0).GetChild(0) .localRotation = Quaternion.Euler(289.5936f, 0f, 0f); cardHolder = ((Component)val.transform.GetChild(2).GetChild(0).GetChild(0)).gameObject; cardHolder.AddComponent<PloufLaCarte>(); cardHolder.GetComponent<PloufLaCarte>().timeElapsed = 1f; Plugin.Logger.LogInfo((object)"Success in spawning pond"); } confirmStone = component.confirmStone; fishBaitSlot = component.sacrificeSlot; base.deckPile = ((CardChoicesSequencer)component).deckPile; Object.Destroy((Object)(object)component); didIntroSequence = true; } public IEnumerator DoCustomSequence(CustomSpecialNodeData node) { if (!didIntroSequence) { IntroSequence(); } pondGameObject.transform.position = new Vector3(0f, 8f, 4f); pondGameObject.transform.localPosition = new Vector3(0f, 0f, 0f); pondGameObject.GetComponent<MoveFromToUntilOnSpot>().timeElapsed = 0f; fishBaitSlot.Disable(); pondGameObject.SetActive(true); Singleton<TableRuleBook>.Instance.SetOnBoard(true); Singleton<ViewManager>.Instance.Controller.SwitchToControlMode((ControlMode)5, false); Singleton<ViewManager>.Instance.Controller.LockState = (ViewLockState)1; yield return (object)new WaitForSeconds(0.3f); ((Component)stoneCircleAnim).gameObject.SetActive(true); yield return (object)new WaitForSeconds(0.5f); if (!ProgressionData.LearnedMechanic(NewMechanicsConcept.anglerFishing)) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("You came across some familiar ponds. But there was something different...", -2.5f, 0.5f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("You see the angler, he seems disapointed...", -2.5f, 0.5f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); LeshyAnimationController.Instance.PutOnMask((Mask)2, false); yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("No more bait, no more fish...", -2.5f, 0.5f, (Emotion)2, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else { LeshyAnimationController.Instance.PutOnMask((Mask)2, false); } yield return base.deckPile.SpawnCards(RunState.DeckList.Count, 0.5f); Singleton<ViewManager>.Instance.SwitchToView((View)8, false, false); Singleton<ExplorableAreaManager>.Instance.TweenHangingLightColors(GameColors.Instance.glowSeafoam, GameColors.Instance.seafoam, 0.1f); yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("Have-you bait?", -2.5f, 0.5f, (Emotion)5, (LetterAnimation)1, (Speaker)0, (string[])null, true); if (!ProgressionData.LearnedMechanic(NewMechanicsConcept.anglerFishing)) { yield return (object)new WaitForSeconds(0.1f); yield return LeshyAnimationController.Instance.TakeOffMask(); yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("Will you take the risk and give him a bait?", -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); LeshyAnimationController.Instance.PutOnMask((Mask)2, true); } fishBaitSlot.RevealAndEnable(); ((InteractableBase)fishBaitSlot).ClearDelegates(); SelectCardFromDeckSlot selectCardFromDeckSlot = fishBaitSlot; ((MainInputInteractable)selectCardFromDeckSlot).CursorSelectStarted = (Action<MainInputInteractable>)Delegate.Combine(((MainInputInteractable)selectCardFromDeckSlot).CursorSelectStarted, new Action<MainInputInteractable>(OnSlotSelected)); fishBaitSlot.backOutInputPressed = null; SelectCardFromDeckSlot selectCardFromDeckSlot2 = fishBaitSlot; selectCardFromDeckSlot2.backOutInputPressed = (Action)Delegate.Combine(selectCardFromDeckSlot2.backOutInputPressed, (Action)delegate { if (((InteractableBase)fishBaitSlot).Enabled) { OnSlotSelected((MainInputInteractable)(object)fishBaitSlot); } }); ((Behaviour)base.gamepadGrid).enabled = true; yield return confirmStone.WaitUntilConfirmation(); string baitExamineDialogue = ""; if (CardManager.GetCardExtensionTable(((Card)fishBaitSlot.Card).Info).TryGetValue(NewProperties.baitAboutToDiveExamineDialogue, out baitExamineDialogue)) { yield return ((CardChoicesSequencer)this).ExamineCardWithDialogue(fishBaitSlot.Card, baitExamineDialogue); } fishBaitSlot.Disable(); cardHolder.GetComponent<PloufLaCarte>().timeElapsed = -0.75f; ((Component)fishBaitSlot.Card).gameObject.AddComponent<PloufLaCarte>(); ((Component)fishBaitSlot.Card).gameObject.GetComponent<PloufLaCarte>().timeElapsed = -0.75f; ((Component)fishBaitSlot.Card).gameObject.GetComponent<PloufLaCarte>().shouldRecenter = false; Singleton<RuleBookController>.Instance.SetShown(false, true); yield return (object)new WaitForSeconds(0.25f); CardInfo baitInfo = ((Card)fishBaitSlot.Card).Info; ((CardCollectionInfo)RunState.Run.playerDeck).RemoveCard(baitInfo); ((Card)fishBaitSlot.Card).Anim.SetFaceDown(true, false); yield return (object)new WaitForSeconds(0.75f); FishingResults fishResults = OnBaitTransformIntoFish(baitInfo); if (fishResults.lostBait) { Object.Destroy((Object)(object)((Component)fishBaitSlot.Card).gameObject); } yield return (object)new WaitForSeconds(0.75f); if (!fishResults.lostBait) { ((Card)fishBaitSlot.Card).Anim.SetFaceDown(false, false); base.gamepadGrid.Rows[0].interactables.Add((InteractableBase)(object)fishBaitSlot.Card); } yield return OnRevealFish(fishResults, baitInfo); if (!ProgressionData.LearnedMechanic(NewMechanicsConcept.anglerFishing) && fishResults.lostBait && fishResults.rescuedCreature.Count + fishResults.foundBoonLoots.Count + fishResults.foundCardLoots.Count > 0) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("You take your new cards, and get back on track.", -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else if (!ProgressionData.LearnedMechanic(NewMechanicsConcept.anglerFishing) && fishResults.lostBait) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("You rumble a little and get back on track.", -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else if (!ProgressionData.LearnedMechanic(NewMechanicsConcept.anglerFishing) && fishResults.catchedFish.Count == 0 && fishResults.rescuedCreature.Count + fishResults.foundBoonLoots.Count + fishResults.foundCardLoots.Count > 0) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("You take back your card and get back on track.", -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else if (!ProgressionData.LearnedMechanic(NewMechanicsConcept.anglerFishing) && fishResults.catchedFish.Count == 0) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("You take back your card and happily get back on the road.", -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else if (!ProgressionData.LearnedMechanic(NewMechanicsConcept.anglerFishing) && fishResults.rescuedCreature.Count + fishResults.foundBoonLoots.Count + fishResults.foundCardLoots.Count > 0) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("You take your new cards and carrie onward.", -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else if (!ProgressionData.LearnedMechanic(NewMechanicsConcept.anglerFishing)) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("You take the new card and carrie onward.", -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } yield return LeshyAnimationController.Instance.TakeOffMask(); ProgressionData.SetMechanicLearned(NewMechanicsConcept.anglerFishing); yield return base.deckPile.DestroyCards(0.5f); stoneCircleAnim.SetTrigger("exit"); Singleton<ExplorableAreaManager>.Instance.ResetHangingLightsToZoneColors(0.25f); pondGameObject.GetComponent<MoveFromToUntilOnSpot>().timeElapsed = -1f; yield return (object)new WaitForSeconds(0.25f); confirmStone.Exit(); yield return (object)new WaitForSeconds(0.75f); ((Component)stoneCircleAnim).gameObject.SetActive(false); pondGameObject.SetActive(false); confirmStone.SetStoneInactive(); Singleton<GameFlowManager>.Instance.TransitionToGameState((GameState)1, (NodeData)null); } private void OnSlotSelected(MainInputInteractable slot) { ((Behaviour)base.gamepadGrid).enabled = false; ((InteractableBase)fishBaitSlot).SetEnabled(false); ((HighlightedInteractable)fishBaitSlot).ShowState((State)1, false, 0.15f); confirmStone.Exit(); ((SelectCardFromDeckSlot)((slot is SelectCardFromDeckSlot) ? slot : null)).SelectFromCards(GetValidCards(), (Action)OnSelectionEnded, false); } private void OnSelectionEnded() { ((Behaviour)base.gamepadGrid).enabled = true; ((HighlightedInteractable)fishBaitSlot).SetShown(true, false); ((HighlightedInteractable)fishBaitSlot).ShowState((State)2, false, 0.15f); Singleton<ViewManager>.Instance.SwitchToView((View)8, false, true); if ((Object)(object)fishBaitSlot.Card != (Object)null) { confirmStone.Enter(); } } private List<CardInfo> GetValidCards() { return new List<CardInfo>(RunState.DeckList); } private double transformStringIntoDouble(string stringToTransform) { switch (stringToTransform) { case "lucky": return 10.0; case "unlucky": return -10.0; case "pi": return 3.141592; case "I like my pizza with extra sauce.": return 450.7534; case "What are the nuclear launch codes?": return 103551.546423275; default: { double num = 0.0; bool flag = false; int num2 = 0; bool flag2 = false; foreach (char c in stringToTransform) { if (c == '-') { flag2 = !flag2; } else if (c == '.') { flag = true; } else if (c >= '0' && c <= '9') { double num3 = c - 48; if (flag) { num2++; num += num3 * Math.Pow(10.0, -num2); } else { num *= 10.0; num += num3; } } } if (flag2) { num *= -1.0; } return num; } } } private string[] splitString(string stringToSplit, char separator) { List<string> list = new List<string>(); string text = ""; for (int i = 0; i < stringToSplit.Length; i++) { char c = stringToSplit[i]; if (c == separator) { string item = text; list.Add(item); text = ""; } else { text += c; } } if (text.Length > 0) { string item2 = text; list.Add(item2); } return list.ToArray(); } private string[] splitString(string stringToSplit, char[] separator) { List<string> list = new List<string>(); string text = ""; for (int i = 0; i < stringToSplit.Length; i++) { char c = stringToSplit[i]; bool flag = false; foreach (char c2 in separator) { if (c == c2) { string item = text; list.Add(item); text = ""; flag = true; } } if (!flag) { text += c; } } if (text.Length > 0) { string item2 = text; list.Add(item2); } return list.ToArray(); } private void loadCustomPropertyAsDouble(CardInfo baitInfo, string propertyId, ref double propertyValue) { if (CardManager.GetCardExtensionTable(baitInfo).ContainsKey(propertyId)) { propertyValue = transformStringIntoDouble(CardExtensions.GetExtendedProperty(baitInfo, propertyId)); } } private void loadCustomPropertyAsDoubleList(CardInfo baitInfo, string propertyId, ref List<double> propertyValue) { if (CardManager.GetCardExtensionTable(baitInfo).ContainsKey(propertyId)) { string extendedProperty = CardExtensions.GetExtendedProperty(baitInfo, propertyId); string stringToSplit = extendedProperty.Replace("[", "").Replace("]", "").Replace("{", "") .Replace("}", "") .Replace("(", "") .Replace(")", "") .Replace(" ", ""); string[] array = splitString(stringToSplit, ','); for (int i = 0; i < array.Count(); i++) { propertyValue.Add(transformStringIntoDouble(array[i])); } } } private void loadCustomPropertyAsCardInfoAndDoubleList(CardInfo baitInfo, string propertyId, ref List<CardInfo> propertyKey, ref List<double> propertyValue) { if (CardManager.GetCardExtensionTable(baitInfo).ContainsKey(propertyId)) { string extendedProperty = CardExtensions.GetExtendedProperty(baitInfo, propertyId); string stringToSplit = extendedProperty.Replace("[", "").Replace("]", "").Replace("{", "") .Replace("}", "") .Replace("(", "") .Replace(")", "") .Replace(" ", "") .Replace("\"", "") .Replace("'", ""); char[] separator = new char[2] { ':', ',' }; string[] array = splitString(stringToSplit, separator); for (int i = 0; i < array.Count(); i += 2) { propertyKey.Add(CardLoader.GetCardByName(array[i])); } for (int j = 1; j < array.Count(); j += 2) { propertyValue.Add(transformStringIntoDouble(array[j])); } } } private void loadCustomPropertyAsBoonAndDoubleList(CardInfo baitInfo, string propertyId, ref List<CardInfo> propertyKey, ref List<double> propertyValue) { if (!CardManager.GetCardExtensionTable(baitInfo).ContainsKey(propertyId)) { return; } string extendedProperty = CardExtensions.GetExtendedProperty(baitInfo, propertyId); string stringToSplit = extendedProperty.Replace("[", "").Replace("]", "").Replace("{", "") .Replace("}", "") .Replace("(", "") .Replace(")", "") .Replace(" ", "") .Replace("\"", "") .Replace("'", ""); char[] separator = new char[2] { ':', ',' }; string[] array = splitString(stringToSplit, separator); for (int i = 0; i < array.Count(); i += 2) { foreach (BoonData item in BoonManager.AllBoonsCopy) { if (((Object)item).name == array[i]) { propertyKey.Add(BoonsUtil.CreateCardForBoon(item)); } } } for (int j = 1; j < array.Count(); j += 2) { propertyValue.Add(transformStringIntoDouble(array[j])); } } private FishingResults OnBaitTransformIntoFish(CardInfo baitInfo) { //IL_0799: Unknown result type (might be due to invalid IL or missing references) //IL_07bb: Unknown result type (might be due to invalid IL or missing references) //IL_07dd: Unknown result type (might be due to invalid IL or missing references) //IL_07ff: Unknown result type (might be due to invalid IL or missing references) //IL_0820: Unknown result type (might be due to invalid IL or missing references) //IL_0841: Unknown result type (might be due to invalid IL or missing references) //IL_0867: Unknown result type (might be due to invalid IL or missing references) //IL_0f60: Unknown result type (might be due to invalid IL or missing references) //IL_0f82: Unknown result type (might be due to invalid IL or missing references) //IL_0fa4: Unknown result type (might be due to invalid IL or missing references) //IL_0fc6: Unknown result type (might be due to invalid IL or missing references) //IL_0fe7: Unknown result type (might be due to invalid IL or missing references) //IL_1008: Unknown result type (might be due to invalid IL or missing references) //IL_102e: Unknown result type (might be due to invalid IL or missing references) //IL_0b1d: Unknown result type (might be due to invalid IL or missing references) //IL_0b3f: Unknown result type (might be due to invalid IL or missing references) //IL_0b61: Unknown result type (might be due to invalid IL or missing references) //IL_0b83: Unknown result type (might be due to invalid IL or missing references) //IL_0ba4: Unknown result type (might be due to invalid IL or missing references) //IL_0bc5: Unknown result type (might be due to invalid IL or missing references) //IL_0beb: Unknown result type (might be due to invalid IL or missing references) FishingResults fishingResults = new FishingResults(); fishingResults.catchedFish = new List<SelectableCard>(); fishingResults.foundCardLoots = new List<SelectableCard>(); fishingResults.foundBoonLoots = new List<SelectableCard>(); fishingResults.rescuedCreature = new List<SelectableCard>(); double propertyValue = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitLossProbability, ref propertyValue); double propertyValue2 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitDerivationProbability, ref propertyValue2); double propertyValue3 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitCatchFishProbability, ref propertyValue3); double propertyValue4 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitCatchFishGlobalLuck, ref propertyValue4); List<double> propertyValue5 = new List<double>(); loadCustomPropertyAsDoubleList(baitInfo, NewProperties.baitCatchBonusFishProbabilities, ref propertyValue5); double propertyValue6 = 1.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitCatchTinyFishProbabilityWeight, ref propertyValue6); double propertyValue7 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitCatchTinyFishLuck, ref propertyValue7); double propertyValue8 = 1.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitCatchSmallFishProbabilityWeight, ref propertyValue8); double propertyValue9 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitCatchSmallFishLuck, ref propertyValue9); double propertyValue10 = 1.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitCatchMediumFishProbabilityWeight, ref propertyValue10); double propertyValue11 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitCatchMediumFishLuck, ref propertyValue11); double propertyValue12 = 1.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitCatchBigFishProbabilityWeight, ref propertyValue12); double propertyValue13 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitCatchBigFishLuck, ref propertyValue13); double propertyValue14 = 1.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitCatchHugeFishProbabilityWeight, ref propertyValue14); double propertyValue15 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitCatchHugeFishLuck, ref propertyValue15); List<CardInfo> propertyKey = new List<CardInfo>(); List<double> propertyValue16 = new List<double>(); loadCustomPropertyAsCardInfoAndDoubleList(baitInfo, NewProperties.baitCatchCustomFishProbabilityWeights, ref propertyKey, ref propertyValue16); double propertyValue17 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitFindLootProbability, ref propertyValue17); double propertyValue18 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitFindLootGlobalLuck, ref propertyValue18); List<double> propertyValue19 = new List<double>(); loadCustomPropertyAsDoubleList(baitInfo, NewProperties.baitFindBonusLootsProbabilities, ref propertyValue19); double propertyValue20 = 1.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitFindCardLootProbabilityWeight, ref propertyValue20); double propertyValue21 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitFindCardLootLuck, ref propertyValue21); double propertyValue22 = 1.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitFindBoonLootProbabilityWeight, ref propertyValue22); double propertyValue23 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitFindBoonLootLuck, ref propertyValue23); List<CardInfo> propertyKey2 = new List<CardInfo>(); List<double> propertyValue24 = new List<double>(); loadCustomPropertyAsCardInfoAndDoubleList(baitInfo, NewProperties.baitFindCustomCardLootsProbabilityWeights, ref propertyKey2, ref propertyValue24); List<CardInfo> propertyKey3 = new List<CardInfo>(); List<double> propertyValue25 = new List<double>(); loadCustomPropertyAsBoonAndDoubleList(baitInfo, NewProperties.baitFindCustomBoonLootsProbabilityWeights, ref propertyKey3, ref propertyValue25); double propertyValue26 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitRescueCreatureProbability, ref propertyValue26); double propertyValue27 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitRescueCreatureGlobalLuck, ref propertyValue27); List<double> propertyValue28 = new List<double>(); loadCustomPropertyAsDoubleList(baitInfo, NewProperties.baitRescueBonusCreaturesProbabilities, ref propertyValue28); double propertyValue29 = 1.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitRescueTinyCreatureProbabilityWeight, ref propertyValue29); double propertyValue30 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitRescueTinyCreatureLuck, ref propertyValue30); double propertyValue31 = 1.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitRescueSmallCreatureProbabilityWeight, ref propertyValue31); double propertyValue32 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitRescueSmallCreatureLuck, ref propertyValue32); double propertyValue33 = 1.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitRescueMediumCreatureProbabilityWeight, ref propertyValue33); double propertyValue34 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitRescueMediumCreatureLuck, ref propertyValue34); double propertyValue35 = 1.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitRescueBigCreatureProbabilityWeight, ref propertyValue35); double propertyValue36 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitRescueBigCreatureLuck, ref propertyValue36); double propertyValue37 = 1.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitRescueHugeCreatureProbabilityWeight, ref propertyValue37); double propertyValue38 = 0.0; loadCustomPropertyAsDouble(baitInfo, NewProperties.baitRescueHugeCreatureLuck, ref propertyValue38); List<CardInfo> propertyKey4 = new List<CardInfo>(); List<double> propertyValue39 = new List<double>(); loadCustomPropertyAsCardInfoAndDoubleList(baitInfo, NewProperties.baitRescueCustomCreaturesProbabilityWeights, ref propertyKey4, ref propertyValue39); if (RNG.getRandomBool_FromFraction(propertyValue, 1.0, 0.0)) { fishingResults.lostBait = true; } else { if (RNG.getRandomBool_FromFraction(propertyValue2, 1.0, 0.0)) { fishingResults.lostBait = true; } else if (RNG.getRandomBool_FromFraction(propertyValue3, 1.0, 0.0)) { string[] array = new string[5] { "tiny", "small", "medium", "big", "huge" }; double[] array2 = new double[5] { propertyValue6, propertyValue8, propertyValue10, propertyValue12, propertyValue14 }; int num = -1; do { string text = ""; List<CardInfo> list = new List<CardInfo>(); List<double> list2 = new List<double>(); if (array2[0] + array2[1] + array2[2] + array2[3] + array2[4] > 0.0) { text = RNG.getRandomThings_FromArray<string>(array, array2, 0.0); string propertyId = "GeckVolantMarin.AnglerFishingNode.NewProperties." + text + "FishCatchProbabilityWeights"; foreach (CardInfo item in CardManager.AllCardsCopy) { double propertyValue40 = 0.0; loadCustomPropertyAsDouble(item, propertyId, ref propertyValue40); if (propertyValue40 > 0.0) { list.Add(item); list2.Add(propertyValue40); } } } for (int i = 0; i < propertyKey.Count(); i++) { list.Add(propertyKey[i]); list2.Add(propertyValue16[i]); } double num2 = propertyValue4; if (array2[0] + array2[1] + array2[2] + array2[3] + array2[4] > 0.0) { switch (text) { case "tiny": num2 += propertyValue7; break; case "small": num2 += propertyValue9; break; case "medium": num2 += propertyValue11; break; case "big": num2 += propertyValue13; break; case "huge": num2 += propertyValue15; break; } } CardInfo randomThings_FromArray = RNG.getRandomThings_FromArray<CardInfo>(list.ToArray(), list2.ToArray(), num2); if (num == -1) { ((Card)fishBaitSlot.Card).SetInfo(randomThings_FromArray); fishingResults.catchedFish.Add(fishBaitSlot.Card); } else { GameObject val = Object.Instantiate<GameObject>(ResourceBank.Get<GameObject>("Prefabs/SpecialNodeSequences/CardRemoveSequencer"), ((Component)Singleton<SpecialNodeHandler>.Instance).transform); CardRemoveSequencer component = val.GetComponent<CardRemoveSequencer>(); SelectableCard val2 = ((CardChoicesSequencer)component).SpawnCard(pondGameObject.transform); ((Card)val2).SetInfo(randomThings_FromArray); ((Component)val2).gameObject.SetActive(true); ((InteractableBase)val2).SetEnabled(true); ((Component)val2).gameObject.transform.position = cardHolder.transform.position; ((Component)val2).gameObject.transform.localPosition = cardHolder.transform.localPosition; ((Component)val2).gameObject.transform.rotation = cardHolder.transform.rotation; ((Component)val2).gameObject.transform.localRotation = cardHolder.transform.localRotation; ((Component)val2).transform.position = new Vector3(0.26f, 6.2218f, 1.2109f); ((Component)val2).transform.localRotation = Quaternion.Euler(289.5936f, 0f, 0f); ((Component)val2).gameObject.transform.Translate(new Vector3(0f, -4.2f, 0.1f)); Object.Destroy((Object)(object)component); Object.Destroy((Object)(object)val); fishingResults.catchedFish.Add(val2); } num++; } while (num < propertyValue5.Count() && RNG.getRandomBool_FromFraction(propertyValue5[num], 1.0, 0.0)); } if (RNG.getRandomBool_FromFraction(propertyValue17, 1.0, 0.0)) { string[] array3 = new string[2] { "Card", "Boon" }; double[] array4 = new double[2] { propertyValue20, propertyValue22 }; int num3 = -1; do { string text2 = ""; string text3 = ""; List<CardInfo> list3 = new List<CardInfo>(); List<double> list4 = new List<double>(); text2 = RNG.getRandomThings_FromArray<string>(array3, array4, 0.0); text3 = "GeckVolantMarin.AnglerFishingNode.NewProperties.loot" + text2 + "FoundProbabilityWeights"; foreach (CardInfo item2 in CardManager.AllCardsCopy) { double propertyValue41 = 0.0; loadCustomPropertyAsDouble(item2, text3, ref propertyValue41); if (propertyValue41 > 0.0) { list3.Add(item2); list4.Add(propertyValue41); } } double num4 = propertyValue18; if (text2 == "Card") { for (int j = 0; j < propertyKey2.Count(); j++) { list3.Add(propertyKey2[j]); list4.Add(propertyValue24[j]); } num4 += propertyValue21; } else if (text2 == "Boon") { for (int k = 0; k < propertyKey3.Count(); k++) { list3.Add(propertyKey3[k]); list4.Add(propertyValue25[k]); } num4 += propertyValue23; } CardInfo randomThings_FromArray2 = RNG.getRandomThings_FromArray<CardInfo>(list3.ToArray(), list4.ToArray(), num4); GameObject val3 = Object.Instantiate<GameObject>(ResourceBank.Get<GameObject>("Prefabs/SpecialNodeSequences/CardRemoveSequencer"), ((Component)Singleton<SpecialNodeHandler>.Instance).transform); CardRemoveSequencer component2 = val3.GetComponent<CardRemoveSequencer>(); SelectableCard val4 = ((CardChoicesSequencer)component2).SpawnCard(pondGameObject.transform); ((Card)val4).SetInfo(randomThings_FromArray2); ((Component)val4).gameObject.SetActive(true); ((InteractableBase)val4).SetEnabled(true); ((Component)val4).gameObject.transform.position = cardHolder.transform.position; ((Component)val4).gameObject.transform.localPosition = cardHolder.transform.localPosition; ((Component)val4).gameObject.transform.rotation = cardHolder.transform.rotation; ((Component)val4).gameObject.transform.localRotation = cardHolder.transform.localRotation; ((Component)val4).transform.position = new Vector3(0.26f, 6.2218f, 1.2109f); ((Component)val4).transform.localRotation = Quaternion.Euler(289.5936f, 0f, 0f); ((Component)val4).gameObject.transform.Translate(new Vector3(0f, -4.2f, 0.1f)); Object.Destroy((Object)(object)component2); Object.Destroy((Object)(object)val3); if (text2 == "Card") { fishingResults.foundCardLoots.Add(val4); } else if (text2 == "Boon") { fishingResults.foundBoonLoots.Add(val4); } num3++; } while (num3 < propertyValue5.Count() && RNG.getRandomBool_FromFraction(propertyValue5[num3], 1.0, 0.0)); } if (RNG.getRandomBool_FromFraction(propertyValue26, 1.0, 0.0)) { string[] array5 = new string[5] { "tiny", "small", "medium", "big", "huge" }; double[] array6 = new double[5] { propertyValue29, propertyValue31, propertyValue33, propertyValue35, propertyValue37 }; int num5 = -1; do { string text4 = ""; List<CardInfo> list5 = new List<CardInfo>(); List<double> list6 = new List<double>(); if (array6[0] + array6[1] + array6[2] + array6[3] + array6[4] > 0.0) { text4 = RNG.getRandomThings_FromArray<string>(array5, array6, 0.0); string propertyId2 = "GeckVolantMarin.AnglerFishingNode.NewProperties." + text4 + "CreatureRescueProbabilityWeights"; foreach (CardInfo item3 in CardManager.AllCardsCopy) { double propertyValue42 = 0.0; loadCustomPropertyAsDouble(item3, propertyId2, ref propertyValue42); if (propertyValue42 > 0.0) { list5.Add(item3); list6.Add(propertyValue42); } } } for (int l = 0; l < propertyKey4.Count(); l++) { list5.Add(propertyKey4[l]); list6.Add(propertyValue39[l]); } double num6 = propertyValue4; if (array6[0] + array6[1] + array6[2] + array6[3] + array6[4] > 0.0) { switch (text4) { case "tiny": num6 += propertyValue30; break; case "small": num6 += propertyValue32; break; case "medium": num6 += propertyValue34; break; case "big": num6 += propertyValue36; break; case "huge": num6 += propertyValue38; break; } } CardInfo randomThings_FromArray3 = RNG.getRandomThings_FromArray<CardInfo>(list5.ToArray(), list6.ToArray(), num6); GameObject val5 = Object.Instantiate<GameObject>(ResourceBank.Get<GameObject>("Prefabs/SpecialNodeSequences/CardRemoveSequencer"), ((Component)Singleton<SpecialNodeHandler>.Instance).transform); CardRemoveSequencer component3 = val5.GetComponent<CardRemoveSequencer>(); SelectableCard val6 = ((CardChoicesSequencer)component3).SpawnCard(pondGameObject.transform); ((Card)val6).SetInfo(randomThings_FromArray3); ((Component)val6).gameObject.SetActive(true); ((InteractableBase)val6).SetEnabled(true); ((Component)val6).gameObject.transform.position = cardHolder.transform.position; ((Component)val6).gameObject.transform.localPosition = cardHolder.transform.localPosition; ((Component)val6).gameObject.transform.rotation = cardHolder.transform.rotation; ((Component)val6).gameObject.transform.localRotation = cardHolder.transform.localRotation; ((Component)val6).transform.position = new Vector3(0.26f, 6.2218f, 1.2109f); ((Component)val6).transform.localRotation = Quaternion.Euler(289.5936f, 0f, 0f); ((Component)val6).gameObject.transform.Translate(new Vector3(0f, -4.2f, 0.1f)); Object.Destroy((Object)(object)component3); Object.Destroy((Object)(object)val5); fishingResults.rescuedCreature.Add(val6); num5++; } while (num5 < propertyValue28.Count() && RNG.getRandomBool_FromFraction(propertyValue28[num5], 1.0, 0.0)); } } return fishingResults; } private IEnumerator OnRevealFish(FishingResults fishResults, CardInfo baitInfo) { if (fishResults.lostBait) { string baitLossDialogueMessage; if (fishResults.foundBoonLoots.Count > 0 || fishResults.foundCardLoots.Count > 0 || fishResults.rescuedCreature.Count > 0) { if (CardManager.GetCardExtensionTable(baitInfo).TryGetValue(NewProperties.baitDerivationDialogueMessage, out var baitDerivationDialogueMessage)) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput(baitDerivationDialogueMessage, -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput(baitInfo.displayedName + " swam away... but left gift.", -0.65f, 0.4f, (Emotion)5, (LetterAnimation)1, (Speaker)0, (string[])null, true); } foreach (SelectableCard card4 in fishResults.rescuedCreature) { ((Card)card4).Anim.PlayQuickRiffleSound(); if (CardManager.GetCardExtensionTable(((Card)card4).Info).TryGetValue(NewProperties.creatureRescueExamineDialogue, out var creatureRescueExamineDialogue2)) { yield return ((CardChoicesSequencer)this).ExamineCardWithDialogue(card4, creatureRescueExamineDialogue2); } else { yield return ((CardChoicesSequencer)this).ExamineCardWithDialogue(card4, "It rescued a " + ((Card)card4).Info.displayedName + ": " + ((Card)card4).Info.description); } ((CardCollectionInfo)RunState.Run.playerDeck).AddCard(((Card)card4).Info); Object.Destroy((Object)(object)card4); creatureRescueExamineDialogue2 = null; } foreach (SelectableCard card3 in fishResults.foundCardLoots) { ((Card)card3).Anim.PlayQuickRiffleSound(); if (CardManager.GetCardExtensionTable(((Card)card3).Info).TryGetValue(NewProperties.lootFoundExamineDialogue, out var lootFoundExamineDialogue4)) { yield return ((CardChoicesSequencer)this).ExamineCardWithDialogue(card3, lootFoundExamineDialogue4); } else { yield return ((CardChoicesSequencer)this).ExamineCardWithDialogue(card3, "It found you a " + ((Card)card3).Info.displayedName + ": " + ((Card)card3).Info.description); } ((CardCollectionInfo)RunState.Run.playerDeck).AddCard(((Card)card3).Info); Object.Destroy((Object)(object)card3); lootFoundExamineDialogue4 = null; } foreach (SelectableCard card2 in fishResults.foundBoonLoots) { ((Card)card2).Anim.PlayQuickRiffleSound(); if (CardManager.GetCardExtensionTable(((Card)card2).Info).TryGetValue(NewProperties.lootFoundExamineDialogue, out var lootFoundExamineDialogue3)) { yield return ((CardChoicesSequencer)this).ExamineCardWithDialogue(card2, lootFoundExamineDialogue3); } else { yield return ((CardChoicesSequencer)this).ExamineCardWithDialogue(card2, "It found you a " + BoonManager.GetFullBoon(((Card)card2).Info.boon).boon.displayedName + ": " + BoonManager.GetFullBoon(((Card)card2).Info.boon).boon.description); } RunState.Run.playerDeck.AddBoon(((Card)card2).Info.boon); Object.Destroy((Object)(object)card2); lootFoundExamineDialogue3 = null; } } else if (CardManager.GetCardExtensionTable(baitInfo).TryGetValue(NewProperties.baitLossDialogueMessage, out baitLossDialogueMessage)) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput(baitLossDialogueMessage, -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("Lost bait... No fish...", -0.65f, 0.4f, (Emotion)2, (LetterAnimation)1, (Speaker)0, (string[])null, true); } yield break; } string baitCatchMoreThen1DialogueMessage; if (fishResults.catchedFish.Count == 0) { string baitRescueMoreThen1DialogueMessage; if (fishResults.rescuedCreature.Count == 0) { string baitLootMoreThen1DialogueMessage; if (fishResults.foundBoonLoots.Count + fishResults.foundCardLoots.Count == 0) { if (CardManager.GetCardExtensionTable(baitInfo).TryGetValue(NewProperties.baitCatch0Loot0Rescue0DialogueMessage, out var baitCatch0Loot0Rescue0DialogueMessage)) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput(baitCatch0Loot0Rescue0DialogueMessage, -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("No fish...", -0.65f, 0.4f, (Emotion)3, (LetterAnimation)1, (Speaker)0, (string[])null, true); } } else if (fishResults.foundBoonLoots.Count + fishResults.foundCardLoots.Count == 1) { if (CardManager.GetCardExtensionTable(baitInfo).TryGetValue(NewProperties.baitLoot1DialogueMessage, out var baitLoot1DialogueMessage)) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput(baitLoot1DialogueMessage, -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("No fish... but bait found something.", -0.65f, 0.4f, (Emotion)5, (LetterAnimation)1, (Speaker)0, (string[])null, true); } } else if (CardManager.GetCardExtensionTable(baitInfo).TryGetValue(NewProperties.baitLootMoreThen1DialogueMessage, out baitLootMoreThen1DialogueMessage)) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput(baitLootMoreThen1DialogueMessage, -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("No fish... but bait found many things.", -0.65f, 0.4f, (Emotion)4, (LetterAnimation)1, (Speaker)0, (string[])null, true); } } else if (fishResults.rescuedCreature.Count == 1) { if (CardManager.GetCardExtensionTable(baitInfo).TryGetValue(NewProperties.baitRescue1DialogueMessage, out var baitRescue1DialogueMessage)) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput(baitRescue1DialogueMessage, -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("No fish... but bait rescued creature.", -0.65f, 0.4f, (Emotion)4, (LetterAnimation)1, (Speaker)0, (string[])null, true); } } else if (CardManager.GetCardExtensionTable(baitInfo).TryGetValue(NewProperties.baitRescueMoreThen1DialogueMessage, out baitRescueMoreThen1DialogueMessage)) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput(baitRescueMoreThen1DialogueMessage, -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("Bait rescued many creatures.", -0.65f, 0.4f, (Emotion)4, (LetterAnimation)1, (Speaker)0, (string[])null, true); } } else if (fishResults.catchedFish.Count == 1) { if (CardManager.GetCardExtensionTable(baitInfo).TryGetValue(NewProperties.baitCatch1DialogueMessage, out var baitCatch1DialogueMessage)) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput(baitCatch1DialogueMessage, -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("Got fish.", -0.65f, 0.4f, (Emotion)5, (LetterAnimation)1, (Speaker)0, (string[])null, true); } } else if (CardManager.GetCardExtensionTable(baitInfo).TryGetValue(NewProperties.baitCatchMoreThen1DialogueMessage, out baitCatchMoreThen1DialogueMessage)) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput(baitCatchMoreThen1DialogueMessage, -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("Lucky you! Got many fish.", -0.65f, 0.4f, (Emotion)4, (LetterAnimation)1, (Speaker)0, (string[])null, true); } if (fishResults.catchedFish.Count > 0) { foreach (SelectableCard fish in fishResults.catchedFish) { ((Card)fish).Anim.PlayQuickRiffleSound(); if (CardManager.GetCardExtensionTable(((Card)fish).Info).TryGetValue(NewProperties.fishCatchedExamineDialogue, out var fishCatchedExamineDialogue)) { yield return ((CardChoicesSequencer)this).ExamineCardWithDialogue(fish, fishCatchedExamineDialogue); } else { yield return ((CardChoicesSequencer)this).ExamineCardWithDialogue(fish, "Catched " + ((Card)fish).Info.displayedName + ": " + ((Card)fish).Info.description); } ((CardCollectionInfo)RunState.Run.playerDeck).AddCard(((Card)fish).Info); ((InteractableBase)fish).SetEnabled(false); ((Component)fish).gameObject.SetActive(false); Object.Destroy((Object)(object)fish); fishCatchedExamineDialogue = null; } string baitAlsoRescueMoreThen1DialogueMessage; if (fishResults.rescuedCreature.Count == 0) { if (fishResults.foundBoonLoots.Count + fishResults.foundCardLoots.Count != 0) { string baitAlsoLootMoreThen1DialogueMessage2; if (fishResults.foundBoonLoots.Count + fishResults.foundCardLoots.Count == 1) { if (CardManager.GetCardExtensionTable(baitInfo).TryGetValue(NewProperties.baitAlsoLoot1DialogueMessage, out var baitAlsoLoot1DialogueMessage2)) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput(baitAlsoLoot1DialogueMessage2, -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("Also, bait found something.", -0.65f, 0.4f, (Emotion)5, (LetterAnimation)1, (Speaker)0, (string[])null, true); } } else if (CardManager.GetCardExtensionTable(baitInfo).TryGetValue(NewProperties.baitAlsoLootMoreThen1DialogueMessage, out baitAlsoLootMoreThen1DialogueMessage2)) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput(baitAlsoLootMoreThen1DialogueMessage2, -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("Also, bait found many things.", -0.65f, 0.4f, (Emotion)4, (LetterAnimation)1, (Speaker)0, (string[])null, true); } } } else if (fishResults.rescuedCreature.Count == 1) { if (CardManager.GetCardExtensionTable(baitInfo).TryGetValue(NewProperties.baitAlsoRescue1DialogueMessage, out var baitAlsoRescue1DialogueMessage)) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput(baitAlsoRescue1DialogueMessage, -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("No fish... but bait rescued creature.", -0.65f, 0.4f, (Emotion)4, (LetterAnimation)1, (Speaker)0, (string[])null, true); } } else if (CardManager.GetCardExtensionTable(baitInfo).TryGetValue(NewProperties.baitAlsoRescueMoreThen1DialogueMessage, out baitAlsoRescueMoreThen1DialogueMessage)) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput(baitAlsoRescueMoreThen1DialogueMessage, -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("Bait rescued many creatures.", -0.65f, 0.4f, (Emotion)4, (LetterAnimation)1, (Speaker)0, (string[])null, true); } } if (fishResults.rescuedCreature.Count > 0) { foreach (SelectableCard rescue in fishResults.rescuedCreature) { ((Card)rescue).Anim.PlayQuickRiffleSound(); if (CardManager.GetCardExtensionTable(((Card)rescue).Info).TryGetValue(NewProperties.creatureRescueExamineDialogue, out var creatureRescueExamineDialogue)) { yield return ((CardChoicesSequencer)this).ExamineCardWithDialogue(rescue, creatureRescueExamineDialogue); } else { yield return ((CardChoicesSequencer)this).ExamineCardWithDialogue(rescue, ((Card)rescue).Info.displayedName + " was rescued: " + ((Card)rescue).Info.description); } ((CardCollectionInfo)RunState.Run.playerDeck).AddCard(((Card)rescue).Info); ((InteractableBase)rescue).SetEnabled(false); ((Component)rescue).gameObject.SetActive(false); Object.Destroy((Object)(object)rescue); creatureRescueExamineDialogue = null; } if (fishResults.foundBoonLoots.Count + fishResults.foundCardLoots.Count != 0) { string baitAlsoLootMoreThen1DialogueMessage; if (fishResults.foundBoonLoots.Count + fishResults.foundCardLoots.Count == 1) { if (CardManager.GetCardExtensionTable(baitInfo).TryGetValue(NewProperties.baitAlsoLoot1DialogueMessage, out var baitAlsoLoot1DialogueMessage)) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput(baitAlsoLoot1DialogueMessage, -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("Also, bait found something.", -0.65f, 0.4f, (Emotion)5, (LetterAnimation)1, (Speaker)0, (string[])null, true); } } else if (CardManager.GetCardExtensionTable(baitInfo).TryGetValue(NewProperties.baitAlsoLootMoreThen1DialogueMessage, out baitAlsoLootMoreThen1DialogueMessage)) { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput(baitAlsoLootMoreThen1DialogueMessage, -0.65f, 0.4f, (Emotion)0, (LetterAnimation)1, (Speaker)0, (string[])null, true); } else { yield return Singleton<TextDisplayer>.Instance.ShowUntilInput("Also, bait found many things.", -0.65f, 0.4f, (Emotion)4, (LetterAnimation)1, (Speaker)0, (string[])null, true); } } } if (fishResults.foundBoonLoots.Count + fishResults.foundCardLoots.Count > 0) { foreach (SelectableCard card in fishResults.foundCardLoots) { ((Card)card).Anim.PlayQuickRiffleSound(); if (CardManager.GetCardExtensionTable(((Card)card).Info).TryGetValue(NewProperties.lootFoundExamineDialogue, out var lootFoundExamineDialogue2)) { yield return ((CardChoicesSequencer)this).ExamineCardWithDialogue(card, lootFoundExamineDialogue2); } else { yield return ((CardChoicesSequencer)this).ExamineCardWithDialogue(card, "Bait found " + ((Card)card).Info.displayedName + ": " + ((Card)card).Info.description); } ((CardCollectionInfo)RunState.Run.playerDeck).AddCard(((Card)card).Info); ((InteractableBase)card).SetEnabled(false); ((Component)card).gameObject.SetActive(false); Object.Destroy((Object)(object)card); lootFoundExamineDialogue2 = null; } foreach (SelectableCard boon in fishResults.foundBoonLoots) { ((Card)boon).Anim.PlayQuickRiffleSound(); if (CardManager.GetCardExtensionTable(((Card)boon).Info).TryGetValue(NewProperties.lootFoundExamineDialogue, out var lootFoundExamineDialogue)) { yield return ((CardChoicesSequencer)this).ExamineCardWithDialogue(boon, lootFoundExamineDialogue); } else { yield return ((CardChoicesSequencer)this).ExamineCardWithDialogue(boon, "Bait found " + BoonManager.GetFullBoon(((Card)boon).Info.boon).boon.displayedName + ": " + BoonManager.GetFullBoon(((Card)boon).Info.boon).boon.description); } RunState.Run.playerDeck.AddBoon(((Card)boon).Info.boon); ((InteractableBase)boon).SetEnabled(false); ((Component)boon).gameObject.SetActive(false); Object.Destroy((Object)(object)boon); lootFoundExamineDialogue = null; } } if (fishResults.catchedFish.Count == 0) { ((Card)fishBaitSlot.Card).Anim.PlayQuickRiffleSound(); if (CardManager.GetCardExtensionTable(((Card)fishBaitSlot.Card).Info).TryGetValue(NewProperties.baitKeepDialogueMessage, out var baitKeepDialogueMessage)) { yield return ((CardChoicesSequencer)this).ExamineCardWithDialogue(fishBaitSlot.Card, baitKeepDialogueMessage); } else { yield return ((CardChoicesSequencer)this).ExamineCardWithDialogue(fishBaitSlot.Card, "Keep bait."); } ((CardCollectionInfo)RunState.Run.playerDeck).AddCard(baitInfo); Object.Destroy((Object)(object)fishBaitSlot.Card); } if (Object.op_Implicit((Object)(object)fishBaitSlot.Card)) { ((InteractableBase)fishBaitSlot.Card).SetEnabled(false); ((Component)fishBaitSlot.Card).gameObject.SetActive(false); Object.Destroy((Object)(object)fishBaitSlot.Card); } } private static void addTinyRescue() { CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Lice"), NewProperties.tinyCreatureRescueProbabilityWeights, (object)"1.0"), NewProperties.creatureRescueExamineDialogue, (object)"Looks like bait brang back parasite."); } private static void addSmallRescue() { CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("AquaSquirrel"), NewProperties.smallCreatureRescueProbabilityWeights, (object)"1.0"), NewProperties.creatureRescueExamineDialogue, (object)"You \"rescued\" an AquaSquirrel from drowning."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Geck"), NewProperties.smallCreatureRescueProbabilityWeights, (object)"1.0"), NewProperties.creatureRescueExamineDialogue, (object)"Poor geck tried to swim, now he's safe."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("RavenEgg"), NewProperties.smallCreatureRescueProbabilityWeights, (object)"1.0"), NewProperties.creatureRescueExamineDialogue, (object)"A Raven Egg, must have fallen from its nest."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Bullfrog"), NewProperties.smallCreatureRescueProbabilityWeights, (object)"1.0"), NewProperties.creatureRescueExamineDialogue, (object)"You \"rescued\" a Bullfrog from drowning."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Stoat"), NewProperties.smallCreatureRescueProbabilityWeights, (object)"1.0"), NewProperties.creatureRescueExamineDialogue, (object)"Stoat didn't know how to swim."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Opossum"), NewProperties.smallCreatureRescueProbabilityWeights, (object)"1.0"), NewProperties.creatureRescueExamineDialogue, (object)"Saved a little possum"); } private static void addMediumRescue() { CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Adder"), NewProperties.mediumCreatureRescueProbabilityWeights, (object)"1.0"), NewProperties.creatureRescueExamineDialogue, (object)"Adder swimed by, now it's with you."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Cat"), NewProperties.mediumCreatureRescueProbabilityWeights, (object)"1.0"), NewProperties.creatureRescueExamineDialogue, (object)"Cat did not like water, now happy."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("WolfCub"), NewProperties.mediumCreatureRescueProbabilityWeights, (object)"1.0"), NewProperties.creatureRescueExamineDialogue, (object)"Little cub did not know how to swim."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Otter"), NewProperties.mediumCreatureRescueProbabilityWeights, (object)"1.0"), NewProperties.creatureRescueExamineDialogue, (object)"You \"rescued\" an Otter."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Kingfisher"), NewProperties.mediumCreatureRescueProbabilityWeights, (object)"1.0"), NewProperties.creatureRescueExamineDialogue, (object)"A Kingfisher decided that it was following you."); } private static void addBigRescue() { CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Coyote"), NewProperties.bigCreatureRescueProbabilityWeights, (object)"1.0"), NewProperties.creatureRescueExamineDialogue, (object)"Coyote had fallen into the water."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("ElkCub"), NewProperties.bigCreatureRescueProbabilityWeights, (object)"1.0"), NewProperties.creatureRescueExamineDialogue, (object)"Poor cub did not know how to swim"); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("SkeletonPirate"), NewProperties.bigCreatureRescueProbabilityWeights, (object)"0.5"), NewProperties.creatureRescueExamineDialogue, (object)"Skeleton Pirate has joined the party"); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Snapper"), NewProperties.bigCreatureRescueProbabilityWeights, (object)"1.0"), NewProperties.creatureRescueExamineDialogue, (object)"You \"rescued\" a River Snapper."); } private static void addHugeRescue() { CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("MoleSeaman"), NewProperties.hugeCreatureRescueProbabilityWeights, (object)"1.0"), NewProperties.creatureRescueExamineDialogue, (object)"MoleSeaman joined the party."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Grizzly"), NewProperties.hugeCreatureRescueProbabilityWeights, (object)"1.0"), NewProperties.creatureRescueExamineDialogue, (object)"Poor grizz, did not know swim."); } private static void addTinyFish() { CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Tadpole"), NewProperties.tinyFishCatchProbabilityWeights, (object)"1.0"), NewProperties.fishCatchedExamineDialogue, (object)"A tiny Tadpole ate your bait."); } private static void addSmallFish() { CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("AquaSquirrel"), NewProperties.smallFishCatchProbabilityWeights, (object)"1.0"), NewProperties.fishCatchedExamineDialogue, (object)"AquaSquirrel was hungry."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Geck"), NewProperties.smallFishCatchProbabilityWeights, (object)"1.0"), NewProperties.fishCatchedExamineDialogue, (object)"Geck bit on your bait"); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Bullfrog"), NewProperties.smallFishCatchProbabilityWeights, (object)"1.0"), NewProperties.fishCatchedExamineDialogue, (object)"A Bullfrog took the bait."); } private static void addMediumFish() { CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Kingfisher"), NewProperties.mediumFishCatchProbabilityWeights, (object)"1.0"), NewProperties.fishCatchedExamineDialogue, (object)"Kingfisher flew right at your bait."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("MudTurtle"), NewProperties.mediumFishCatchProbabilityWeights, (object)"1.0"), NewProperties.fishCatchedExamineDialogue, (object)"MudTurtle was hungry."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Beaver"), NewProperties.mediumFishCatchProbabilityWeights, (object)"1.0"), NewProperties.fishCatchedExamineDialogue, (object)"You catched a Beaver, he was building a dam nearby."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Otter"), NewProperties.mediumFishCatchProbabilityWeights, (object)"1.0"), NewProperties.fishCatchedExamineDialogue, (object)"An Otter took the bait."); } private static void addBigFish() { CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Snapper"), NewProperties.bigFishCatchProbabilityWeights, (object)"1.0"), NewProperties.fishCatchedExamineDialogue, (object)"River Snapper was hungry."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("SquidBell"), NewProperties.bigFishCatchProbabilityWeights, (object)"1.0"), NewProperties.fishCatchedExamineDialogue, (object)"A tentacle emerged."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("SquidCards"), NewProperties.bigFishCatchProbabilityWeights, (object)"1.0"), NewProperties.fishCatchedExamineDialogue, (object)"A tentacle emerged."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("SquidMirror"), NewProperties.bigFishCatchProbabilityWeights, (object)"1.0"), NewProperties.fishCatchedExamineDialogue, (object)"A tentacle emerged."); } private static void addHugeFish() { CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Kraken"), NewProperties.hugeFishCatchProbabilityWeights, (object)"1.0"), NewProperties.fishCatchedExamineDialogue, (object)"A tentacle emerged, and a Kraken appeard."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Hydra"), NewProperties.hugeFishCatchProbabilityWeights, (object)"1.0"), NewProperties.fishCatchedExamineDialogue, (object)"You catched an Hydra!"); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("MoleSeaman"), NewProperties.hugeFishCatchProbabilityWeights, (object)"1.0"), NewProperties.fishCatchedExamineDialogue, (object)"MoleSeaman joined your party."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Grizzly"), NewProperties.hugeFishCatchProbabilityWeights, (object)"1.0"), NewProperties.fishCatchedExamineDialogue, (object)"A huge Grizz emerged from the water."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Shark"), NewProperties.hugeFishCatchProbabilityWeights, (object)"1.0"), NewProperties.fishCatchedExamineDialogue, (object)"Good fish."); } private static void addCardLoot() { CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Amoeba"), NewProperties.lootCardFoundProbabilityWeights, (object)"2.0"), NewProperties.lootFoundExamineDialogue, (object)"Some goo got stuck to your rod."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Boulder"), NewProperties.lootCardFoundProbabilityWeights, (object)"6.0"), NewProperties.lootFoundExamineDialogue, (object)"You found a Boulder."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("BrokenEgg"), NewProperties.lootCardFoundProbabilityWeights, (object)"5.0"), NewProperties.lootFoundExamineDialogue, (object)"A Broken Egg, must have fell from its nest."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Dam"), NewProperties.lootCardFoundProbabilityWeights, (object)"6.0"), NewProperties.lootFoundExamineDialogue, (object)"You found a Dam, a Beaver must be nearby."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("DefaultTail"), NewProperties.lootCardFoundProbabilityWeights, (object)"3.0"), NewProperties.lootFoundExamineDialogue, (object)"You reeled back a tail."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("FrozenOpossum"), NewProperties.lootCardFoundProbabilityWeights, (object)"2.0"), NewProperties.lootFoundExamineDialogue, (object)"A Frozen Possum was floating, wonder how it got there."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("SkinkTail"), NewProperties.lootCardFoundProbabilityWeights, (object)"3.0"), NewProperties.lootFoundExamineDialogue, (object)"You reeled back a tail."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Snelk_Neck"), NewProperties.lootCardFoundProbabilityWeights, (object)"1.0"), NewProperties.lootFoundExamineDialogue, (object)"You found some bones."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Stump"), NewProperties.lootCardFoundProbabilityWeights, (object)"6.0"), NewProperties.lootFoundExamineDialogue, (object)"After much effort, you reeled back a Stump."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Tail_Bird"), NewProperties.lootCardFoundProbabilityWeights, (object)"3.0"), NewProperties.lootFoundExamineDialogue, (object)"You reeled back some feathers."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Tail_Furry"), NewProperties.lootCardFoundProbabilityWeights, (object)"3.0"), NewProperties.lootFoundExamineDialogue, (object)"You reeled back a tail."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Tail_Insect"), NewProperties.lootCardFoundProbabilityWeights, (object)"3.0"), NewProperties.lootFoundExamineDialogue, (object)"You reeled back a tail."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Tree"), NewProperties.lootCardFoundProbabilityWeights, (object)"5.0"), NewProperties.lootFoundExamineDialogue, (object)"After much effort, you reeled back a Stump."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("!STATIC!GLITCH"), NewProperties.lootCardFoundProbabilityWeights, (object)"1.0"), NewProperties.lootFoundExamineDialogue, (object)"01100110 01101111 01110101 01101110 01100100 01101001 01110100 01100001 01100111 01100001 01101001 01101110"); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("BaitBucket"), NewProperties.lootCardFoundProbabilityWeights, (object)"1.0"), NewProperties.lootFoundExamineDialogue, (object)"My baits! Keep some, my treat"); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("DausBell"), NewProperties.lootCardFoundProbabilityWeights, (object)"1.5"), NewProperties.lootFoundExamineDialogue, (object)"A Daus Bell got stuck to your line."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("GoldNugget"), NewProperties.lootCardFoundProbabilityWeights, (object)"0.5"), NewProperties.lootFoundExamineDialogue, (object)"A Gold Nugget, the Prospector would be jealous."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("PeltGolden"), NewProperties.lootCardFoundProbabilityWeights, (object)"0.5"), NewProperties.lootFoundExamineDialogue, (object)"I bet the tradder would want some."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("PeltHare"), NewProperties.lootCardFoundProbabilityWeights, (object)"1.5"), NewProperties.lootFoundExamineDialogue, (object)"I bet the tradder would want some."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("PeltWolf"), NewProperties.lootCardFoundProbabilityWeights, (object)"1.0"), NewProperties.lootFoundExamineDialogue, (object)"I bet the tradder would want some."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Trap"), NewProperties.lootCardFoundProbabilityWeights, (object)"1.0"), NewProperties.lootFoundExamineDialogue, (object)"Must be from the trad-- I mean the trapper."); } private static void addBoonLoot() { CardInfo val = CardExtensions.SetExtendedProperty(BoonsUtil.CreateCardForBoon((Type)1), NewProperties.lootBoonFoundProbabilityWeights, (object)"1.0"); ((Object)val).name = "DoubleDraw"; CardManager.Add("Boon", val); val = CardExtensions.SetExtendedProperty(BoonsUtil.CreateCardForBoon((Type)7), NewProperties.lootBoonFoundProbabilityWeights, (object)"10.0"); ((Object)val).name = "MinorStartingBones"; CardExtensions.SetExtendedProperty(val, NewProperties.lootFoundExamineDialogue, (object)"You got Bone boon, start battle with 1 more bones."); CardManager.Add("Boon", val); val = CardExtensions.SetExtendedProperty(BoonsUtil.CreateCardForBoon((Type)6), NewProperties.lootBoonFoundProbabilityWeights, (object)"1.0"); ((Object)val).name = "StartingBones"; CardExtensions.SetExtendedProperty(val, NewProperties.lootFoundExamineDialogue, (object)"You got minor bone boon, start battle with 8 more bone."); CardManager.Add("Boon", val); val = CardExtensions.SetExtendedProperty(BoonsUtil.CreateCardForBoon((Type)4), NewProperties.lootBoonFoundProbabilityWeights, (object)"1.0"); ((Object)val).name = "StartingGoat"; CardManager.Add("Boon", val); val = CardExtensions.SetExtendedProperty(BoonsUtil.CreateCardForBoon((Type)5), NewProperties.lootBoonFoundProbabilityWeights, (object)"1.0"); ((Object)val).name = "StartingTrees"; CardManager.Add("Boon", val); val = CardExtensions.SetExtendedProperty(BoonsUtil.CreateCardForBoon((Type)2), NewProperties.lootBoonFoundProbabilityWeights, (object)"1.0"); ((Object)val).name = "TutorDraw"; CardManager.Add("Boon", val); } private static void addBait() { CardLoader.GetCardByName("!GIANTCARD_SHIP"); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("MoleSeaman"), NewProperties.baitAboutToDiveExamineDialogue, (object)"MoleSeaman will try and find you stuff."), NewProperties.baitKeepDialogueMessage, (object)"You can keep MoleSeaman."), NewProperties.baitCatch0Loot0Rescue0DialogueMessage, (object)"If you see this dialogue in-game, please report to @Heartslot with a screenshot."), NewProperties.baitRescueCreatureProbability, (object)"0.7"), NewProperties.baitRescueBonusCreaturesProbabilities, (object)"[0.6, 0.4, 0.2]"), NewProperties.baitRescueCreatureGlobalLuck, (object)"0.0"), NewProperties.baitRescueTinyCreatureProbabilityWeight, (object)"3.0"), NewProperties.baitRescueTinyCreatureLuck, (object)"0.0"), NewProperties.baitRescueSmallCreatureProbabilityWeight, (object)"4.0"), NewProperties.baitRescueSmallCreatureLuck, (object)"0.0"), NewProperties.baitRescueMediumCreatureProbabilityWeight, (object)"5.0"), NewProperties.baitRescueMediumCreatureLuck, (object)"0.0"), NewProperties.baitRescueBigCreatureProbabilityWeight, (object)"5.0"), NewProperties.baitRescueBigCreatureLuck, (object)"0.0"), NewProperties.baitRescueHugeCreatureProbabilityWeight, (object)"3.0"), NewProperties.baitRescueHugeCreatureLuck, (object)"0.0"), NewProperties.baitRescue1DialogueMessage, (object)"MoleSeaman saved a creature."), NewProperties.baitRescueMoreThen1DialogueMessage, (object)"MoleSeaman saved some creatures."), NewProperties.baitFindLootProbability, (object)"1.0"), NewProperties.baitFindBonusLootsProbabilities, (object)"[1.0, 0.8, 0.6, 0.4, 0.2]"), NewProperties.baitFindLootGlobalLuck, (object)"0.0"), NewProperties.baitFindBoonLootProbabilityWeight, (object)"0.0"), NewProperties.baitFindBoonLootLuck, (object)"0.0"), NewProperties.baitFindCardLootProbabilityWeight, (object)"1.0"), NewProperties.baitFindCardLootLuck, (object)"1.8"), NewProperties.baitLootMoreThen1DialogueMessage, (object)"MoleSeaman found some treasures."), NewProperties.baitAlsoLootMoreThen1DialogueMessage, (object)"MoleSeaman also found some other treasures."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("SkeletonParrot"), NewProperties.baitLossDialogueMessage, (object)"No fish..."), NewProperties.baitCatch0Loot0Rescue0DialogueMessage, (object)"No fish..."), NewProperties.baitLossProbability, (object)"0.4"); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("SkeletonPirate"), NewProperties.baitAboutToDiveExamineDialogue, (object)"Skeleton Pirate will try and find you some treasures."), NewProperties.baitKeepDialogueMessage, (object)"You can keep your Pirate."), NewProperties.baitCatch0Loot0Rescue0DialogueMessage, (object)"Skeleton Pirate failed."), NewProperties.baitLossProbability, (object)"0.05"), NewProperties.baitLossDialogueMessage, (object)"Skeleton Pirate have didn't know how to swim."), NewProperties.baitRescueCreatureProbability, (object)"0.7"), NewProperties.baitRescueBonusCreaturesProbabilities, (object)"[0.4, 0.2]"), NewProperties.baitRescueCreatureGlobalLuck, (object)"3.0"), NewProperties.baitRescueTinyCreatureProbabilityWeight, (object)"6.0"), NewProperties.baitRescueTinyCreatureLuck, (object)"0.0"), NewProperties.baitRescueSmallCreatureProbabilityWeight, (object)"8.0"), NewProperties.baitRescueSmallCreatureLuck, (object)"0.0"), NewProperties.baitRescueMediumCreatureProbabilityWeight, (object)"7.0"), NewProperties.baitRescueMediumCreatureLuck, (object)"0.0"), NewProperties.baitRescueBigCreatureProbabilityWeight, (object)"4.0"), NewProperties.baitRescueBigCreatureLuck, (object)"0.0"), NewProperties.baitRescueHugeCreatureProbabilityWeight, (object)"1.0"), NewProperties.baitRescueHugeCreatureLuck, (object)"0.0"), NewProperties.baitRescue1DialogueMessage, (object)"Skeleton Pirate rescued a creature."), NewProperties.baitRescueMoreThen1DialogueMessage, (object)"Skeleton Pirate rescued some creatures."), NewProperties.baitFindLootProbability, (object)"0.7"), NewProperties.baitFindBonusLootsProbabilities, (object)"[0.4, 0.1, 0.1]"), NewProperties.baitFindLootGlobalLuck, (object)"0.0"), NewProperties.baitFindBoonLootProbabilityWeight, (object)"0.0"), NewProperties.baitFindBoonLootLuck, (object)"0.0"), NewProperties.baitFindCardLootProbabilityWeight, (object)"1.0"), NewProperties.baitFindCardLootLuck, (object)"3.2"), NewProperties.baitLoot1DialogueMessage, (object)"Skeleton Pirate succeeded."), NewProperties.baitLootMoreThen1DialogueMessage, (object)"Skeleton Pirate succeeded."), NewProperties.baitAlsoLoot1DialogueMessage, (object)"Also, Skeleton Pirate found a treasure."), NewProperties.baitAlsoLootMoreThen1DialogueMessage, (object)"Also, Skeleton Pirate found some treasure."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("AntFlying"), NewProperties.baitCatch0Loot0Rescue0DialogueMessage, (object)"No fish..."), NewProperties.baitLossProbability, (object)"0.2"), NewProperties.baitLossDialogueMessage, (object)"No fish..."), NewProperties.baitDerivationProbability, (object)"0.2"), NewProperties.baitDerivationDialogueMessage, (object)"Got trash."), NewProperties.baitCatchFishProbability, (object)"0.95"), NewProperties.baitCatchBonusFishProbabilities, (object)"[0.1]"), NewProperties.baitCatchFishGlobalLuck, (object)"0.0"), NewProperties.baitCatchTinyFishProbabilityWeight, (object)"1.0"), NewProperties.baitCatchTinyFishLuck, (object)"0.0"), NewProperties.baitCatchSmallFishProbabilityWeight, (object)"3.0"), NewProperties.baitCatchSmallFishLuck, (object)"0.0"), NewProperties.baitCatchMediumFishProbabilityWeight, (object)"1.5"), NewProperties.baitCatchMediumFishLuck, (object)"0.0"), NewProperties.baitCatchBigFishProbabilityWeight, (object)"0.4"), NewProperties.baitCatchBigFishLuck, (object)"0.0"), NewProperties.baitCatchHugeFishProbabilityWeight, (object)"0.0"), NewProperties.baitCatchHugeFishLuck, (object)"0.0"), NewProperties.baitCatch1DialogueMessage, (object)"Flying Ant was eaten, got fish."), NewProperties.baitCatchMoreThen1DialogueMessage, (object)"One ant two fish."), NewProperties.baitFindLootProbability, (object)"0.1"), NewProperties.baitFindBonusLootsProbabilities, (object)"[0.1]"), NewProperties.baitFindLootGlobalLuck, (object)"0.0"), NewProperties.baitFindBoonLootProbabilityWeight, (object)"0.0"), NewProperties.baitFindBoonLootLuck, (object)"0.0"), NewProperties.baitFindCardLootProbabilityWeight, (object)"1.0"), NewProperties.baitFindCardLootLuck, (object)"-0.6"), NewProperties.baitLoot1DialogueMessage, (object)"No fish... got trash too."), NewProperties.baitLootMoreThen1DialogueMessage, (object)"No fish... got two trash."), NewProperties.baitAlsoLoot1DialogueMessage, (object)"Also got trash."), NewProperties.baitAlsoLootMoreThen1DialogueMessage, (object)"Also got two trash."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("AquaSquirrel"), NewProperties.baitAboutToDiveExamineDialogue, (object)"AquaSquirrel will try and find you some loots."), NewProperties.baitKeepDialogueMessage, (object)"You can keep your little friend."), NewProperties.baitCatch0Loot0Rescue0DialogueMessage, (object)"If you see this dialogue in-game, please report to @Heartslot with a screenshot."), NewProperties.baitLossProbability, (object)"0.05"), NewProperties.baitLossDialogueMessage, (object)"AquaSquirrel have fled."), NewProperties.baitDerivationProbability, (object)"0.7"), NewProperties.baitDerivationDialogueMessage, (object)"AquaSquirrel left you with gift."), NewProperties.baitCatchFishProbability, (object)"0.4"), NewProperties.baitCatchBonusFishProbabilities, (object)"[0.1]"), NewProperties.baitCatchFishGlobalLuck, (object)"3.0"), NewProperties.baitCatchTinyFishProbabilityWeight, (object)"0.0"), NewProperties.baitCatchTinyFishLuck, (object)"0.0"), NewProperties.baitCatchSmallFishProbabilityWeight, (object)"1.0"), NewProperties.baitCatchSmallFishLuck, (object)"0.0"), NewProperties.baitCatchMediumFishProbabilityWeight, (object)"5.0"), NewProperties.baitCatchMediumFishLuck, (object)"0.0"), NewProperties.baitCatchBigFishProbabilityWeight, (object)"3.0"), NewProperties.baitCatchBigFishLuck, (object)"0.0"), NewProperties.baitCatchHugeFishProbabilityWeight, (object)"0.4"), NewProperties.baitCatchHugeFishLuck, (object)"0.0"), NewProperties.baitCatch1DialogueMessage, (object)"Oh oh, AquaSquirrel was eaten."), NewProperties.baitCatchMoreThen1DialogueMessage, (object)"Fish have feast on your AquaSquirrel..."), NewProperties.baitRescueCreatureProbability, (object)"0.7"), NewProperties.baitRescueBonusCreaturesProbabilities, (object)"[0.4, 0.2]"), NewProperties.baitRescueCreatureGlobalLuck, (object)"3.0"), NewProperties.baitRescueTinyCreatureProbabilityWeight, (object)"10.0"), NewProperties.baitRescueTinyCreatureLuck, (object)"0.0"), NewProperties.baitRescueSmallCreatureProbabilityWeight, (object)"8.0"), NewProperties.baitRescueSmallCreatureLuck, (object)"0.0"), NewProperties.baitRescueMediumCreatureProbabilityWeight, (object)"4.0"), NewProperties.baitRescueMediumCreatureLuck, (object)"0.0"), NewProperties.baitRescueBigCreatureProbabilityWeight, (object)"0.8"), NewProperties.baitRescueBigCreatureLuck, (object)"0.0"), NewProperties.baitRescueHugeCreatureProbabilityWeight, (object)"0.3"), NewProperties.baitRescueHugeCreatureLuck, (object)"0.0"), NewProperties.baitRescue1DialogueMessage, (object)"AquaSquirrel rescued a creature."), NewProperties.baitRescueMoreThen1DialogueMessage, (object)"AquaSquirrel rescued some creatures."), NewProperties.baitAlsoRescue1DialogueMessage, (object)"Before eaten, AquaSquirrel saved a creature."), NewProperties.baitAlsoRescueMoreThen1DialogueMessage, (object)"Before eaten, AquaSquirrel saved some creatures."), NewProperties.baitFindLootProbability, (object)"1.0"), NewProperties.baitFindBonusLootsProbabilities, (object)"[0.8, 0.4, 0.1, 0.1]"), NewProperties.baitFindLootGlobalLuck, (object)"6.0"), NewProperties.baitFindBoonLootProbabilityWeight, (object)"0.1"), NewProperties.baitFindBoonLootLuck, (object)"-6.0"), NewProperties.baitFindCardLootProbabilityWeight, (object)"10.0"), NewProperties.baitFindCardLootLuck, (object)"0.0"), NewProperties.baitLoot1DialogueMessage, (object)"AquaSquirrel succeeded."), NewProperties.baitLootMoreThen1DialogueMessage, (object)"AquaSquirrel succeeded."), NewProperties.baitAlsoLoot1DialogueMessage, (object)"Also, AquaSquirrel found a treasure."), NewProperties.baitAlsoLootMoreThen1DialogueMessage, (object)"Also, AquaSquirrel found some treasures."); CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardExtensions.SetExtendedProperty(CardLoader.GetCardByName("Bull"), NewProperties.baitCatch0Loot0Rescue0DialogueMessage, (object)"Would have guessed that result..."), NewProperties.baitLossProbability, (object)"0.0"), NewProperties.baitLossDialogueMessage, (object)"Bull did not know how to swim..."), NewProperties.baitDerivationProbability, (object)"0.35"), NewProperties.baitDerivationDialogueMessage, (object)"Bull drowned, but left you gift."), NewProperties.baitCatchFishProbability, (object)"0.1"), NewProperties.baitCatchBonusFishProbabilities, (object)"[0.0]"), NewProperties.baitCatchFishGlobalLuck, (object)"0.0"), NewProperties.baitCatchTinyFishProbabilityWeight, (object)"0.0"), NewProperties.baitCatchTinyFishLuck, (object)"0.0"), NewProperties.baitCatchSmallFishProbabilityWeight, (object)"0.0"), NewProperties.baitCatchSmallFishLuck, (object)"0.0"), NewProperties.baitCatchMediumFishProbabilityWeight, (object)"0.0"), NewProperties.baitCatchMediumFishLuck, (object)"0.0"), NewProperties.baitCatchBigFishProbabilityWeight, (object)"1.0"), NewProperties.baitCatchBigFishLuck, (object)"0.0"), NewProperties.baitCatchHugeFishProbabilityWeight, (object)"6.0"), NewProperties.baitCatchHugeFishLuck, (object)"0.0"), NewProperties.baitCatch1DialogueMessage, (object)"Uh, fish?"), NewProperties.baitCatchMoreThen1DialogueMessage, (object)"Report to @Heartslot if showned this dialogue."), NewProperties.baitFindLootProbability, (object)"0.05"), NewProperties.baitFindBonusLootsProbabilities, (objec