private void ProgressTutorial() { if (WorldScript.instance?.mWorldData != null && !WorldScript.instance.mWorldData.mbIntroCompleted) { return; } if (SurvivalPlayerScript.meTutorialState + 1 == SurvivalPlayerScript.eTutorialState.CraftSomething && WorldScript.mLocalPlayer?.mInventory == null) { return; } SurvivalPlayerScript.TutorialSectionComplete(); UIManager.mrHandbookDisplayDelay = 0; // TODO: Re-Add Arther Core when progressing Tutorial // switch (SurvivalPlayerScript.meTutorialState) // { // case SurvivalPlayerScript.eTutorialState.CraftSomething: // WorldScript.mLocalPlayer.mInventory.AddItem(ItemManager.SpawnItem(2000)); // Give the player an Arther Power Core // break; // case SurvivalPlayerScript.eTutorialState.ScanSomething: // SurvivalPlayerScript.CompleteTutorial(); // break; // } }
public override bool ButtonClicked(string name, SegmentEntity targetEntity) { ExtraStorageHoppers hopper = targetEntity as ExtraStorageHoppers; if (name == "AddRemoveButton") { UIManager.ForceNGUIUpdate = 0.1f; ExtraStorageHopperWindowNew.SetPermissions(WorldScript.mLocalPlayer, hopper, eHopperPermissions.AddAndRemove); return(true); } if (name == "AddOnlyButton") { UIManager.ForceNGUIUpdate = 0.1f; ExtraStorageHopperWindowNew.SetPermissions(WorldScript.mLocalPlayer, hopper, eHopperPermissions.AddOnly); return(true); } if (name == "RemoveOnlyButton") { UIManager.ForceNGUIUpdate = 0.1f; ExtraStorageHopperWindowNew.SetPermissions(WorldScript.mLocalPlayer, hopper, eHopperPermissions.RemoveOnly); return(true); } if (name == "LockedButton") { UIManager.ForceNGUIUpdate = 0.1f; ExtraStorageHopperWindowNew.SetPermissions(WorldScript.mLocalPlayer, hopper, eHopperPermissions.Locked); return(true); } if (name == "ToggleHoover") { UIManager.ForceNGUIUpdate = 0.1f; AudioHUDManager.instance.HUDIn(); ExtraStorageHopperWindowNew.ToggleHoover(WorldScript.mLocalPlayer, hopper); return(true); } if (name == "ToggleShare") { UIManager.ForceNGUIUpdate = 0.1f; AudioHUDManager.instance.HUDIn(); ExtraStorageHopperWindowNew.ToggleShare(WorldScript.mLocalPlayer, hopper); return(true); } if (name.Contains("ItemSlot")) { int num = -1; int.TryParse(name.Replace("ItemSlot", string.Empty), out num); if (num > -1) { int num2 = 100; if (Input.GetKey(KeyCode.LeftShift) || Input.GetKey(KeyCode.RightShift)) { num2 = 10; } if (Input.GetKey(KeyCode.LeftControl) || Input.GetKey(KeyCode.RightControl)) { num2 = 1; } ItemBase item = ItemManager.CloneItem(this.GetNthItemSlot(hopper, num)); if (num2 < ItemManager.GetCurrentStackSize(item)) { ItemManager.SetItemCount(item, num2); if (hopper.IsFull()) { ExtraStorageHopperWindowNew.networkRedraw = true; } else { ExtraStorageHopperWindowNew.dirty = true; } } else { ExtraStorageHopperWindowNew.networkRedraw = true; } ExtraStorageHopperWindowNew.TakeItems(WorldScript.mLocalPlayer, hopper, item); UIManager.ForceNGUIUpdate = 0.1f; AudioHUDManager.instance.OrePickup(); if (WorldScript.meGameMode == eGameMode.eSurvival && SurvivalPlayerScript.meTutorialState == SurvivalPlayerScript.eTutorialState.RemoveCoalFromHopper) { SurvivalPlayerScript.TutorialSectionComplete(); } typeof(ExtraStorageHoppers).GetField("mRetakeDebounce", BindingFlags.Instance | BindingFlags.NonPublic).SetValue(hopper, 0.5f); return(true); } } return(false); }