// Token: 0x06003794 RID: 14228
 public static void Update()
 {
     if (RandomizerSyncManager.SendingUri == null && RandomizerSyncManager.UriQueue.Count > 0 && !RandomizerSyncManager.webClient.IsBusy)
     {
         RandomizerSyncManager.SendingUri = RandomizerSyncManager.UriQueue.Dequeue();
         RandomizerSyncManager.webClient.DownloadStringAsync(RandomizerSyncManager.SendingUri);
     }
     else if (Randomizer.SyncId != "" && !RandomizerSyncManager.flags["seedSent"])
     {
         string[] array = File.ReadAllLines("randomizer.dat");
         array[0] = array[0].Replace(',', '|');
         RandomizerSyncManager.UriQueue.Enqueue(new Uri(RandomizerSyncManager.RootUrl + "/setSeed?seed=" + string.Join(",", array).Replace("#", "")));
         RandomizerSyncManager.flags["seedSent"] = true;
     }
     RandomizerSyncManager.Countdown--;
     RandomizerSyncManager.ChaosTimeoutCounter--;
     if (RandomizerSyncManager.ChaosTimeoutCounter < 0)
     {
         RandomizerChaosManager.ClearEffects();
         RandomizerSyncManager.ChaosTimeoutCounter = 216000;
     }
     if (RandomizerSyncManager.Countdown <= 0 && !RandomizerSyncManager.getClient.IsBusy)
     {
         RandomizerSyncManager.Countdown = 60 * RandomizerSyncManager.PERIOD;
         Vector3 pos = Characters.Sein.Position;
         Uri     uri = new Uri(RandomizerSyncManager.RootUrl + "/tick/" + pos.x.ToString() + "," + pos.y.ToString());
         RandomizerSyncManager.getClient.DownloadStringAsync(uri);
     }
 }
	// Token: 0x06003794 RID: 14228
	public static void Update()
	{
		if (RandomizerSyncManager.SendingUri == null && RandomizerSyncManager.UriQueue.Count > 0 && !RandomizerSyncManager.webClient.IsBusy)
		{
			RandomizerSyncManager.SendingUri = RandomizerSyncManager.UriQueue.Dequeue();
			RandomizerSyncManager.webClient.DownloadStringAsync(RandomizerSyncManager.SendingUri);
		}
		else if (Randomizer.SyncId != "" && !RandomizerSyncManager.flags["seedSent"])
		{
			string[] array = File.ReadAllLines("randomizer.dat");
			array[0] = array[0].Replace(',', '|');
			RandomizerSyncManager.flags["seedSent"] = true;
			RandomizerSyncManager.UriQueue.Enqueue(new Uri(RandomizerSyncManager.SERVER_ROOT + Randomizer.SyncId + "/setSeed?seed=" + string.Join(",", array)));
		}
		RandomizerSyncManager.Countdown--;
		RandomizerSyncManager.ChaosTimeoutCounter--;
		if (RandomizerSyncManager.ChaosTimeoutCounter < 0)
		{
			RandomizerChaosManager.ClearEffects();
			RandomizerSyncManager.ChaosTimeoutCounter = 216000;
		}
		if (RandomizerSyncManager.Countdown <= 0 && !RandomizerSyncManager.getClient.IsBusy)
		{
			RandomizerSyncManager.Countdown = 60 * RandomizerSyncManager.PERIOD;
			WebClient webClient = RandomizerSyncManager.getClient;
			string[] array2 = new string[6];
			array2[0] = RandomizerSyncManager.SERVER_ROOT;
			array2[1] = Randomizer.SyncId;
			array2[2] = "/";
			int num = 3;
			Vector3 position = Characters.Sein.Position;
			array2[num] = position.x.ToString();
			array2[4] = ",";
			int num2 = 5;
			position = Characters.Sein.Position;
			array2[num2] = position.y.ToString();
			webClient.DownloadStringAsync(new Uri(string.Concat(array2)));
		}
	}
 // Token: 0x06003794 RID: 14228
 public static void Update()
 {
     try
     {
         if (SendingPickup == null && PickupQueue.Count > 0 && !webClient.IsBusy)
         {
             SendingPickup = PickupQueue.Dequeue();
             webClient.DownloadStringAsync(SendingPickup.GetURL());
         }
         else if (Randomizer.SyncId != "" && !SeedSent)
         {
             UploadSeed();
         }
         Countdown--;
         ChaosTimeoutCounter--;
         if (ChaosTimeoutCounter < 0)
         {
             RandomizerChaosManager.ClearEffects();
             ChaosTimeoutCounter = 216000;
         }
         if (Countdown <= 0 && !getClient.IsBusy)
         {
             Countdown = 60 * PERIOD;
             NameValueCollection nvc = new NameValueCollection();
             Vector3             pos = Characters.Sein.Position;
             nvc["x"] = pos.x.ToString();
             nvc["y"] = pos.y.ToString();
             for (int i = 0; i < 8; i++)
             {
                 nvc["seen_" + i.ToString()] = fixInt(Characters.Sein.Inventory.GetRandomizerItem(1560 + i));
                 nvc["have_" + i.ToString()] = fixInt(Characters.Sein.Inventory.GetRandomizerItem(930 + i));
             }
             Uri uri = new Uri(RootUrl + "/tick/");
             getClient.UploadValuesAsync(uri, nvc);
         }
     } catch (Exception e) {
         Randomizer.LogError("RSM.Update: " + e.Message);
     }
 }
	// Token: 0x06003798 RID: 14232
	public static void CheckPickups(object sender, DownloadStringCompletedEventArgs e)
	{
		if (!e.Cancelled && e.Error == null)
		{
			string[] array = e.Result.Split(new char[]
			{
				','
			});
			int bf = int.Parse(array[0]);
			foreach (RandomizerSyncManager.SkillInfoLine skillInfoLine in RandomizerSyncManager.SkillInfos)
			{
				if (RandomizerSyncManager.getBit(bf, skillInfoLine.bit) && !Characters.Sein.PlayerAbilities.HasAbility(skillInfoLine.skill))
				{
					RandomizerSwitch.GivePickup(new RandomizerAction("SK", skillInfoLine.id), 0, false);
				}
			}
			int bf2 = int.Parse(array[1]);
			foreach (RandomizerSyncManager.EventInfoLine eventInfoLine in RandomizerSyncManager.EventInfos)
			{
				if (RandomizerSyncManager.getBit(bf2, eventInfoLine.bit) && !eventInfoLine.checker())
				{
					RandomizerSwitch.GivePickup(new RandomizerAction("EV", eventInfoLine.id), 0, false);
				}
			}
			int bf3 = int.Parse(array[2]);
			foreach (RandomizerSyncManager.UpgradeInfoLine upgradeInfoLine in RandomizerSyncManager.UpgradeInfos)
			{
				if (upgradeInfoLine.stacks)
				{
					if (RandomizerSyncManager.getTaste(bf3, upgradeInfoLine.bit) > upgradeInfoLine.counter())
					{
						RandomizerSwitch.GivePickup(new RandomizerAction("RB", upgradeInfoLine.id), 0, false);
					}
				}
				else if (RandomizerSyncManager.getBit(bf3, upgradeInfoLine.bit) && 1 != upgradeInfoLine.counter())
				{
					RandomizerSwitch.GivePickup(new RandomizerAction("RB", upgradeInfoLine.id), 0, false);
				}
			}
			int bf4 = int.Parse(array[3]);
			foreach (RandomizerSyncManager.TeleportInfoLine teleportInfoLine in RandomizerSyncManager.TeleportInfos)
			{
				if (RandomizerSyncManager.getBit(bf4, teleportInfoLine.bit) && !RandomizerSyncManager.isTeleporterActivated(teleportInfoLine.id))
				{
					RandomizerSwitch.GivePickup(new RandomizerAction("TP", teleportInfoLine.id), 0, false);
				}
			}
			if (array.Length > 4)
			{
				foreach (string text in array[4].Split('|'))
				{
					if (text == "stop")
					{
						RandomizerChaosManager.ClearEffects();
					} else if( text.StartsWith("msg:")) {
						Randomizer.showHint(text.Substring(4));
					}
					else if(text == "spawnChaos")
					{
						Randomizer.ChaosVerbose = true;
						RandomizerChaosManager.SpawnEffect();
						RandomizerSyncManager.ChaosTimeoutCounter = 3600;
					}
					RandomizerSyncManager.webClient.DownloadStringAsync(new Uri(RandomizerSyncManager.SERVER_ROOT + Randomizer.SyncId + "/signalCallback/" + text));
				}
			}
			return;
		}
		if (e.Error.GetType().Name == "WebException" && ((HttpWebResponse)((WebException)e.Error).Response).StatusCode == HttpStatusCode.PreconditionFailed)
				Randomizer.showHint("Co-op server error, try reloading the seed (Alt+L)");
				return;
		}
 // Token: 0x06003743 RID: 14147 RVA: 0x000E06A0 File Offset: 0x000DE8A0
 public static void Update()
 {
     if (Characters.Sein && !Characters.Sein.IsSuspended)
     {
         Characters.Sein.Mortality.Health.GainHealth((float)RandomizerBonus.HealthRegeneration() * (Characters.Sein.PlayerAbilities.HealthEfficiency.HasAbility ? 0.0016f : 0.0008f));
         Characters.Sein.Energy.Gain((float)RandomizerBonus.EnergyRegeneration() * (Characters.Sein.PlayerAbilities.EnergyEfficiency.HasAbility ? 0.0003f : 0.0002f));
         if (Randomizer.ForceTrees && Scenes.Manager.CurrentScene != null && Scenes.Manager.CurrentScene.Scene == "catAndMouseResurrectionRoom" && RandomizerBonus.SkillTreeProgression() < 10)
         {
             Characters.Sein.Position = new Vector3(20f, 105f);
         }
         if (Randomizer.Chaos)
         {
             RandomizerChaosManager.Update();
         }
     }
     if (MoonInput.GetKey(KeyCode.LeftAlt) || MoonInput.GetKey(KeyCode.RightAlt))
     {
         if (MoonInput.GetKeyDown(RandomizerRebinding.ReplayMessage))
         {
             Randomizer.playLastMessage();
             return;
         }
         if (MoonInput.GetKeyDown(RandomizerRebinding.ReturnToStart) && Characters.Sein)
         {
             Randomizer.returnToStart();
             return;
         }
         if (MoonInput.GetKeyDown(RandomizerRebinding.ReloadSeed))
         {
             Randomizer.initialize();
             Randomizer.showSeedInfo();
             return;
         }
         if (MoonInput.GetKeyDown(RandomizerRebinding.ShowProgress) && Characters.Sein)
         {
             Randomizer.showProgress();
             return;
         }
         if (MoonInput.GetKeyDown(RandomizerRebinding.ToggleChaos) && Characters.Sein)
         {
             if (Randomizer.Chaos)
             {
                 Randomizer.showChaosMessage("Chaos deactivated");
                 Randomizer.Chaos = false;
                 RandomizerChaosManager.ClearEffects();
                 return;
             }
             Randomizer.showChaosMessage("Chaos activated");
             Randomizer.Chaos = true;
             return;
         }
         else if (MoonInput.GetKeyDown(RandomizerRebinding.ChaosVerbosity) && Randomizer.Chaos)
         {
             Randomizer.ChaosVerbose = !Randomizer.ChaosVerbose;
             if (Randomizer.ChaosVerbose)
             {
                 Randomizer.showChaosMessage("Chaos messages enabled");
                 return;
             }
             Randomizer.showChaosMessage("Chaos messages disabled");
             return;
         }
         else if (MoonInput.GetKeyDown(RandomizerRebinding.ForceChaosEffect) && Randomizer.Chaos && Characters.Sein)
         {
             RandomizerChaosManager.SpawnEffect();
             return;
         }
     }
 }
 public static void Update()
 {
     Randomizer.UpdateMessages();
     if (Characters.Sein && SkillTreeManager.Instance != null && SkillTreeManager.Instance.NavigationManager.IsVisible)
     {
         if (Characters.Sein.IsSuspended)
         {
             SkillTreeManager.Instance.NavigationManager.FadeAnimator.SetParentOpacity(1f);
         }
         else
         {
             SkillTreeManager.Instance.NavigationManager.FadeAnimator.SetParentOpacity(RandomizerSettings.AbilityMenuOpacity);
         }
     }
     Randomizer.Tick();
     if (Characters.Sein && !Characters.Sein.IsSuspended)
     {
         RandomizerBonus.Update();
         if (!Randomizer.ColorShift)
         {
             RandomizerColorManager.UpdateColors();
         }
         Randomizer.UpdateHoruCutsceneStatus();
         if (Characters.Sein.Inventory.GetRandomizerItem(82) > 0 && Items.NightBerry != null)
         {
             Items.NightBerry.transform.position = new Vector3(-910f, -300f);
             Characters.Sein.Inventory.SetRandomizerItem(82, 0);
         }
         if (RandomizerBonusSkill.LevelExplosionCooldown > 0)
         {
             RandomizerBonusSkill.LevelExplosionCooldown--;
             if (RandomizerBonusSkill.LevelExplosionCooldown > 10)
             {
                 Characters.Sein.Energy.SetCurrent(RandomizerBonusSkill.OldEnergy);
                 Characters.Sein.Mortality.Health.SetAmount(RandomizerBonusSkill.OldHealth);
             }
         }
         if (Randomizer.Chaos)
         {
             RandomizerChaosManager.Update();
         }
         if (Randomizer.Sync)
         {
             RandomizerSyncManager.Update();
         }
         if (Randomizer.Warping > 0)
         {
             if (Randomizer.DelayedWarp)
             {
                 Randomizer.DelayedWarp = false;
                 Randomizer.WarpTo(Randomizer.WarpTarget, Randomizer.Warping);
             }
             else
             {
                 Characters.Sein.Position = Randomizer.WarpTarget;
                 Characters.Sein.Speed    = new Vector3(0f, 0f);
                 Characters.Ori.Position  = new Vector3(Randomizer.WarpTarget.x, Randomizer.WarpTarget.y - 5);
                 bool loading = false;
                 foreach (SceneManagerScene sms in Scenes.Manager.ActiveScenes)
                 {
                     if (sms.CurrentState == SceneManagerScene.State.Loading)
                     {
                         loading = true;
                         break;
                     }
                 }
                 if (!loading)
                 {
                     Randomizer.Warping--;
                 }
                 if (Randomizer.Warping == 0 && Randomizer.SaveAfterWarp)
                 {
                     GameController.Instance.CreateCheckpoint();
                     GameController.Instance.SaveGameController.PerformSave();
                     Randomizer.SaveAfterWarp = false;
                 }
             }
         }
         else if (Randomizer.Returning)
         {
             Characters.Sein.Position = new Vector3(189f, -215f);
             if (Scenes.Manager.CurrentScene.Scene == "sunkenGladesRunaway")
             {
                 Randomizer.Returning = false;
             }
         }
     }
     if (CreditsActive)
     {
         return;
     }
     if (RandomizerRebinding.ReloadSeed.IsPressed())
     {
         Randomizer.initialize();
         Randomizer.showSeedInfo();
         return;
     }
     if (RandomizerRebinding.ShowStats.IsPressed() && Characters.Sein)
     {
         RandomizerStatsManager.ShowStats(10);
         return;
     }
     if (RandomizerRebinding.ListTrees.IsPressed() && Characters.Sein)
     {
         Randomizer.MessageQueueTime = 0;
         RandomizerTrackedDataManager.ListTrees();
         return;
     }
     if (RandomizerRebinding.ListRelics.IsPressed() && Characters.Sein)
     {
         Randomizer.MessageQueueTime = 0;
         RandomizerTrackedDataManager.ListRelics();
         return;
     }
     if (RandomizerRebinding.ListMapAltars.IsPressed() && Characters.Sein)
     {
         Randomizer.MessageQueueTime = 0;
         RandomizerTrackedDataManager.ListMapstones();
         return;
     }
     if (RandomizerRebinding.ListTeleporters.IsPressed() && Characters.Sein)
     {
         Randomizer.MessageQueueTime = 0;
         RandomizerTrackedDataManager.ListTeleporters();
         return;
     }
     if (RandomizerRebinding.BonusSwitch.IsPressed() && Characters.Sein)
     {
         RandomizerBonusSkill.SwitchBonusSkill();
         return;
     }
     if (RandomizerRebinding.BonusToggle.IsPressed() && Characters.Sein)
     {
         RandomizerBonusSkill.ActivateBonusSkill();
         return;
     }
     if (RandomizerRebinding.BonusSwitch.IsPressed() && Characters.Sein)
     {
         RandomizerBonusSkill.SwitchBonusSkill();
         return;
     }
     if (RandomizerRebinding.ReplayMessage.IsPressed())
     {
         Randomizer.playLastMessage();
         return;
     }
     if (RandomizerRebinding.ReturnToStart.IsPressed() && Characters.Sein && Randomizer.Warping <= 0)
     {
         if (Randomizer.AltRDisabled || RandomizerBonus.AltRDisabled())
         {
             Randomizer.printInfo("Return to start is disabled!");
             return;
         }
         Randomizer.returnToStart();
         return;
     }
     if (RandomizerRebinding.ShowProgress.IsPressed() && Characters.Sein)
     {
         Randomizer.MessageQueueTime = 0;
         Randomizer.showProgress();
         return;
     }
     if (RandomizerRebinding.ColorShift.IsPressed())
     {
         string obj = "Color shift enabled";
         if (Randomizer.ColorShift)
         {
             obj = "Color shift disabled";
         }
         else
         {
             Randomizer.changeColor();
         }
         Randomizer.ColorShift = !Randomizer.ColorShift;
         Randomizer.printInfo(obj);
     }
     if (RandomizerRebinding.ToggleChaos.IsPressed() && Characters.Sein)
     {
         if (Randomizer.Chaos)
         {
             Randomizer.showChaosMessage("Chaos deactivated");
             Randomizer.Chaos = false;
             RandomizerChaosManager.ClearEffects();
             return;
         }
         Randomizer.showChaosMessage("Chaos activated");
         Randomizer.Chaos = true;
         return;
     }
     else if (RandomizerRebinding.ChaosVerbosity.IsPressed() && Randomizer.Chaos)
     {
         Randomizer.ChaosVerbose = !Randomizer.ChaosVerbose;
         if (Randomizer.ChaosVerbose)
         {
             Randomizer.showChaosMessage("Chaos messages enabled");
             return;
         }
         Randomizer.showChaosMessage("Chaos messages disabled");
         return;
     }
     else
     {
         if (RandomizerRebinding.ForceChaosEffect.IsPressed() && Randomizer.Chaos && Characters.Sein)
         {
             RandomizerChaosManager.SpawnEffect();
             return;
         }
         return;
     }
 }
 // Token: 0x06003798 RID: 14232
 public static void CheckPickups(object sender, UploadValuesCompletedEventArgs e)
 {
     try
     {
         if (e.Error != null)
         {
             if (e.Error is System.NullReferenceException)
             {
                 return;
             }
             Randomizer.LogError("CheckPickups got error: " + e.Error.ToString());
         }
         if (!e.Cancelled && e.Error == null)
         {
             if (!Characters.Sein)
             {
                 return;
             }
             string[] array = System.Text.Encoding.UTF8.GetString(e.Result).Split(new char[]
             {
                 ','
             });
             int bf = int.Parse(array[0]);
             foreach (SkillInfoLine skillInfoLine in SkillInfos)
             {
                 if (getBit(bf, skillInfoLine.bit) && !Characters.Sein.PlayerAbilities.HasAbility(skillInfoLine.skill))
                 {
                     RandomizerSwitch.GivePickup(new RandomizerAction("SK", skillInfoLine.id), 0, false);
                 }
             }
             int bf2 = int.Parse(array[1]);
             foreach (EventInfoLine eventInfoLine in EventInfos)
             {
                 if (getBit(bf2, eventInfoLine.bit) && !eventInfoLine.checker())
                 {
                     RandomizerSwitch.GivePickup(new RandomizerAction("EV", eventInfoLine.id), 0, false);
                 }
             }
             int bf4 = int.Parse(array[2]);
             foreach (TeleportInfoLine teleportInfoLine in TeleportInfos)
             {
                 if (getBit(bf4, teleportInfoLine.bit) && !isTeleporterActivated(teleportInfoLine.id))
                 {
                     RandomizerSwitch.GivePickup(new RandomizerAction("TP", teleportInfoLine.id), 0, false);
                 }
             }
             if (array[3] != "")
             {
                 string[] upgrades = array[3].Split(';');
                 foreach (string rawUpgrade in upgrades)
                 {
                     string[] splitpair = rawUpgrade.Split('x');
                     int      id        = int.Parse(splitpair[0]);
                     int      cnt       = int.Parse(splitpair[1]);
                     if (id >= 100)
                     {
                         if (id >= 900)
                         {
                             if (id < 910)
                             {
                                 int    tree     = id - 899;
                                 string treeName = RandomizerTrackedDataManager.Trees[tree];
                                 if (RandomizerTrackedDataManager.SetTree(tree))
                                 {
                                     Randomizer.showHint(treeName + " tree (activated by teammate)");
                                 }
                             }
                             else if (id < 922)
                             {
                                 string relicZone = RandomizerTrackedDataManager.Zones[id - 911];
                                 if (RandomizerTrackedDataManager.SetRelic(relicZone))
                                 {
                                     Randomizer.showHint("#" + relicZone + " relic# (found by teammate)", 300);
                                 }
                             }
                         }
                         else if (!RandomizerBonusSkill.UnlockedBonusSkills.ContainsValue(id) && cnt > 0)
                         {
                             RandomizerBonus.UpgradeID(id);
                         }
                     }
                     else if (RandomizerBonus.UpgradeCount(id) < cnt)
                     {
                         RandomizerBonus.UpgradeID(id);
                     }
                     else if (!PickupQueue.Where((Pickup p) => p.type == "RB" && p.id == splitpair[0]).Any() && RandomizerBonus.UpgradeCount(id) > cnt)
                     {
                         RandomizerBonus.UpgradeID(-id);
                     }
                 }
             }
             if (array.Length > 5)
             {
                 foreach (string text in array[5].Split(new char[] { '|' }))
                 {
                     if (CurrentSignals.Contains(text))
                     {
                         continue;
                     }
                     if (text == "stop")
                     {
                         RandomizerChaosManager.ClearEffects();
                     }
                     else if (text.StartsWith("msg:"))
                     {
                         Randomizer.printInfo(text.Substring(4), 360);
                     }
                     else if (text.StartsWith("win:"))
                     {
                         if (!RandomizerBonusSkill.UnlockCreditWarp(text.Substring(4)))
                         {
                             Randomizer.Print(text.Substring(4), 10, false, true, false, false);
                             RandomizerStatsManager.WriteStatsFile();
                         }
                     }
                     else if (text.StartsWith("pickup:"))
                     {
                         string[]         parts = text.Substring(7).Split(new char[] { '|' });
                         RandomizerAction action;
                         if (Randomizer.StringKeyPickupTypes.Contains(parts[0]))
                         {
                             action = new RandomizerAction(parts[0], parts[1]);
                         }
                         else
                         {
                             int pickup_id;
                             int.TryParse(parts[1], out pickup_id);
                             action = new RandomizerAction(parts[0], pickup_id);
                         }
                         RandomizerSwitch.GivePickup(action, 0, false);
                     }
                     else if (text == "spawnChaos")
                     {
                         Randomizer.ChaosVerbose = true;
                         RandomizerChaosManager.SpawnEffect();
                         ChaosTimeoutCounter = 3600;
                     }
                     var client = new WebClient();
                     client.DownloadStringAsync(new Uri(RootUrl + "/callback/" + text));
                     CurrentSignals.Add(text);
                 }
             }
             else
             {
                 CurrentSignals.Clear();
             }
             return;
         }
         if (e.Error.GetType().Name == "WebException" && ((HttpWebResponse)((WebException)e.Error).Response).StatusCode == HttpStatusCode.PreconditionFailed)
         {
             if (Randomizer.SyncMode == 1)
             {
                 Randomizer.printInfo("Co-op server error, try reloading the seed (Alt+L)");
             }
             else
             {
                 Randomizer.LogError("Co-op server error, try reloading the seed (Alt+L)");
             }
             return;
         }
     }
     catch (Exception e2)
     {
         Randomizer.LogError("CheckPickups threw error: " + e2.Message);
     }
 }
