public static void getSkill(int tree) { RandomizerTrackedDataManager.SetTree(tree); Randomizer.getSkill(); }
// Token: 0x06000F85 RID: 3973 RVA: 0x0005DF74 File Offset: 0x0005C174 public void SetAbility(AbilityType ability, bool value) { switch (ability) { case AbilityType.Bash: if (Randomizer.GiveAbility) { this.Bash.HasAbility = true; } else { Randomizer.getSkill(4); } break; case AbilityType.ChargeFlame: if (Randomizer.GiveAbility) { this.ChargeFlame.HasAbility = true; } else { Randomizer.getSkill(2); } break; case AbilityType.WallJump: if (Randomizer.GiveAbility) { this.WallJump.HasAbility = true; } else { Randomizer.getSkill(1); } break; case AbilityType.Stomp: if (Randomizer.GiveAbility) { this.Stomp.HasAbility = true; } else { Randomizer.getSkill(5); } break; case AbilityType.DoubleJump: if (Randomizer.GiveAbility) { this.DoubleJump.HasAbility = true; } else { Randomizer.getSkill(3); } break; case AbilityType.ChargeJump: if (Randomizer.GiveAbility) { this.ChargeJump.HasAbility = true; } else { Randomizer.getSkill(8); } break; case AbilityType.Magnet: this.Magnet.HasAbility = value; break; case AbilityType.UltraMagnet: this.UltraMagnet.HasAbility = value; break; case AbilityType.Climb: if (Randomizer.GiveAbility) { this.Climb.HasAbility = true; } else { Randomizer.getSkill(7); } break; case AbilityType.Glide: if (Randomizer.GiveAbility) { this.Glide.HasAbility = true; } else { Randomizer.getSkill(6); } break; case AbilityType.SpiritFlame: RandomizerTrackedDataManager.SetTree(0); this.SpiritFlame.HasAbility = value; Characters.Ori.MoveOriToPlayer(); break; case AbilityType.RapidFlame: this.RapidFire.HasAbility = value; break; case AbilityType.SplitFlameUpgrade: this.SplitFlameUpgrade.HasAbility = value; break; case AbilityType.SoulEfficiency: this.SoulEfficiency.HasAbility = value; break; case AbilityType.WaterBreath: this.WaterBreath.HasAbility = value; break; case AbilityType.ChargeFlameBlast: this.ChargeFlameBlast.HasAbility = value; break; case AbilityType.ChargeFlameBurn: this.ChargeFlameBurn.HasAbility = value; break; case AbilityType.DoubleJumpUpgrade: this.DoubleJumpUpgrade.HasAbility = value; break; case AbilityType.BashBuff: this.BashBuff.HasAbility = value; break; case AbilityType.UltraDefense: this.UltraDefense.HasAbility = value; break; case AbilityType.HealthEfficiency: this.HealthEfficiency.HasAbility = value; break; case AbilityType.Sense: this.Sense.HasAbility = value; break; case AbilityType.UltraStomp: this.StompUpgrade.HasAbility = value; break; case AbilityType.SparkFlame: this.SparkFlame.HasAbility = value; break; case AbilityType.QuickFlame: this.QuickFlame.HasAbility = value; break; case AbilityType.MapMarkers: this.MapMarkers.HasAbility = value; break; case AbilityType.EnergyEfficiency: this.EnergyEfficiency.HasAbility = value; break; case AbilityType.HealthMarkers: this.HealthMarkers.HasAbility = value; break; case AbilityType.EnergyMarkers: this.EnergyMarkers.HasAbility = value; break; case AbilityType.AbilityMarkers: this.AbilityMarkers.HasAbility = value; break; case AbilityType.Rekindle: this.Rekindle.HasAbility = value; break; case AbilityType.Regroup: this.Regroup.HasAbility = value; break; case AbilityType.ChargeFlameEfficiency: this.ChargeFlameEfficiency.HasAbility = value; break; case AbilityType.UltraSoulFlame: this.UltraSoulFlame.HasAbility = value; break; case AbilityType.SoulFlameEfficiency: this.SoulFlameEfficiency.HasAbility = value; break; case AbilityType.CinderFlame: this.CinderFlame.HasAbility = value; break; case AbilityType.UltraSplitFlame: this.UltraSplitFlame.HasAbility = value; break; case AbilityType.Dash: if (Randomizer.GiveAbility) { this.Dash.HasAbility = true; } else { Randomizer.getSkill(10); } break; case AbilityType.Grenade: if (Randomizer.GiveAbility) { this.Grenade.HasAbility = true; } else { Randomizer.getSkill(9); } break; case AbilityType.GrenadeUpgrade: this.GrenadeUpgrade.HasAbility = value; break; case AbilityType.ChargeDash: this.ChargeDash.HasAbility = value; break; case AbilityType.AirDash: this.AirDash.HasAbility = value; break; case AbilityType.GrenadeEfficiency: this.GrenadeEfficiency.HasAbility = value; break; } this.m_sein.Prefabs.EnsureRightPrefabsAreThereForAbilities(); }
// 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); } }