public void SetInfo(int star = 0, int stronglv = 0) { cur_equip_data = EquipMediator.cur_equip; cur_star = star; cur_strong_lv = stronglv; next_strong_lv = cur_strong_lv >= cur_equip_info.maxStrongLevel ? cur_equip_info.maxStrongLevel : cur_strong_lv + 1; SetEquipInfo(); SetStrongLvInfo(); SetPropInfo(); }
public void SetParameter(EquipItemInfo equipItemInfo) { this.equipItemInfo = equipItemInfo; abilityItemInfo = equipItemInfo.GetAbilityItem(); EnableAbilityChange = true; if (!base.uiFirstUpdate) { RefreshUI(); } }
protected void OnQuery_LOTTERY_LIST() { EquipItemInfo selectEquipData = MonoBehaviourSingleton <SmithManager> .I.GetSmithData <SmithManager.SmithGrowData>().selectEquipData; GameSection.SetEventData(new object[2] { selectEquipData, SmithEquipBase.SmithType.ABILITY_CHANGE }); }
/// <summary> /// 设置升星装备 /// </summary> public void SetEquip() { cur_equip_data = EquipMediator.cur_equip; cur_equip_info = EquipConfig.GetEquipInfo(int.Parse(cur_equip_data.itemID)); select_equip_id = EquipMediator.cur_select_player_id == 0 ? GameConvert.LongConvert(cur_equip_data.uuid) : GameConvert.LongConvert(cur_equip_data.itemID); ServerCustom.instance.SendClientMethods(EquipProxy.CLIENT_EQUIP_STAR, EquipMediator.cur_select_player_id, select_equip_id); }
protected virtual void OnQuery_StatusSwapEquipConfirm_YES() { int num = selectEquipSetData.EquippingIndexOf(EquipItem); int index = selectEquipSetData.index; EquipItemInfo equipItemInfo = selectEquipSetData.equipSetInfo.item[index]; selectEquipSetData.equipSetInfo.item[index] = selectEquipSetData.equipSetInfo.item[num]; selectEquipSetData.equipSetInfo.item[num] = equipItemInfo; MonoBehaviourSingleton <StatusManager> .I.SwapWeapon(num, index); }
protected bool OnSelectItemAndChekIsGoStatus() { EquipItemInfo equipItem = EquipItem; ulong num = (equipItem == null) ? 0 : equipItem.uniqueID; if (num == 0L && !IsCreateRemoveButton()) { GameSection.ChangeEvent("NO_SELECTED", null); return(false); } if (IsAlreadyEquipItem(equipItem)) { int num2 = selectEquipSetData.EquippingIndexOf(equipItem); if (num2 == 0 && selectEquipSetData.GetEquippingItem() == null) { GameSection.ChangeEvent("NOT_SWAP", null); } else { GameSection.ChangeEvent("SWAP_CONFIRM", new object[2] { (num2 + 1).ToString(), equipItem.tableData.name }); } return(false); } EquipItemInfo compareItemData = GetCompareItemData(); ulong num3 = (compareItemData == null) ? 0 : compareItemData.uniqueID; if (num3 != num) { if (equipItem != null && !MonoBehaviourSingleton <GameSceneManager> .I.CheckEquipItemAndOpenUpdateAppDialog(equipItem.tableData, OnCancelSelect)) { GameSection.StopEvent(); return(false); } if (equipItem != null && equipItem.tableData != null) { GameSaveData.instance.RemoveNewIconAndSave(ItemIcon.GetItemIconType(equipItem.tableData.type), equipItem.uniqueID); } ChangeSelectItem(equipItem, compareItemData); if (!TutorialStep.HasAllTutorialCompleted()) { TutorialStep.isChangeLocalEquip = true; } return(false); } NotChangeItem(equipItem, compareItemData); if (!TutorialStep.HasAllTutorialCompleted()) { TutorialStep.isChangeLocalEquip = true; } return(true); }
/// <summary> /// 设置升星装备 /// </summary> public void SetEquip() { select_equip_data = null; cur_equip_data = EquipMediator.cur_equip; cur_equip_info = EquipConfig.GetEquipInfo(int.Parse(cur_equip_data.itemID)); select_equip_id = EquipMediator.cur_select_player_id == 0 ? GameConvert.LongConvert(cur_equip_data.uuid) : GameConvert.LongConvert(cur_equip_data.itemID); SetInfo(); }
private void OnQuery_NEXT_EVOLVE_AUTO() { EquipItemInfo equipItemInfo = resultData.itemData as EquipItemInfo; EventData[] autoEvents = new EventData[2] { new EventData("NEXT_EVOLVE", 1), new EventData("TRY_ON", equipItemInfo.uniqueID) }; MonoBehaviourSingleton <GameSceneManager> .I.SetAutoEvents(autoEvents); }
public override void Initialize() { SmithManager.SmithGrowData smithData = MonoBehaviourSingleton <SmithManager> .I.GetSmithData <SmithManager.SmithGrowData>(); itemInfo = smithData.selectEquipData; shadowEvolveData = itemInfo.tableData.GetShadowEvolveEquipTable(); EquipItemTable.EquipItemData rootEquipTable = shadowEvolveData.GetRootEquipTable(); createData = Singleton <CreateEquipItemTable> .I.GetCreateItemDataByEquipItem(rootEquipTable.id); base.Initialize(); }
protected void SetData(EquipItemInfo item, SkillSlotUIData[] slot_data, bool is_show_main_status, int equipping_sp_index) { SetEquipIndexSprite(equipping_sp_index); SetFavorite(item.isFavorite); SetIconStatusSprite(ItemIconDetail.ICON_STATUS.NONE); bool flag = item.tableData.IsWeapon(); if (flag) { SetElement(item.GetTargetElement(), item.elemAtk, true); } else { int num = item.elemDef; if (item.tableData.isFormer) { num = Mathf.FloorToInt((float)num * 0.1f); } SetElement(item.GetTargetElement(), num, false); } if (is_show_main_status) { infoRootAry[1].SetActive(true); infoRootAry[2].SetActive(false); SetVisibleBG(true); SetName(item.tableData.name); SetLevel(item.level, item.tableData.maxLv, item.tableData.IsVisual()); SetEquipValue(flag, (!flag) ? item.def : item.atk); } else { infoRootAry[1].SetActive(false); infoRootAry[2].SetActive(true); SetVisibleBG(true); SetName(item.tableData.name); bool enabled = true; EquipItemAbility[] ability = item.ability; objAbilityRoot.GetComponentsInChildren <UILabel>(Temporary.uiLabelList); int i = 0; for (int count = Temporary.uiLabelList.Count; i < count; i++) { UILabel uILabel = Temporary.uiLabelList[i]; uILabel.set_enabled(i < ability.Length && ability[i].id != 0 && ability[i].ap > 0); if (uILabel.get_enabled()) { uILabel.text = ability[i].GetNameAndAP(); enabled = false; } } Temporary.uiLabelList.Clear(); lblNonAbility.set_enabled(enabled); } }
protected override void UpdateEquipSkillButton(EquipItemInfo item, int i) { //IL_0066: Unknown result type (might be due to invalid IL or missing references) Transform ctrl = GetCtrl(icons_btn[i]); bool flag = item != null && item.tableID != 0; if (flag) { SetSkillIconButton(ctrl, UI.OBJ_SKILL_BUTTON_ROOT, "SkillIconButtonTOP", item.tableData, GetSkillSlotData(item), "SKILL_ICON_BUTTON", i); } FindCtrl(ctrl, UI.OBJ_SKILL_BUTTON_ROOT).get_gameObject().SetActive(flag); }
protected SkillSlotUIData[] GetSkillSlotData(EquipItemInfo equip) { if (equip == null) { return(null); } int maxSlot = equip.GetMaxSlot(); if (maxSlot == 0) { return(null); } SkillSlotUIData[] ui_slot_data = new SkillSlotUIData[maxSlot]; int currentSetNo = MonoBehaviourSingleton <StatusManager> .I.GetCurrentEquipSetNo(); SkillItemInfo[] skillInventoryClone = MonoBehaviourSingleton <InventoryManager> .I.GetSkillInventoryClone(); SkillItemInfo[] array = Array.FindAll(skillInventoryClone, (SkillItemInfo skill_item) => skill_item.equipSetSkill.Find((EquipSetSkillData skill) => skill.equipItemUniqId == equip.uniqueID && skill.equipSetNo == currentSetNo) != null); if (array != null && array.Length > maxSlot) { Log.Error("Attach Skill Num is Over Skill Slot Num"); } SkillItemTable.SkillSlotData[] slot_data = equip.tableData.GetSkillSlot(equip.exceed); Array.ForEach(array, delegate(SkillItemInfo info) { if (info != null) { EquipSetSkillData equipSetSkillData = info.equipSetSkill.Find((EquipSetSkillData x) => x.equipSetNo == currentSetNo); if (equipSetSkillData != null) { int num2 = equipSetSkillData.equipSlotNo; if (equip.IsExceedSkillSlot(num2)) { num2 = equip.GetExceedSkillIndex(equipSetSkillData.equipSlotNo); } ui_slot_data[num2] = new SkillSlotUIData(); ui_slot_data[num2].slotData = new SkillItemTable.SkillSlotData(info.tableData.id, slot_data[num2].slotType); ui_slot_data[num2].itemData = info; } } }); int i = 0; for (int num = ui_slot_data.Length; i < num; i++) { if (ui_slot_data[i] == null) { ui_slot_data[i] = new SkillSlotUIData(); ui_slot_data[i].slotData = new SkillItemTable.SkillSlotData(0u, equip.tableData.GetSkillSlot(equip.exceed)[i].slotType); } } return(ui_slot_data); }
private void CalcEquipAttachSkillStatus(EquipItemInfo item, out int atk, out int def, out int hp) { int tmp_atk = 0; int tmp_def = 0; int tmp_hp = 0; if (item != null) { SkillSlotUIData[] skillSlotData = GetSkillSlotData(item); if (skillSlotData != null) { int index; Array.ForEach(skillSlotData, delegate(SkillSlotUIData data) { if (data != null && data.slotData.skill_id != 0) { ELEMENT_TYPE targetElement = item.GetTargetElement(); int elem_atk = 0; if (item.tableData.IsWeapon()) { switch (targetElement) { default: elem_atk = data.itemData.atkList[(int)(targetElement + 1)]; break; case ELEMENT_TYPE.MULTI: index = 0; data.itemData.atkList.ForEach(delegate(int _elem_atk) { if (index > 0) { elem_atk += _elem_atk; } index++; }); break; case ELEMENT_TYPE.MAX: break; } } tmp_atk += data.itemData.atk + elem_atk; tmp_def += data.itemData.def; tmp_hp += data.itemData.hp; } }); } } atk = tmp_atk; def = tmp_def; hp = tmp_hp; }
public override void OnNotify(NOTIFY_FLAG flags) { if ((flags & (NOTIFY_FLAG.UPDATE_SKILL_CHANGE | NOTIFY_FLAG.UPDATE_SKILL_FAVORITE)) != (NOTIFY_FLAG)0L) { EquipItemInfo equipItemInfo = eventData as EquipItemInfo; if (equipItemInfo != null) { eventData = MonoBehaviourSingleton <InventoryManager> .I.equipItemInventory.Find(equipItemInfo.uniqueID); } } base.OnNotify(flags); }
public void SetupLoadInfo(EquipSetInfo equip_set, ulong weapon_uniq_id, ulong armor_uniq_id, ulong helm_uniq_id, ulong arm_uniq_id, ulong leg_uniq_id, bool show_helm) { EquipItemInfo equipItemInfo = (weapon_uniq_id != 0L) ? MonoBehaviourSingleton <InventoryManager> .I.equipItemInventory.Find(weapon_uniq_id) : equip_set.item[0]; EquipItemInfo equipItemInfo2 = (armor_uniq_id != 0L) ? MonoBehaviourSingleton <InventoryManager> .I.equipItemInventory.Find(armor_uniq_id) : equip_set.item[3]; EquipItemInfo equipItemInfo3 = (!show_helm) ? null : ((helm_uniq_id != 0L) ? MonoBehaviourSingleton <InventoryManager> .I.equipItemInventory.Find(helm_uniq_id) : equip_set.item[4]); EquipItemInfo equipItemInfo4 = (arm_uniq_id != 0L) ? MonoBehaviourSingleton <InventoryManager> .I.equipItemInventory.Find(arm_uniq_id) : equip_set.item[5]; EquipItemInfo equipItemInfo5 = (leg_uniq_id != 0L) ? MonoBehaviourSingleton <InventoryManager> .I.equipItemInventory.Find(leg_uniq_id) : equip_set.item[6]; SetupLoadInfo((equipItemInfo != null) ? equipItemInfo.tableID : 0, (equipItemInfo2 != null) ? equipItemInfo2.tableID : 0, (equipItemInfo3 != null) ? equipItemInfo3.tableID : 0, (equipItemInfo4 != null) ? equipItemInfo4.tableID : 0, (equipItemInfo5 != null) ? equipItemInfo5.tableID : 0); }
public override void Initialize() { //IL_0029: Unknown result type (might be due to invalid IL or missing references) equipItemInfo = MonoBehaviourSingleton <SmithManager> .I.GetSmithData <SmithManager.SmithGrowData>().selectEquipData; Transform val = SetPrefab((Enum)UI.OBJ_ABILITY_LIST_ROOT, "AbilityChangeAbilityList"); abilityList = val.get_gameObject().AddComponent <AbilityChangeAbilityList>(); abilityList.uiVisible = true; SetLabelText((Enum)UI.STR_DECISION_REFLECT, base.sectionData.GetText("STR_DECISION")); SetLabelText((Enum)UI.STR_LIST_REFLECT, base.sectionData.GetText("STR_LIST")); base.Initialize(); }
protected override void EquipImg() { if (smithType != SmithType.SKILL_GROW) { EquipItemInfo equipItemInfo = resultData.itemData as EquipItemInfo; SetRenderEquipModel((Enum)UI.TEX_MODEL, equipItemInfo.tableID, -1, -1, 1f); } else { SkillItemInfo skillItemInfo = resultData.itemData as SkillItemInfo; SetRenderSkillItemModel((Enum)UI.TEX_MODEL, skillItemInfo.tableID, true, false); } }
public override void Initialize() { object[] array = GameSection.GetEventData() as object[]; if (array[0] is EquipItemInfo) { equipItemInfo = (array[0] as EquipItemInfo); } if (array[1] is AbilityItemSortData) { abilityItemInfo = (array[1] as AbilityItemSortData); } base.Initialize(); }
public void SendCreateEquipItem(uint create_table_id, Action <Error, EquipItemInfo> call_back) { SmithCreateModel.RequestSendForm requestSendForm = new SmithCreateModel.RequestSendForm(); requestSendForm.cid = (int)create_table_id; Protocol.Send(SmithCreateModel.URL, requestSendForm, delegate(SmithCreateModel ret) { EquipItemInfo arg = null; if (ret.Error == Error.None) { arg = MonoBehaviourSingleton <InventoryManager> .I.equipItemInventory.Find(ulong.Parse(ret.result.equipUniqId)); } call_back(ret.Error, arg); }, string.Empty); }
public int GetElemDef(EquipItemInfo item) { if (item == null) { return(0); } int elemDefType = item.GetElemDefType(); if (elemDefType == -1) { return(0); } return(_GetElem(elemDefType, elemDef)); }
private void OnQuery_SmithExceedConfirm_YES() { if (smithData == null) { GameSection.StopEvent(); } else { EquipItemInfo selectEquipData = smithData.selectEquipData; if (selectEquipData == null) { GameSection.StopEvent(); } else { SmithManager.ResultData result_data = new SmithManager.ResultData(); result_data.beforeRarity = (int)selectEquipData.tableData.rarity; result_data.beforeLevel = selectEquipData.level; result_data.beforeMaxLevel = selectEquipData.tableData.maxLv; result_data.beforeExceedCnt = selectEquipData.exceed; result_data.beforeAtk = selectEquipData.atk; result_data.beforeDef = selectEquipData.def; result_data.beforeHp = selectEquipData.hp; result_data.beforeElemAtk = selectEquipData.elemAtk; result_data.beforeElemDef = selectEquipData.elemDef; result_data.isExceed = true; EquipItemExceedTable.EquipItemExceedData equipItemExceedDataIncludeLimited = Singleton <EquipItemExceedTable> .I.GetEquipItemExceedDataIncludeLimited(selectEquipData.tableData); if (equipItemExceedDataIncludeLimited == null || equipItemExceedDataIncludeLimited.exceed.Length - 1 < selectIndex) { GameSection.StopEvent(); } else { uint itemId = equipItemExceedDataIncludeLimited.exceed[selectIndex].itemId; GameSection.StayEvent(); MonoBehaviourSingleton <SmithManager> .I.SendExceedEquipItem(selectEquipData.uniqueID, itemId, delegate(Error err, EquipItemInfo exceed_equip_item) { bool flag = err == Error.None; GameSection.ResumeEvent(flag, null); if (flag) { result_data.itemData = exceed_equip_item; GameSection.SetEventData(result_data); } }); } } } }
void UpdateBagGridItem(UIGridItem item) { if (item == null || item.mScripts == null || item.oData == null) { return; } Item info = item.oData as Item; item.onClick = OnClickItem; UISprite color = item.mScripts[0] as UISprite; UITexture itemIcon = item.mScripts[1] as UITexture; UILabel Name = item.mScripts[2] as UILabel; UILabel num = item.mScripts[3] as UILabel; UISprite gou = item.mScripts[4] as UISprite; UISprite sprite = item.mScripts[5] as UISprite; sprite.gameObject.SetActive(false); Name.gameObject.SetActive(info.itemID != string.Empty); num.gameObject.SetActive(info.itemID != string.Empty); if (info.itemID != string.Empty) { gou.gameObject.SetActive(batchSell); color.gameObject.SetActive(true); Name.gameObject.SetActive(true); num.gameObject.SetActive(true); itemIcon.gameObject.SetActive(true); ItemInfo data = ItemManager.GetItemInfo(info.itemID); int m_color = data.color; if (currentType == ItemType.Equip) { EquipItemInfo equip = EquipConfig.GetEquipDataByUUID(info.uuid); if (equip != null) { m_color = equip.star; } } color.spriteName = UtilTools.StringBuilder("color", m_color); Name.text = TextManager.GetItemString(info.itemID); num.text = info.amount.ToString(); LoadSprite.LoaderItem(itemIcon, info.itemID); } else { gou.gameObject.SetActive(false); color.gameObject.SetActive(false); Name.gameObject.SetActive(false); num.gameObject.SetActive(false); itemIcon.gameObject.SetActive(false); } }
public static ItemIcon CreateSmallListItemIcon(ITEM_ICON_TYPE iconType, EquipItemSortData sortData, Transform parent, bool isNew, int no, GET_TYPE getType) { EquipItemTable.EquipItemData tableData = sortData.equipData.tableData; EquipItemInfo equipItemInfo = sortData.GetItemData() as EquipItemInfo; ItemIconDetailSmall itemIconDetailSmall = ItemIcon.CreateIcon <ItemIconDetailSmall>(MonoBehaviourSingleton <GlobalSettingsManager> .I.linkResources.itemIconDetailSmallPrefab, iconType, tableData.GetIconID(), tableData.rarity, parent, equipItemInfo.GetTargetElementPriorityToTable(), null, -1, string.Empty, 0, isNew, -1, false, "No." + no.ToString("D4"), false, 0, 0, false, QUEST_ICON_SIZE_TYPE.DEFAULT, getType); itemIconDetailSmall.EquipTypeIconInit(tableData); itemIconDetailSmall.SetEquipIndexSprite(-1); itemIconDetailSmall.EquipTypeIconInit(null); itemIconDetailSmall.SetIconStatusSprite(ItemIconDetail.ICON_STATUS.NONE); itemIconDetailSmall.SetupSelectNumberSprite(-1); itemIconDetailSmall.SetFavoriteIcon(false); return(itemIconDetailSmall); }
private void OnQuery_SLOT_DETAIL() { selectIndex = (int)GameSection.GetEventData(); ItemDetailEquip.CURRENT_SECTION cURRENT_SECTION = callSection; if (cURRENT_SECTION != ItemDetailEquip.CURRENT_SECTION.QUEST_RESULT) { cURRENT_SECTION = ItemDetailEquip.CURRENT_SECTION.STATUS_SKILL_LIST; } bool flag = false; if (isSkillUniqItem) { SkillItemInfo itemData = slotData[selectIndex].itemData; if (itemData != null) { SkillItemSortData skillItemSortData = new SkillItemSortData(); skillItemSortData.SetItem(itemData); EquipItemInfo equipItemInfo = eventData as EquipItemInfo; GameSection.SetEventData(new object[4] { cURRENT_SECTION, skillItemSortData, equipItemInfo, selectIndex }); } else { flag = true; } } else if (slotData[selectIndex].slotData.skill_id != 0) { SkillItemTable.SkillItemData skillItemData = Singleton <SkillItemTable> .I.GetSkillItemData(slotData[selectIndex].slotData.skill_id); GameSection.SetEventData(new object[2] { cURRENT_SECTION, skillItemData }); } else { flag = true; } if (flag) { GameSection.StopEvent(); } }
/// <summary> /// 点击装备 /// </summary> /// <param name="data"></param> /// <param name="go"></param> private void ClickEquipItem(UIGridItem data) { select_equip = data.oData as EquipItemInfo; if (SelectItem != null) { SelectItem(select_equip); } else { ServerCustom.instance.SendClientMethods(EquipProxy.CLIENT_EQUIP_PUT_ON, player_id, GameConvert.LongConvert(select_equip.uuid)); } ClosePanel(null); }
public override void Initialize() { smithType = SmithType.GROW; SmithManager.SmithGrowData smithData = MonoBehaviourSingleton<SmithManager>.I.GetSmithData<SmithManager.SmithGrowData>(); GameSection.SetEventData(smithData.selectEquipData); base.Initialize(); EquipItemInfo equipData = GetEquipData(); if (equipData != null) { string text = base.sectionData.GetText("CAPTION_GUILD_REQUEST"); MonoBehaviourSingleton<UIManager>.I.common.AttachCaption(this, base.sectionData.backButtonIndex, text); } aimLv = GetEquipData().level + 1; }
public EquipItemInfo GetSmithEquipItemInfo(SmithEquipBase.SmithType type) { EquipItemInfo result = null; if (type != 0) { SmithGrowData smithGrowData = GetSmithData <SmithGrowData>(); if (smithGrowData != null) { result = smithGrowData.selectEquipData; } } return(result); }
private void UpdateInventory() { EquipItemTable.EquipItemData[] items = null; int start = currentPageIndex * ONE_PAGE_EQUIP_NUM; int last = start + ONE_PAGE_EQUIP_NUM; items = GetEquips(start, last); if (items != null) { SetPageNumText((Enum)UI.LBL_PAGE_NOW, currentPageIndex + 1); SetDynamicList((Enum)UI.GRD_INVENTORY, string.Empty, items.Length, false, (Func <int, bool>) null, (Func <int, Transform, Transform>) null, (Action <int, Transform, bool>) delegate(int i, Transform t, bool isRecycle) { SetActive(t, true); EquipItemTable.EquipItemData equipItemData = items[i]; EquipItemSortData equipItemSortData = new EquipItemSortData(); EquipItemInfo equipItemInfo = new EquipItemInfo(); equipItemInfo.tableData = equipItemData; equipItemInfo.SetDefaultData(); equipItemSortData.SetItem(equipItemInfo); ITEM_ICON_TYPE iconType = ItemIcon.GetItemIconType(equipItemData.type); bool flag = !MonoBehaviourSingleton <AchievementManager> .I.CheckEquipItemCollection(equipItemData); if (flag) { iconType = ITEM_ICON_TYPE.UNKNOWN; } bool isNew = false; GET_TYPE getType = GET_TYPE.PAY; if (equipItemData != null) { getType = equipItemData.getType; } ItemIcon itemIcon = ItemIconDetailSmall.CreateSmallListItemIcon(iconType, equipItemSortData, t, isNew, start + i + 1, getType); if (!flag) { itemIcon.button.set_enabled(true); SetEvent(itemIcon._transform, "DETAIL", new object[2] { ItemDetailEquip.CURRENT_SECTION.EQUIP_LIST, equipItemData }); } else { itemIcon.button.set_enabled(false); SetEvent(itemIcon._transform, string.Empty, 0); } }); } }
public override void Initialize() { object[] array = GameSection.GetEventData() as object[]; if (array != null && array.Length > 2) { equipSkillItem = (array[1] as SkillItemInfo); equipItem = (array[2] as EquipItemInfo); } GameSection.SetEventData(new object[2] { (ItemDetailEquip.CURRENT_SECTION)(int) array[0], null }); base.Initialize(); }
private void OnQuery_AIM_L() { EquipItemInfo equipData = GetEquipData(); if (aimLv - 1 != equipData.level) { aimLv--; if (aimLv < terminateAimLv) { terminateAimLv = -1; terminating = false; } SetDirty(UI.GRD_NEED_MATERIAL); RefreshUI(); } }