void ProcEquipEffectAtt(CEquipment pEquip, bool bEquip) { if (pEquip != null) { tagEquipProto pProto = pEquip.m_pEquipProto; if (pProto == null) { return; } // weapon int nFactor = 1; if (!bEquip) { nFactor = -1; } if (pProto.eEquipPos == EEquipPos.EEP_Weapon) { if (bEquip) { ModBaseAttValue(ERoleAttribute.ERA_WeaponDmgMin, pProto.nMinDmg); ModBaseAttValue(ERoleAttribute.ERA_WeaponDmgMax, pProto.nMaxDmg); } else { ModBaseAttValue(ERoleAttribute.ERA_WeaponDmgMin, -pProto.nMinDmg); ModBaseAttValue(ERoleAttribute.ERA_WeaponDmgMax, -pProto.nMaxDmg); } } // cale weapon base att ChangeHeroAtt(pEquip.m_equipex.EquipBaseAtt, 3, nFactor); } }
void RefushEquipItem( ) { if (CItemMgr.Inst == null) { return; } CHeroEntity pHero = CFightTeamMgr.Instance.m_pBattleHero; if (pHero == null) { return; } for (int i = 0; i < m_nEquipments; i++) { CEquipment pItem = (CEquipment)pHero.m_pEquipment.GetPos(( Int16 )i); if (pItem != null) { FillEquipIcon(m_Equips[i], pItem); } else { FillFreeIcon(m_Equips[i]); } } }
int Equip(CEquipment pEquip, EEquipPos ePos) { if (!ItemCreator.MIsEquipment(pEquip.GetItemTypeID())) { return(1); } if (pEquip.m_pEquipProto.byLevel > m_nLevel) { return(2); } CEquipment pSrc = (CEquipment)m_pEquipment.GetPos((Int16)ePos); if (pSrc != null) { // switch equip 's pos CItemMgr.Inst.m_pPocket.Remove(pEquip.GetItemID()); m_pEquipment.Equip(pEquip, (Int16)ePos); ProcEquipEffect(pEquip, pSrc); } else { CItemMgr.Inst.m_pPocket.Remove(pEquip.GetItemID()); m_pEquipment.Equip(pEquip, (Int16)ePos); ProcEquipEffect(pEquip, null); } //if( CNGUISys.Inst != null ) //{ // CNGUISys.Inst.OnUpdateCharacterALL(); //} return(0); }
public IEnumerator OnOpenEquipShow(object _param) { CHeroEntity pHero = CFightTeamMgr.Instance.m_pBattleHero; if (pHero != null) { // para [0] item ' pos int idxPos = (int)(_param as object[])[0]; int bagorequip = (int)(_param as object[])[1]; mIsEquip = (bool)(_param as object[])[2]; mEquip = null; if (bagorequip == 1) { mEquip = (CEquipment)CItemMgr.Inst.m_pPocket.GetPos((Int16)idxPos); } if (bagorequip == 2) { mEquip = (CEquipment)pHero.m_pEquipment.GetPos((Int16)idxPos); } if (mEquip != null) { RefushEquipItem(mIsEquip); } } yield return(new WaitForSeconds(0.1f)); }
void ProcEquipEffect(CEquipment pNewEquip, CEquipment pOldEquip) { if (pOldEquip != null) { ProcEquipEffectAtt(pOldEquip, false); } if (pNewEquip != null) { ProcEquipEffectAtt(pNewEquip, true); } RecalAtt(); }
void FillEquipIcon(UnityEngine.GameObject obj, CEquipment pEquip) { if (obj != null) { Transform pIcon = obj.transform.Find("Icon"); if (pIcon != null) { UIAtlas tu = Resources.Load("GameIcon", typeof(UIAtlas)) as UIAtlas; UnityEngine.GameObject ctrl = pIcon.gameObject; ctrl.GetComponent <UISprite>().atlas = tu; ctrl.GetComponent <UISprite>().spriteName = pEquip.m_pEquipProto.strIcon; } } }
public void AddEquipment(E_EQUIPMENT_TYPE type) { if (m_shipStats.equipmentAttachement < m_shipStats.maxEquipment) { CEquipment equip = new CEquipment(this, type); m_shipStats.equipmentAttachement++; m_equipmentList.Add(equip); equip.ApplyEquipment(this); } else { Debug.Log("Add weapon impossible, ship can only have " + m_shipStats.maxWeapons); } }
public int HandleHeroUnequip(CEquipment pEquip) { if (pEquip == null) { return(-1); } int nRet = 0; EEquipPos ePos = pEquip.GetEquipPos(); if (ePos >= EEquipPos.EEP_Head && ePos < EEquipPos.EEP_Equip_End) { nRet = UnEquip(pEquip); } return(nRet); }
public bool AddItem2Bag(uint dwTypeID, Int16 nNum, EItemQuality eQ, int nCmd) { if (m_pPocket.IsFull()) { return(false); } CItem pNewItem = null; Int16 nBagSpace = (Int16)CalSpaceUsed(dwTypeID, nNum); // check bag free grid is enongh int nFreeSpace = m_pPocket.GetFreeSpaceSize(); if (nFreeSpace < nBagSpace - 1) { return(false); } for (int i = 0; i < nBagSpace; i++) { tagItem pNew = ItemCreator.Create(dwTypeID, nNum, EItemQuality.EIQ_White, 0); if (pNew != null) { if (ItemCreator.MIsEquipment(dwTypeID)) { pNewItem = new CEquipment((tagEquip)pNew); } else { pNewItem = new CItem(pNew); } } if (pNewItem != null) { AddItem(m_pPocket, pNewItem, nNum); } } return(true); }
int UnEquip(CEquipment pEquip) { int nRet = 0; Int16 n16Index = CItemMgr.Inst.m_pPocket.GetFreeGrid(); if (n16Index < 0) { // pocket is full return(1); } m_pEquipment.UnEquip(pEquip.GetPos()); ProcEquipEffect(null, pEquip); CItemMgr.Inst.m_pPocket.Add(pEquip); //if( CNGUISys.Inst != null ) //{ // CNGUISys.Inst.OnUpdateCharacterALL(); //} return(nRet); }
void RefushEquipItem(bool bEquip) { CHeroEntity pHero = CFightTeamMgr.Instance.m_pBattleHero; if (pHero == null) { return; } FillEquipIcon(pShowEquip); pEquipName.GetComponent <UILabel> ().text = "名称: " + mEquip.m_pEquipProto.strName; pEquipZhanli.GetComponent <UILabel> ().text = "战力: " + UnityEngine.Random.Range(10, 100).ToString(); pLevel.GetComponent <UILabel> ().text = "等级: " + mEquip.m_pEquipProto.byLevel.ToString(); // attr compare EEquipPos ePos = mEquip.m_pEquipProto.eEquipPos; CEquipment pCurEquip = (CEquipment)pHero.m_pEquipment.GetPos((Int16)ePos); string strName = mEquip.m_pEquipProto.strName; if (pCurEquip != null && bEquip) { strName += "VS" + pCurEquip.m_pEquipProto.strName; } pNameVS.GetComponent <UILabel>().text = strName; int nValue = 0; string strInfo = ""; for (int i = 0; i < 3; i++) { tagRoleAttEffect pEffect = mEquip.m_equipex.EquipBaseAtt[i]; if (pEffect == null) { return; } nValue = pEffect.nValue; strInfo += GetAttName(pEffect.eRoleAtt) + nValue.ToString(); int nCurValue = 0; if (pCurEquip != null && bEquip) { for (int j = 0; j < 3; j++) { tagRoleAttEffect pCur = pCurEquip.m_equipex.EquipBaseAtt[i]; if (pCur != null && pEffect.eRoleAtt == pCur.eRoleAtt && pCur.nValue > 0) { nCurValue = pCur.nValue; break; } } strInfo += " ( " + (nValue - nCurValue).ToString() + " )"; } strInfo += '\n'; } pVSattr.GetComponent <UILabel> ().text = strInfo; }