private void BtnConfirmHireInformation_OnPressed(XUiController _sender, OnPressEventArgs _onPressEventArgs) { EntityPlayer player = base.xui.playerUI.entityPlayer; int entityID = 0; if (player.Buffs.HasCustomVar("CurrentNPC")) { entityID = (int)player.Buffs.GetCustomVar("CurrentNPC"); } if (entityID == 0) { return; } EntityAliveSDX myEntity = player.world.GetEntity(entityID) as EntityAliveSDX; if (myEntity != null) { EntityUtilities.Hire(entityID, player as EntityPlayerLocal); } base.xui.playerUI.windowManager.Close(windowGroup.ID); }
public static bool ConvertAndCraft(Recipe recipe, EntityPlayerLocal player, XUiController ItemController) { bool result = false; XUi xui = ItemController.xui; XUiC_CraftingWindowGroup childByType = xui.FindWindowGroupByName("crafting").GetChildByType <XUiC_CraftingWindowGroup>(); ItemValue itemValue = ((XUiC_ItemStack)ItemController).ItemStack.itemValue; if (!CheckIngredients(recipe.ingredients, player)) { return(false); } // Verify we can craft this. if (!recipe.CanCraft(recipe.ingredients, player)) { return(false); } if (!childByType.AddRepairItemToQueue(recipe.craftingTime, itemValue.Clone(), itemValue.MaxUseTimes)) { WarnQueueFull(player); return(false); } ((XUiC_ItemStack)ItemController).ItemStack = ItemStack.Empty.Clone(); xui.PlayerInventory.RemoveItems(recipe.ingredients, 1); result = true; return(result); }
public static void WarnQueueFull(XUiController ItemController) { string text = "No room in queue!"; if (Localization.Exists("wrnQueueFull")) { text = Localization.Get("wrnQueueFull"); } GameManager.ShowTooltip(ItemController.xui.playerUI.entityPlayer, text); Audio.Manager.PlayInsidePlayerHead("ui_denied", -1, 0f, false, false); }
private void BtnOk_OnPressed(XUiController _sender, OnPressEventArgs _onPressEventArgs) { string text = this.txtPassword.Text; float code = 0f; StringParsers.TryParseFloat(text, out code); myEntity.Buffs.AddCustomVar("PathingCode", code); SphereCache.RemovePaths(myEntity.entityId); EntityUtilities.GetNewPositon(myEntity.entityId); EntityUtilities.SetCurrentOrder(myEntity.entityId, EntityUtilities.Orders.Wander); GameManager.ShowTooltip(base.xui.playerUI.entityPlayer, "Pathing Code Set"); base.xui.playerUI.windowManager.Close(base.WindowGroup.ID); }
public void GetVehicleCollectedItemListForPlayer() { if (entityVehicle != null && entityVehicle.player != null && entityVehicle.hudStatBar != null && entityVehicle.uiforPlayer != null) { GUIWindowManager windowManager = entityVehicle.uiforPlayer.windowManager; VehicleCollectedItemList = (XUiC_VehicleCollectedItemList)entityVehicle.hudStatBar.WindowGroup.Controller.GetChildByType <XUiC_VehicleCollectedItemList>(); if (VehicleCollectedItemList != null) { DebugMsg("GetVehicleCollectedItemListForPlayer: VehicleCollectedItemList = " + VehicleCollectedItemList.ToString()); } string msg = "GetVehicleCollectedItemListForPlayer: hudStatBarWinGroup children controllers:\n"; XUiController hudStatBarWinGroup = entityVehicle.hudStatBar.WindowGroup.Controller; foreach (XUiController controller in hudStatBarWinGroup.Children) { msg += ("- " + controller.ToString() + " | type = " + controller.GetType() + " | viewComponent ID = " + controller.viewComponent.ID + " | viewComponent type = " + controller.viewComponent.GetType().ToString() + "\n"); if (controller.viewComponent.ID == "HUDRightStatBars") { //VehicleCollectedItemList = (XUiC_VehicleCollectedItemList)controller.GetChildByType<XUiC_VehicleCollectedItemList>(); XUiController yo = controller.GetChildById("vehicleCollectedItemList"); if (yo != null) { //VehicleCollectedItemList = yo.viewComponent.Controller; msg += ("yo.viewComponent.Controller = " + yo.ToString() + "\n"); } if (VehicleCollectedItemList != null) { msg += ("VehicleCollectedItemList = " + VehicleCollectedItemList.ToString()); } //XUiController childById = controller.GetChildById("vehicleCollectedItemList"); /*msg += " Components:\n"; * Transform[] transforms = controller.viewComponent.UiTransform.gameObject.GetComponentsInChildren<Transform>(true); * foreach (Transform transform in transforms) * { * msg += ("\t- " + transform.gameObject.name + " | " + transform.GetType() + "\n"); * * if (transform.name == "vehicleCollectedItemList") * { * //VehicleCollectedItemList * } * }*/ } } DebugMsg(msg); } }
private void BtnConfirmHireInformation_OnPressed(XUiController _sender, OnPressEventArgs _onPressEventArgs) { LocalPlayerUI uiforPlayer = base.xui.playerUI; // The respondent is an EntityNPC, and we don't have that. Check for the patch scripted otherEntitySDX. Entity respondent = uiforPlayer.xui.Dialog.Respondent; if (respondent == null) { respondent = uiforPlayer.xui.Dialog.otherEntitySDX; } if (respondent != null) { EntityAliveSDX myEntity = uiforPlayer.entityPlayer.world.GetEntity(respondent.entityId) as EntityAliveSDX; if (myEntity != null) { myEntity.SetOwner(uiforPlayer.entityPlayer as EntityPlayerLocal); } } base.xui.playerUI.windowManager.Close(this.windowGroup.ID); }
public static bool Scrap(List <ItemStack> scrapIngredients, ItemStack OriginalStack, XUiController ItemController) { bool result = false; foreach (ItemStack scrapStack in scrapIngredients) { if (!ItemController.xui.PlayerInventory.AddItem(scrapStack, true)) { ItemController.xui.PlayerInventory.DropItem(scrapStack); } } OriginalStack.count -= 1; ((XUiC_ItemStack)ItemController).ItemStack = ((OriginalStack.count <= 0) ? ItemStack.Empty.Clone() : OriginalStack.Clone()); ((XUiC_ItemStack)ItemController).WindowGroup.Controller.SetAllChildrenDirty(); return(result); }
public InventoryHelperSDX(XUiController controller, ConsumeType consumeType) : base(controller, consumeType) { }
private void BtnCancelHireInformation_OnPressed(XUiController _sender, OnPressEventArgs _onPressEventArgs) { this.hireInformationPanel.IsVisible = false; base.xui.playerUI.windowManager.Close(this.windowGroup.ID); }
private void BtnCancel_OnPressed(XUiController _sender, OnPressEventArgs _e) { base.xui.playerUI.windowManager.Close(base.WindowGroup.ID); }
public ItemActionEntryResharpenSDX(XUiController controller) : base(controller, "Resharpen", "ui_game_symbol_wrench", BaseItemActionEntry.GamepadShortCut.DPadLeft, "crafting/craft_click_craft", "ui/ui_denied") { this.lblNeedMaterials = Localization.Get("xuiRepairMissingMats"); controller.xui.PlayerInventory.OnBackpackItemsChanged += this.PlayerInventory_OnBackpackItemsChanged; controller.xui.PlayerInventory.OnToolbeltItemsChanged += this.PlayerInventory_OnToolbeltItemsChanged; }
public static bool Prefix(ItemActionEntryScrap __instance) { // Check if this feature is enabled. if (!Configuration.CheckFeatureStatus(AdvFeatureClass, Feature)) { return(true); } #region vanilla_code XUi xui = __instance.ItemController.xui; XUiC_ItemStack xuiC_ItemStack = (XUiC_ItemStack)__instance.ItemController; ItemStack itemStack = xuiC_ItemStack.ItemStack.Clone(); Recipe scrapableRecipe = CraftingManager.GetScrapableRecipe(itemStack.itemValue, itemStack.count); if (scrapableRecipe == null) { return(true); } XUiController xuiController = __instance.ItemController.xui.FindWindowGroupByName("workstation_workbench"); if (xuiController == null || !xuiController.WindowGroup.isShowing) { xuiController = xui.FindWindowGroupByName("crafting"); } XUiC_CraftingWindowGroup childByType = xuiController.GetChildByType <XUiC_CraftingWindowGroup>(); if (childByType == null) { return(true); } #endregion vanilla_code LocalPlayerUI uiforPlayer = LocalPlayerUI.GetUIForPlayer(__instance.ItemController.xui.playerUI.entityPlayer); List <ItemStack> scrapItems = new List <ItemStack>(); ItemClass forId = ItemClass.GetForId(itemStack.itemValue.type); // Check if ScrapItems is specified if (forId.Properties.Classes.ContainsKey("ScrapItems")) { DynamicProperties dynamicProperties3 = forId.Properties.Classes["ScrapItems"]; scrapItems = ItemsUtilities.ParseProperties(dynamicProperties3); ItemsUtilities.Scrap(scrapItems, itemStack, __instance.ItemController); return(false); } else if (forId.Properties.Contains("ScrapItems")) // Support for <property name="ScrapItems" value="resourceWood,0,resourceLeather,2" /> { string strData = forId.Properties.Values["ScrapItems"].ToString(); scrapItems = ItemsUtilities.ParseProperties(strData); ItemsUtilities.Scrap(scrapItems, itemStack, __instance.ItemController); return(false); } // Check if Repair Items is specified, if the ScrapItems wasn't. else if (forId.Properties.Classes.ContainsKey("RepairItems")) { DynamicProperties dynamicProperties3 = forId.Properties.Classes["RepairItems"]; scrapItems = ItemsUtilities.ParseProperties(dynamicProperties3); ItemsUtilities.Scrap(scrapItems, itemStack, __instance.ItemController); return(false); } else if (forId.RepairTools == null || forId.RepairTools.Length <= 0) { if (CraftingManager.GetRecipe(forId.GetItemName()) == null) { return(true); } if (CraftingManager.GetRecipe(forId.GetItemName()).tags.Test_AnySet(FastTags.Parse("usevanillascrap"))) { return(true); } // If there's a recipe, reduce it Recipe recipe = ItemsUtilities.GetReducedRecipes(forId.GetItemName(), 2); ItemsUtilities.Scrap(recipe.ingredients, itemStack, __instance.ItemController); return(false); } return(true); }
public static void Postfix(XUiC_ItemActionList __instance, XUiC_ItemActionList.ItemActionListTypes _actionListType, XUiController itemController) { // Check if this feature is enabled. if (!Configuration.CheckFeatureStatus(AdvFeatureClass, Feature)) { return; } if (_actionListType == XUiC_ItemActionList.ItemActionListTypes.Item) { XUiC_ItemStack xuiC_ItemStack = (XUiC_ItemStack)itemController; ItemStack itemStack = xuiC_ItemStack.ItemStack; ItemValue itemValue = itemStack.itemValue; if (itemValue.MaxUseTimes > 0 && itemValue.UseTimes > 0f) { if (ItemsUtilities.CheckProperty(itemValue.ItemClass, "RepairItems")) { __instance.AddActionListEntry(new ItemActionEntryRepair(itemController)); } if (ItemsUtilities.CheckProperty(itemValue.ItemClass, "Resharpen")) { __instance.AddActionListEntry(new ItemActionEntryResharpenSDX(itemController)); } } } }
private void HandleOnSubmitHandler(XUiController _sender, string _text) { this.highlight(_text); }
public void OnDriverOn() { //InitController(); if (entityVehicle != null && entityVehicle.player != null && entityVehicle.hudStatBar != null) { string msg = "VehicleWeapons.OnDriverOn: hudStatBarWinGroup children controllers:\n"; XUiController hudStatBarWinGroup = entityVehicle.hudStatBar.WindowGroup.Controller; foreach (XUiController controller in hudStatBarWinGroup.Children) { msg += ("- " + controller.ToString() + " | type = " + controller.GetType() + " | viewComponent ID = " + controller.viewComponent.ID + " | viewComponent type = " + controller.viewComponent.GetType().ToString() + "\n"); if (controller.viewComponent.ID == "HUDRightStatBars") { msg += " Components:\n"; Transform[] transforms = controller.viewComponent.UiTransform.gameObject.GetComponentsInChildren <Transform>(true); foreach (Transform transform in transforms) { msg += ("\t- " + transform.gameObject.name + " | " + transform.GetType() + "\n"); if (transform.name == "hudVehicleWeaponsAmmo") { vehicleAmmoUIRoot = transform.gameObject; vehicleAmmoUIRoot.SetActive(true); } if (transform.name == "vehicleHealthIcon") { UISprite[] vehicleHealthSprites = transform.gameObject.GetComponentsInChildren <UISprite>(true); if (vehicleHealthSprites.Length > 0) { vehicleHealthSprites[0].spriteName = entityVehicle.GetMapIcon(); msg += ("\t\t- vehicleHealthSprite = " + vehicleHealthSprites[0].spriteName + "\n"); } } if (transform.name == "vehicleHealth") { UISprite[] vehicleHealthSprites = transform.gameObject.GetComponentsInChildren <UISprite>(true); foreach (UISprite sprite in vehicleHealthSprites) { if (sprite.gameObject.name == "Icon") { miniBikeDefaultSprite = sprite; miniBikeDefaultSprite.spriteName = ""; } } } if (transform.name == "hudVehicleGunAmmo") { //gunAmmoUIRoot = transform.gameObject; //gunAmmoUIRoot.SetActive(entityVehicle.HasGun() && entityVehicle.HasGunAmmo()); bool bShowGun = entityVehicle.HasGun() && entityVehicle.HasGunAmmo(); Component[] comps = transform.gameObject.GetComponentsInChildren <Component>(); foreach (Component comp in comps) { if (comp.name == "BarContent" && comp.GetType() == typeof(UISprite)) { ((UISprite)comp).enabled = bShowGun; } if (comp.name == "Icon" && comp.GetType() == typeof(UISprite)) { msg += ("\t\t- " + comp.gameObject.name + " | " + comp.GetType() + "\n"); gunAmmoUISprite = (UISprite)comp; gunAmmoItemValue = entityVehicle.GetWeaponAmmoType("vehicleGun"); gunAmmoUISprite.spriteName = gunAmmoItemValue.ItemClass.GetIconName(); gunAmmoUISprite.enabled = bShowGun; } if (comp.name == "TextContent" && comp.GetType() == typeof(UILabel)) { msg += ("\t\t- " + comp.gameObject.name + " | " + comp.GetType() + "\n"); gunAmmoUILabel = (UILabel)comp; gunAmmoUILabel.text = entityVehicle.uiforPlayer.xui.PlayerInventory.GetItemCount(gunAmmoItemValue.ItemClass.Id).ToString(); gunAmmoUILabel.enabled = bShowGun; } } } if (transform.name == "hudVehicleExplosiveLauncherAmmo") { //explosiveAmmoUIRoot = transform.gameObject; //explosiveAmmoUIRoot.SetActive(entityVehicle.HasExplosiveLauncher() && entityVehicle.HasExplosiveLauncherAmmo()); bool bShowEL = entityVehicle.HasExplosiveLauncher() && entityVehicle.HasExplosiveLauncherAmmo(); Component[] comps = transform.gameObject.GetComponentsInChildren <Component>(); foreach (Component comp in comps) { if (comp.name == "BarContent" && comp.GetType() == typeof(UISprite)) { ((UISprite)comp).enabled = bShowEL; } if (comp.name == "Icon" && comp.GetType() == typeof(UISprite)) { msg += ("\t\t- " + comp.gameObject.name + " | " + comp.GetType() + "\n"); explosiveAmmoUISprite = (UISprite)comp; explosiveAmmoItemValue = entityVehicle.GetWeaponAmmoType("vehicleExplosiveLauncher"); explosiveAmmoUISprite.spriteName = explosiveAmmoItemValue.ItemClass.GetIconName(); explosiveAmmoUISprite.enabled = bShowEL; } if (comp.name == "TextContent" && comp.GetType() == typeof(UILabel)) { msg += ("\t\t- " + comp.gameObject.name + " | " + comp.GetType() + "\n"); explosiveAmmoUILabel = (UILabel)comp; explosiveAmmoUILabel.text = entityVehicle.uiforPlayer.xui.PlayerInventory.GetItemCount(explosiveAmmoItemValue.ItemClass.Id).ToString(); explosiveAmmoUILabel.enabled = bShowEL; } } } } } } DebugMsg(msg); } }
private void TxtPassword_OnSubmitHandler(XUiController _sender, string _text) { this.BtnOk_OnPressed(_sender, new OnPressEventArgs(-1)); }
private void HandleOnChangeHandler(XUiController _sender, string _text, bool _changeFromCode) { this.highlight(_text); }
public static bool ConvertAndCraft(string strRecipe, int Reduction, EntityPlayerLocal player, XUiController ItemController) { bool result = false; Recipe newRecipe = GetReducedRecipes(strRecipe, Reduction); result = ConvertAndCraft(newRecipe, player, ItemController); return(result); }
private void TextInput_OnChangeHandler(XUiController _sender, string _text, bool _changeFromCode) { SetText(_text, false); }
private void TextInput_OnInputAbortedHandler(XUiController _sender) { xui.playerUI.windowManager.Close(WindowGroup.ID); }
private void closeButton_OnPress(XUiController _sender, OnPressEventArgs _e) { xui.playerUI.windowManager.Close(WindowGroup.ID); }
private void TextInput_OnSubmitHandler(XUiController _sender, string _text) { SetText(_text, true); xui.playerUI.windowManager.Close(WindowGroup.ID); }