Ejemplo n.º 1
0
 // Token: 0x06003414 RID: 13332
 public void PerformSaveGameSequence()
 {
     RandomizerStatsManager.OnSave(false);
     if (this.GameSaveSequence)
     {
         this.GameSaveSequence.Perform(null);
     }
 }
 // Token: 0x0600051A RID: 1306
 public void OnMenuItemPressed()
 {
     if (this.CurrentSkillItem == null)
     {
         return;
     }
     if (this.CurrentSkillItem.HasSkillItem)
     {
         if (this.OnAlreadyEarnedAbility)
         {
             this.RequirementsLineAShake.Restart();
             this.OnAlreadyEarnedAbility.Perform(null);
         }
         return;
     }
     if (this.CurrentSkillItem.CanEarnSkill)
     {
         this.CurrentSkillItem.HasSkillItem = true;
         Characters.Sein.PlayerAbilities.SetAbility(this.CurrentSkillItem.Ability, true);
         Characters.Sein.PlayerAbilities.GainAbilityAction = this.CurrentSkillItem.GainSkillSequence;
         InstantiateUtility.Instantiate(this.GainSkillEffect, this.CurrentSkillItem.transform.position, Quaternion.identity);
         RandomizerBonus.SpentAP(this.CurrentSkillItem.ActualRequiredSkillPoints);
         BingoController.OnGainAbility(this.CurrentSkillItem.Ability);
         Characters.Sein.Level.SkillPoints -= this.CurrentSkillItem.ActualRequiredSkillPoints;
         if (this.OnGainAbility)
         {
             this.OnGainAbility.Perform(null);
         }
         SeinLevel.HasSpentSkillPoint = true;
         AchievementsController.AwardAchievement(this.SpentFirstSkillPointAchievement);
         GameController.Instance.CreateCheckpoint();
         RandomizerStatsManager.OnSave(false);
         GameController.Instance.SaveGameController.PerformSave();
         this.UpdateRequirementsText();
         return;
     }
     if (!this.CurrentSkillItem.SoulRequirementMet)
     {
         if (this.CurrentSkillItem.RequiresAbilitiesOrItems)
         {
             this.RequirementsLineAShake.Restart();
         }
         else
         {
             this.RequirementsLineAShake.Restart();
         }
     }
     if (!this.CurrentSkillItem.AbilitiesRequirementMet)
     {
         this.RequirementsLineAShake.Restart();
     }
     if (this.OnCantEarnSkill)
     {
         this.OnCantEarnSkill.Perform(null);
     }
 }
Ejemplo n.º 3
0
 // Token: 0x0600321F RID: 12831
 private void SaveOnPedestal()
 {
     if (this.m_hint)
     {
         this.m_hint.HideMessageScreen();
     }
     this.m_used = true;
     this.MarkAsUsed();
     RandomizerStatsManager.OnSave();
     if (Characters.Sein.Abilities.Carry && Characters.Sein.Abilities.Carry.CurrentCarryable != null)
     {
         Characters.Sein.Abilities.Carry.CurrentCarryable.Drop();
     }
     if (this.OnOpenedAction)
     {
         this.OnOpenedAction.Perform(null);
     }
     base.StartCoroutine(this.MoveSeinToCenterSmoothly());
 }
Ejemplo n.º 4
0
 // Token: 0x06001382 RID: 4994
 private void CastSoulFlame()
 {
     if (this.ChargingSound)
     {
         this.ChargingSound.StopAndFadeOut(0.1f);
     }
     this.m_sein.Energy.Spend(this.SoulFlameCost);
     this.m_cooldownRemaining = 1f;
     this.m_holdDownTime      = 0f;
     if (this.m_sein.PlayerAbilities.Regroup.HasAbility)
     {
         this.m_sein.Mortality.Health.GainHealth(4);
     }
     if (this.m_sein.PlayerAbilities.UltraSoulFlame.HasAbility)
     {
         this.m_sein.Mortality.Health.GainHealth(4);
     }
     this.m_sceneCheckpoint = new MoonGuid(Scenes.Manager.CurrentScene.SceneMoonGuid);
     if (this.m_checkpointMarkerGameObject)
     {
         this.m_checkpointMarkerGameObject.GetComponent <SoulFlame>().Disappear();
     }
     this.SpawnSoulFlame(Characters.Sein.Position);
     RandomizerBonusSkill.LastSoulLink = Characters.Sein.Position;
     RandomizerStatsManager.OnSave();
     SeinSoulFlame.OnSoulFlameCast();
     SaveSlotBackupsManager.CreateCurrentBackup();
     GameController.Instance.CreateCheckpoint();
     GameController.Instance.SaveGameController.PerformSave();
     this.m_numberOfSoulFlamesCast++;
     if (this.m_numberOfSoulFlamesCast == 50)
     {
         AchievementsController.AwardAchievement(AchievementsLogic.Instance.SoulLinkManyTimesAchievementAsset);
     }
     if (this.CheckpointSequence)
     {
         this.CheckpointSequence.Perform(null);
     }
 }