Beispiel #1
0
 public static void InitDisplayedStats(Item __instance)
 {
     try
     {
         if (__instance.ItemID == (int)eItemIDs.FlintAndSteel
             )
         //if (Enum.IsDefined(typeof(eItemIDs), __instance.ItemID))
         {
             //WorkInProgress.Instance.MyLogger.LogDebug($"InitDisplayedStats[{__instance.Name}]: add Durability");
             DisplayedInfos[] m_displayedInfos = (DisplayedInfos[])AccessTools.Field(typeof(Item), "m_displayedInfos").GetValue(__instance);
             m_displayedInfos = new DisplayedInfos[1] {
                 DisplayedInfos.Durability
             };
             AccessTools.Field(typeof(Item), "m_displayedInfos").SetValue(__instance, m_displayedInfos);
         }
     }
     catch (Exception ex)
     {
         WorkInProgress.Instance.MyLogger.LogError("InitDisplayedStats: " + ex.Message);
     }
 }
Beispiel #2
0
 public static void InitDisplayedStats(Item __instance)
 {
     try
     {
         if (__instance.ItemID == (int)eItemIDs.BedrollKit ||
             __instance.ItemID == (int)eItemIDs.CamoTentKit ||
             __instance.ItemID == (int)eItemIDs.FurTentKit ||
             __instance.ItemID == (int)eItemIDs.LuxuryTent ||
             __instance.ItemID == (int)eItemIDs.MageTent ||
             __instance.ItemID == (int)eItemIDs.TentKit
             )
         {
             DisplayedInfos[] m_displayedInfos = (DisplayedInfos[])AccessTools.Field(typeof(Item), "m_displayedInfos").GetValue(__instance);
             m_displayedInfos = new DisplayedInfos[1] {
                 DisplayedInfos.Durability
             };
             AccessTools.Field(typeof(Item), "m_displayedInfos").SetValue(__instance, m_displayedInfos);
         }
     }
     catch (Exception ex)
     {
         WorkInProgress.Instance.MyLogger.LogError("InitDisplayedStats: " + ex.Message);
     }
 }
 public static void RefreshDetail(ItemDetailsDisplay __instance, int _rowIndex, DisplayedInfos _infoType)
 {
     try
     {
         if (_infoType != DisplayedInfos.Durability)
         {
             return;
         }
         Item m_lastItem = (Item)AccessTools.Field(typeof(ItemDetailsDisplay), "m_lastItem").GetValue(__instance);
         if (m_lastItem.IsPerishable && m_lastItem.CurrentDurability > 0)
         {
             ItemDetailRowDisplay row = (ItemDetailRowDisplay)AccessTools.Method(typeof(ItemDetailsDisplay), "GetRow").Invoke(__instance, new object[] { _rowIndex });
             Text m_lblDataName       = (Text)AccessTools.Field(typeof(ItemDetailRowDisplay), "m_lblDataName").GetValue(row);
             row.SetInfo(m_lblDataName.text, GameTimetoDays(m_lastItem.CurrentDurability / m_lastItem.PerishScript.DepletionRate));
         }
     }
     catch (Exception ex)
     {
         InnRentStash.MyLogger.LogError("RefreshDetail: " + ex.Message);
     }
 }