public void WingEquip(int wingid, int action) { WingData wingData = PlayerDataPool.Instance.MainData.mWingData; WingItemData itemData = wingData.GetWingItemDataById(wingid); WingCommonTableItem commonRes = DataManager.WingCommonTable[wingid] as WingCommonTableItem; string modelName = WingModule.GetModelName(wingid, itemData.level); int wingeffectId = WingModule.GetEffectId(wingid, (int)itemData.level); if (action == 0) { RemoveAttach(AttachMountType.Wing); GameDebug.Log("装备翅膀"); ChangeAttach(AttachMountType.Wing, AssetConfig.WeaponPath + modelName, commonRes.modelSlot); if (wingeffectId != -1) { AddEffect((uint)wingeffectId, null, float.NaN, AttachMountType.Wing); } } else { GameDebug.Log("卸载翅膀"); RemoveAttach(AttachMountType.Wing); } }
//计算已解锁翅膀属性总和 public void getPropertyTotal(ref WingItemData wingitemdata) { for (int j = 0; j < WingDefine.Max_Wing_Level; ++j) { WingLevelTableItem wlt = DataManager.WingLevelTable[wingitemdata.id * 1000 + (j + 1)] as WingLevelTableItem; if (wlt == null) { GameDebug.LogError("winglevel表不存在id为" + wingitemdata.id * 1000 + (j + 1) + "的数据"); } switch ((WingPropertyType)wlt.propertyType) { case WingPropertyType.Life: wingitemdata.liftTotal += wlt.propertyNum; break; case WingPropertyType.Attack: wingitemdata.attackTotal += wlt.propertyNum; break; case WingPropertyType.Defence: wingitemdata.defenceTotal += wlt.propertyNum; break; case WingPropertyType.Critical: wingitemdata.criticalTotal += wlt.propertyNum; break; case WingPropertyType.Energy: wingitemdata.powerTotal += wlt.propertyNum; break; } } }
public void SetupWing(int resid) { if (!DataManager.WingCommonTable.ContainsKey(resid)) { return; } WingCommonTableItem wingtable = DataManager.WingCommonTable[resid] as WingCommonTableItem; if (wingtable == null) { GameDebug.LogError("WingTable 没有找到 id = " + resid.ToString()); return; } if (resid != mResid) { if (mWing != null) { mWing.Destroy(); } mResid = resid; mWing = new MeshVisual(); WingItemData itemData = PlayerDataPool.Instance.MainData.mWingData.GetWingItemDataById(mResid); string modleName = WingModule.GetModelName(itemData.id, itemData.level); //mWing.CreateWithConfig(AssetConfig.WeaponPath + modleName, } }
public uint GetWingLevel(int wingid) { WingItemData itemData = PlayerDataPool.Instance.MainData.mWingData.GetWingItemDataById(wingid); if (itemData == null) { return(UInt32.MaxValue); } return(itemData.level); }
public bool GetWingItemData(int curPageNum, out WingItemData itemdata) { WingData wd = PlayerDataPool.Instance.MainData.mWingData; if (mCurPageNum > wd.wingItems.Count) { itemdata = null; GameDebug.Log("获取翅膀数ItemData据失败"); return(false); } itemdata = PlayerDataPool.Instance.MainData.mWingData.wingItems[curPageNum - 1]; return(true); }
private void SyncWingData(role_property serverProperty) { if (serverProperty.wing_info == null) { return; } if (serverProperty.wing_info.unlock_count != null) { if (mOtherData.mWingData.wingItems.Count > (int)serverProperty.wing_info.unlock_count.value) { //除非重置数据否则不会出现这种情况 mOtherData.mWingData.Clear(); } } if (serverProperty.wing_info.wearid != null) { mOtherData.mWingData.mWearId = serverProperty.wing_info.wearid.value; } if (serverProperty.wing_info.items != null && serverProperty.wing_info.items.Count > 0) { for (int i = 0; i < serverProperty.wing_info.items.Count; ++i) { WingItemData wing_item_data = mOtherData.mWingData.wingItems.Find(x => (x.id == serverProperty.wing_info.items[i].id)); if (wing_item_data == null) { wing_item_data = new WingItemData(); mOtherData.mWingData.wingItems.Add(wing_item_data); wing_item_data.id = serverProperty.wing_info.items[i].id; wing_item_data.level = serverProperty.wing_info.items[i].level; mOtherData.mWingData.getPropertyTotal(ref wing_item_data); // GameDebug.Log("添加WingitemData数据" + serverProperty.wing_info.items[i].id); } wing_item_data.id = serverProperty.wing_info.items[i].id; wing_item_data.level = serverProperty.wing_info.items[i].level; wing_item_data.process = serverProperty.wing_info.items[i].process; wing_item_data.UpdateProperty(); } } }
public void SyncProperty(other_role_fight_property msg) { if (msg == null) { return; } name = msg.name; level = (int)msg.level; resId = (int)msg.job; main_weaponId = (int)msg.weapon_id; sub_weaponId = (int)msg.sub_weapon_id; mStrenLv = msg.stren_lv; skillData.Clear(); if (msg.skillinfo != null) { for (int i = 0; i < msg.skillinfo.levels.Count; ++i) { skillData.mLevels.Add(i, msg.skillinfo.levels[i]); } for (int i = 0; i < msg.skillinfo.equips.Count && i < SkillMaxCountDefine.MAX_EQUIP_SKILL_NUM; ++i) { skillData.skills[i] = msg.skillinfo.equips[i]; } } if (msg.wing_info != null) { if (msg.wing_info.unlock_count != null) { if (mWingData.wingItems.Count > (int)msg.wing_info.unlock_count.value) { //除非重置数据否则不会出现这种情况 mWingData.Clear(); } } if (msg.wing_info.wearid != null) { mWingData.mWearId = msg.wing_info.wearid.value; } if (msg.wing_info.items != null && msg.wing_info.items.Count > 0) { for (int i = 0; i < msg.wing_info.items.Count; ++i) { WingItemData wing_item_data = mWingData.wingItems.Find(x => (x.id == msg.wing_info.items[i].id)); if (wing_item_data == null) { wing_item_data = new WingItemData(); mWingData.wingItems.Add(wing_item_data); wing_item_data.id = msg.wing_info.items[i].id; wing_item_data.level = msg.wing_info.items[i].level; mWingData.getPropertyTotal(ref wing_item_data); // GameDebug.Log("添加WingitemData数据" + serverProperty.wing_info.items[i].id); } wing_item_data.id = msg.wing_info.items[i].id; wing_item_data.level = msg.wing_info.items[i].level; wing_item_data.process = msg.wing_info.items[i].process; wing_item_data.UpdateProperty(); } EventSystem.Instance.PushEvent(new WingUIEvent(WingUIEvent.WING_GHOST_UPDATE)); } } //时装 role_fashion_info fashion_info = msg.fashion_info; if (fashion_info != null) { if (fashion_info.head_id != null) { mFashionData.head_id = fashion_info.head_id.value; GameDebug.Log("同步Fashion head_id = " + mFashionData.head_id); } if (fashion_info.uppper_body_id != null) { mFashionData.upper_body_id = fashion_info.uppper_body_id.value; GameDebug.Log("同步Fashion upper_body_id = " + mFashionData.upper_body_id); } if (fashion_info.lower_body_id != null) { mFashionData.lower_body_id = fashion_info.lower_body_id.value; GameDebug.Log("同步Fashion lower_body_id = " + mFashionData.lower_body_id); } if (fashion_info.unlock_count != null) { mFashionData.unlock_count = fashion_info.unlock_count.value; GameDebug.Log("同步Fashion unlock_count = " + mFashionData.unlock_count); } if (fashion_info.items != null) { for (int i = 0; i < mFashionData.unlock_count; ++i) { mFashionData.items[i].id = fashion_info.items[i].id; mFashionData.items[i].starnum = fashion_info.items[i].starnum; GameDebug.Log("同步Fashion items = " + mFashionData.items[i].id + " starnum =" + mFashionData.items[i].starnum); } } } do { GameDebug.Log("同步对手佣兵信息!"); mMainCropsInfo.mCropsId = msg.maincrops.cropsid; mMainCropsInfo.mCropsStarslv = msg.maincrops.starslv; mSubCropsInfo.mCropsId = msg.subcrops.cropsid; mSubCropsInfo.mCropsStarslv = msg.subcrops.starslv; } while (false); }