public void Init(MedicalType type, GameObject targetTrans) { mtype = type; Client.IGameOption option = Client.ClientGlobal.Instance().gameOption; if (option == null) { return; } int itemid = 0; if (type != MedicalType.HpAtOnce) { List <uint> medicalIDs = new List <uint>(); List <ItemDataBase> items = GameTableManager.Instance.GetTableList <ItemDataBase>(); uint level = (uint)((null != DataManager.Instance.MainPlayer) ? DataManager.Instance.MainPlayer.GetProp((int)Client.CreatureProp.Level) : 0); for (int i = 0; i < items.Count; i++) { if (items[i].useLevel <= level) { if (items[i].baseType == 2 && items[i].subType == (uint)type + 1) { medicalIDs.Add(items[i].itemID); } } } if (medicalIDs.Count > 0) { int exeTimes = 0; for (int m = 0; m < medicalIDs.Count; m++) { int num = DataManager.Manager <ItemManager>().GetItemNumByBaseId(medicalIDs[m]); if (num != 0) { itemid = (int)medicalIDs[m]; } else { exeTimes++; } } if (exeTimes == medicalIDs.Count) { itemid = (int)medicalIDs[medicalIDs.Count - 1]; } } } else { itemid = option.GetInt("MedicalSetting", type.ToString() + "itemid", 0); } UpdateItem((uint)itemid, targetTrans); }
public void Save() { Client.IGameOption option = Client.ClientGlobal.Instance().gameOption; if (option == null) { return; } if (uiitem != null) { option.WriteInt("MedicalSetting", mtype.ToString() + "itemid", (int)m_itemid); } }