public bool CountDownItem(int protoId, int count) { bool flag = m_Package.Destroy(protoId, count); UpdateDataToUI(); return(flag); }
public bool Destroy(int prototypeId, int count) { ItemProto itemData = ItemProto.GetItemData(prototypeId); if (itemData.category == quest_item) { return(_missionPak.Destroy(prototypeId, count)); } else { return(_playerPak.Destroy(prototypeId, count)); } }
void OnAddFuelBtn() { //lz-2016.11.02 错误 #5426 空对象 if (null == PeCreature.Instance || PeCreature.Instance.mainPlayer == null || null == m_PPCoal || null == m_Entity) { return; } if (!GameConfig.IsMultiMode) { PlayerPackageCmpt packageCmpt = PeCreature.Instance.mainPlayer.GetCmpt <PlayerPackageCmpt>(); if (null == packageCmpt) { return; } ItemPackage accessor = packageCmpt.package._playerPak; if (null == accessor) { return; } foreach (CSUI_MaterialGrid mg in m_MatGrids) { if (null != mg && mg.ItemID != 0) { accessor.Destroy(mg.ItemID, mg.NeedCnt); CSUI_MainWndCtrl.CreatePopupHint(mg.transform.position, transform, new Vector3(10, -2, -5), " - " + mg.NeedCnt.ToString(), false); } } m_PPCoal.StartWorkingCounter(); // CSUI_Main.ShowStatusBar("The " + m_Entity.Name +" is full with fuel now"); CSUI_MainWndCtrl.ShowStatusBar(CSUtils.GetNoFormatString(UIMsgBoxInfo.mFullFuelTips.GetString(), m_Entity.Name)); } else { m_PPCoal._ColonyObj._Network.PPC_AddFuel(); } }
void OnUpgradeBtn() { if (PeCreature.Instance.mainPlayer == null) { return; } ItemPackage accessor = PeCreature.Instance.mainPlayer.GetCmpt <PlayerPackageCmpt>().package._playerPak; //check start bool canUpgrade = true; bool bEnough = true; foreach (CSUI_MaterialGrid mg in m_MatGrids) { if (mg.ItemID != 0) { mg.ItemNum = playerPackageCmpt.package.GetCount(mg.ItemID); if (mg.ItemNum < mg.NeedCnt) { bEnough = false; new PeTipMsg(PELocalization.GetString(821000001), PeTipMsg.EMsgLevel.Warning); break; } } } if (bEnough && !m_Assembly.isUpgrading && !m_Assembly.isDeleting) { canUpgrade = true; } else { canUpgrade = false; } if (m_Assembly.Level == m_Assembly.GetMaxLevel()) { canUpgrade = false; } if (!canUpgrade) { return; } //check end if (!GameConfig.IsMultiMode) { foreach (CSUI_MaterialGrid mg in m_MatGrids) { if (mg.ItemID > 0) { accessor.Destroy(mg.ItemID, mg.NeedCnt); //package.DeleteItemWithItemID(mg.ItemID, mg.NeedCnt); CSUI_MainWndCtrl.CreatePopupHint(mg.transform.position, this.transform, new Vector3(10, -2, -5), " - " + mg.NeedCnt.ToString(), false); } } m_Assembly.StartUpgradeCounter(); CSUI_MainWndCtrl.ShowStatusBar(CSUtils.GetNoFormatString(UIMsgBoxInfo.mStartToUpgrade.GetString(), m_Entity.Name)); } else { m_Assembly._ColonyObj._Network.ASB_LevelUp(); } }
void StartToWork() { if (!GameConfig.IsMultiMode) { //lw:2017.4.6 crash PeCreature.Instance.mainPlayer可能为null if (PeCreature.Instance != null && PeCreature.Instance.mainPlayer != null) { PlayerPackageCmpt pkg = PeCreature.Instance.mainPlayer.packageCmpt as PlayerPackageCmpt; if (pkg != null) { ItemPackage accessor = pkg.package._playerPak; if (m_CurType == CSConst.etEnhance) { //lw:2017.4.6 crash if (m_Enhance != null && m_Enhance.m_Item != null && m_Enhance.m_Item.protoData != null) { // take out material from player foreach (CSUI_MaterialGrid matGrid in m_MatList) { accessor.Destroy(matGrid.ItemID, matGrid.NeedCnt); } m_Enhance.StartCounter(); CSUI_MainWndCtrl.ShowStatusBar(CSUtils.GetNoFormatString(UIMsgBoxInfo.mStartToEnhance.GetString(), m_Enhance.m_Item.protoData.GetName())); // Popoup hints foreach (CSUI_MaterialGrid mg in m_MatList) { Vector3 pos = mg.transform.position; CSUI_MainWndCtrl.CreatePopupHint(pos, transform, new Vector3(10, -2, -8), " - " + mg.NeedCnt, false); } } } else if (m_CurType == CSConst.etRepair) { if (null != m_Repair && m_Repair.m_Item != null && m_Repair.m_Item.protoData != null) { // take out material from player foreach (CSUI_MaterialGrid matGrid in m_MatList) { accessor.Destroy(matGrid.ItemID, matGrid.NeedCnt); } m_Repair.StartCounter(); CSUI_MainWndCtrl.ShowStatusBar(CSUtils.GetNoFormatString(UIMsgBoxInfo.mStartToRepair.GetString(), m_Repair.m_Item.protoData.GetName())); } } else if (m_CurType == CSConst.etRecyle) { if (m_Recycle != null && m_Recycle.m_Item != null && m_Recycle.m_Item.protoData != null) { m_Recycle.StartCounter(); CSUI_MainWndCtrl.ShowStatusBar(CSUtils.GetNoFormatString(UIMsgBoxInfo.mStartToRecycle.GetString(), m_Recycle.m_Item.protoData.GetName())); } } } } } else { //multimode if (m_CurType == CSConst.etEnhance) { m_Enhance._ColonyObj._Network.EHN_Start(); } else if (m_CurType == CSConst.etRepair) { m_Repair._ColonyObj._Network.RPA_Start(); } else if (m_CurType == CSConst.etRecyle) { m_Recycle._ColonyObj._Network.RCY_Start(); } } }