Exemple #8
0
 // Token: 0x06003746 RID: 14150 RVA: 0x000E0F2C File Offset: 0x000DF12C
 public static void Update()
 {
     Randomizer.UpdateMessages();
     if (Characters.Sein && !Characters.Sein.IsSuspended)
     {
         Characters.Sein.Mortality.Health.GainHealth((float)RandomizerBonus.HealthRegeneration() * (Characters.Sein.PlayerAbilities.HealthEfficiency.HasAbility ? 0.0016f : 0.0008f));
         Characters.Sein.Energy.Gain((float)RandomizerBonus.EnergyRegeneration() * (Characters.Sein.PlayerAbilities.EnergyEfficiency.HasAbility ? 0.0003f : 0.0002f));
         if (Randomizer.ForceTrees && Scenes.Manager.CurrentScene != null && Scenes.Manager.CurrentScene.Scene == "catAndMouseResurrectionRoom" && RandomizerBonus.SkillTreeProgression() < 10)
         {
             Randomizer.MessageQueue.Enqueue("Trees (" + RandomizerBonus.SkillTreeProgression().ToString() + "/10)");
             if (Randomizer.Entrance)
             {
                 Randomizer.EnterDoor(new Vector3(-242f, 489f));
             }
             else
             {
                 Characters.Sein.Position = new Vector3(20f, 105f);
             }
         }
         if (Randomizer.Chaos)
         {
             RandomizerChaosManager.Update();
         }
         if (Randomizer.Sync)
         {
             RandomizerSyncManager.Update();
         }
         if (Randomizer.Returning)
         {
             Characters.Sein.Position = new Vector3(189f, -215f);
             Characters.Ori.Position  = new Vector3(190f, -210f);
             Randomizer.Returning     = false;
         }
     }
     if (RandomizerRebinding.ReplayMessage.IsPressed())
     {
         Randomizer.playLastMessage();
         return;
     }
     if (RandomizerRebinding.ReturnToStart.IsPressed() && Characters.Sein)
     {
         Randomizer.returnToStart();
         return;
     }
     if (RandomizerRebinding.ReloadSeed.IsPressed())
     {
         Randomizer.initialize();
         Randomizer.showSeedInfo();
         return;
     }
     if (RandomizerRebinding.ShowProgress.IsPressed() && Characters.Sein)
     {
         Randomizer.showProgress();
         return;
     }
     if (RandomizerRebinding.ColorShift.IsPressed())
     {
         string obj = "Color shift enabled";
         if (Randomizer.ColorShift)
         {
             obj = "Color shift disabled";
         }
         Randomizer.ColorShift = !Randomizer.ColorShift;
         Randomizer.MessageQueue.Enqueue(obj);
     }
     if (RandomizerRebinding.ToggleChaos.IsPressed() && Characters.Sein)
     {
         if (Randomizer.Chaos)
         {
             Randomizer.showChaosMessage("Chaos deactivated");
             Randomizer.Chaos = false;
             RandomizerChaosManager.ClearEffects();
             return;
         }
         Randomizer.showChaosMessage("Chaos activated");
         Randomizer.Chaos = true;
         return;
     }
     else if (RandomizerRebinding.ChaosVerbosity.IsPressed() && Randomizer.Chaos)
     {
         Randomizer.ChaosVerbose = !Randomizer.ChaosVerbose;
         if (Randomizer.ChaosVerbose)
         {
             Randomizer.showChaosMessage("Chaos messages enabled");
             return;
         }
         Randomizer.showChaosMessage("Chaos messages disabled");
         return;
     }
     else
     {
         if (RandomizerRebinding.ForceChaosEffect.IsPressed() && Randomizer.Chaos && Characters.Sein)
         {
             RandomizerChaosManager.SpawnEffect();
             return;
         }
         return;
     }
 }
 // Token: 0x06003798 RID: 14232
 public static void CheckPickups(object sender, DownloadStringCompletedEventArgs e)
 {
     if (e.Error != null)
     {
         Randomizer.LogError("CheckPickups: " + e.Error.ToString());
     }
     if (!e.Cancelled && e.Error == null)
     {
         string[] array = e.Result.Split(new char[]
         {
             ','
         });
         int bf = int.Parse(array[0]);
         foreach (RandomizerSyncManager.SkillInfoLine skillInfoLine in RandomizerSyncManager.SkillInfos)
         {
             if (RandomizerSyncManager.getBit(bf, skillInfoLine.bit) && !Characters.Sein.PlayerAbilities.HasAbility(skillInfoLine.skill))
             {
                 RandomizerSwitch.GivePickup(new RandomizerAction("SK", skillInfoLine.id), 0, false);
             }
         }
         int bf2 = int.Parse(array[1]);
         foreach (RandomizerSyncManager.EventInfoLine eventInfoLine in RandomizerSyncManager.EventInfos)
         {
             if (RandomizerSyncManager.getBit(bf2, eventInfoLine.bit) && !eventInfoLine.checker())
             {
                 RandomizerSwitch.GivePickup(new RandomizerAction("EV", eventInfoLine.id), 0, false);
             }
         }
         int bf4 = int.Parse(array[2]);
         foreach (RandomizerSyncManager.TeleportInfoLine teleportInfoLine in RandomizerSyncManager.TeleportInfos)
         {
             if (RandomizerSyncManager.getBit(bf4, teleportInfoLine.bit) && !RandomizerSyncManager.isTeleporterActivated(teleportInfoLine.id))
             {
                 RandomizerSwitch.GivePickup(new RandomizerAction("TP", teleportInfoLine.id), 0, false);
             }
         }
         if (array[3] != "")
         {
             string[] upgrades = array[3].Split(';');
             foreach (string rawUpgrade in upgrades)
             {
                 string[] splitpair = rawUpgrade.Split('x');
                 int      id        = int.Parse(splitpair[0]);
                 int      cnt       = int.Parse(splitpair[1]);
                 if (RandomizerBonus.UpgradeCount(id) < cnt)
                 {
                     RandomizerBonus.UpgradeID(id);
                 }
                 else if (RandomizerBonus.UpgradeCount(id) > cnt)
                 {
                     RandomizerBonus.UpgradeID(-id);
                 }
             }
         }
         if (array[4] != "")
         {
             string[] hints = array[4].Split(';');
             foreach (string rawHint in hints)
             {
                 string[] splitpair = rawHint.Split(':');
                 int      coords    = int.Parse(splitpair[0]);
                 int      player    = int.Parse(splitpair[1]);
                 RandomizerSyncManager.Hints[coords] = player;
             }
         }
         if (array.Length > 5)
         {
             foreach (string text in array[5].Split(new char[] { '|' }))
             {
                 if (text == "stop")
                 {
                     RandomizerChaosManager.ClearEffects();
                 }
                 else if (text.StartsWith("msg:"))
                 {
                     Randomizer.printInfo(text.Substring(4), 360);
                 }
                 else if (text.StartsWith("pickup:"))
                 {
                     string[]         parts = text.Substring(7).Split(new char[] { '|' });
                     RandomizerAction action;
                     if (Randomizer.StringKeyPickupTypes.Contains(parts[0]))
                     {
                         action = new RandomizerAction(parts[0], parts[1]);
                     }
                     else
                     {
                         int pickup_id;
                         int.TryParse(parts[1], out pickup_id);
                         action = new RandomizerAction(parts[0], pickup_id);
                     }
                     RandomizerSwitch.GivePickup(action, 0, false);
                 }
                 else if (text == "spawnChaos")
                 {
                     Randomizer.ChaosVerbose = true;
                     RandomizerChaosManager.SpawnEffect();
                     RandomizerSyncManager.ChaosTimeoutCounter = 3600;
                 }
                 RandomizerSyncManager.webClient.DownloadStringAsync(new Uri(RandomizerSyncManager.RootUrl + "/signalCallback/" + text));
             }
         }
         return;
     }
     if (e.Error.GetType().Name == "WebException" && ((HttpWebResponse)((WebException)e.Error).Response).StatusCode == HttpStatusCode.PreconditionFailed)
     {
         if (Randomizer.SyncMode == 1)
         {
             Randomizer.printInfo("Co-op server error, try reloading the seed (Alt+L)");
         }
         else
         {
             Randomizer.LogError("Co-op server error, try reloading the seed (Alt+L)");
         }
         return;
     }
 }