public void JumpLanding(Tool tool, ItemAttributes attrs) { foreach (var trait in attrs.GetTraits()) { if (ConstructionStages[CurrentStage].TraitStage.ContainsKey(trait)) { var Jump = ConstructionStages[CurrentStage].TraitStage[trait]; float SuccessChance = (tool.SuccessChance / 100) * Jump.SuccessChance; if (!(SuccessChance < ListChance[random.Next(99)])) { if (Jump.Construction) { ConstructionStages[CurrentStage].CheckParts(); if (!ConstructionStages[CurrentStage].MissingParts) { GoToStage(Jump.JumpToStage); } } else { SpawnStage(CurrentStage); SpawnStage(Jump.JumpToStage); GoToStage(Jump.JumpToStage); } } else { Logger.Log("you Failed!"); return; } } } Logger.Log("you Failed!"); }