public void AssignAllAttrs(BattleBaseInfo origin) { this.MoveSpeed = origin.publicBaseInfo.simpleInfo.MoveSpeed; this.ActSpeed = origin.publicBaseInfo.simpleInfo.AtkSpeed; this.Lv = origin.publicBaseInfo.simpleInfo.Lv; this.Fighting = origin.publicBaseInfo.simpleInfo.Fighting; this.VipLv = origin.publicBaseInfo.simpleInfo.VipLv; this.Atk = origin.publicBaseInfo.Atk; this.Defence = origin.publicBaseInfo.Defence; this.HpLmt = origin.publicBaseInfo.HpLmt; this.PveAtk = origin.publicBaseInfo.PveAtk; this.PvpAtk = origin.publicBaseInfo.PvpAtk; this.HitRatio = origin.publicBaseInfo.HitRatio; this.DodgeRatio = origin.publicBaseInfo.DodgeRatio; this.CritRatio = origin.publicBaseInfo.CritRatio; this.DecritRatio = origin.publicBaseInfo.DecritRatio; this.CritHurtAddRatio = origin.publicBaseInfo.CritHurtAddRatio; this.ParryRatio = origin.publicBaseInfo.ParryRatio; this.DeparryRatio = origin.publicBaseInfo.DeparryRatio; this.ParryHurtDeRatio = origin.publicBaseInfo.ParryHurtDeRatio; this.SuckBloodScale = origin.publicBaseInfo.SuckBloodScale; this.HurtAddRatio = origin.publicBaseInfo.HurtAddRatio; this.HurtDeRatio = origin.publicBaseInfo.HurtDeRatio; this.PveHurtAddRatio = origin.publicBaseInfo.PveHurtAddRatio; this.PveHurtDeRatio = origin.publicBaseInfo.PveHurtDeRatio; this.PvpHurtAddRatio = origin.publicBaseInfo.PvpHurtAddRatio; this.PvpHurtDeRatio = origin.publicBaseInfo.PvpHurtDeRatio; this.AtkMulAmend = origin.publicBaseInfo.AtkMulAmend; this.DefMulAmend = origin.publicBaseInfo.DefMulAmend; this.HpLmtMulAmend = origin.publicBaseInfo.HpLmtMulAmend; this.PveAtkMulAmend = origin.publicBaseInfo.PveAtkMulAmend; this.PvpAtkMulAmend = origin.publicBaseInfo.PvpAtkMulAmend; this.ActPointLmt = origin.battleBaseAttr.ActPointLmt; this.ActPointRecoverSpeedAmend = origin.publicBaseInfo.ActPointRecoverSpeedAmend; this.VpLmt = origin.publicBaseInfo.VpLmt; this.VpLmtMulAmend = origin.publicBaseInfo.VpLmtMulAmend; this.VpAtk = origin.publicBaseInfo.VpAtk; this.VpAtkMulAmend = origin.publicBaseInfo.VpAtkMulAmend; this.IdleVpResume = origin.publicBaseInfo.IdleVpResume; this.VpResume = origin.publicBaseInfo.VpResume; this.WaterBuffAddProbAddAmend = origin.publicBaseInfo.WaterBuffAddProbAddAmend; this.WaterBuffDurTimeAddAmend = origin.publicBaseInfo.WaterBuffDurTimeAddAmend; this.ThunderBuffAddProbAddAmend = origin.publicBaseInfo.ThunderBuffAddProbAddAmend; this.ThunderBuffDurTimeAddAmend = origin.publicBaseInfo.ThunderBuffDurTimeAddAmend; this.HealIncreasePercent = origin.publicBaseInfo.HealIncreasePercent; this.CritAddValue = origin.publicBaseInfo.CritAddValue; this.HpRestore = origin.publicBaseInfo.HpRestore; this.BuffMoveSpeedMulPosAmend = origin.battleBaseAttr.BuffMoveSpeedMulPosAmend; this.BuffActSpeedMulPosAmend = origin.battleBaseAttr.BuffActSpeedMulPosAmend; this.SkillTreatScaleBOAtk = origin.battleBaseAttr.SkillTreatScaleBOAtk; this.SkillTreatScaleBOHpLmt = origin.battleBaseAttr.SkillTreatScaleBOHpLmt; this.SkillNmlDmgScale = origin.battleBaseAttr.SkillNmlDmgScale; this.SkillNmlDmgAddAmend = origin.battleBaseAttr.SkillNmlDmgAddAmend; this.SkillHolyDmgScaleBOMaxHp = origin.battleBaseAttr.SkillHolyDmgScaleBOMaxHp; this.SkillHolyDmgScaleBOCurHp = origin.battleBaseAttr.SkillHolyDmgScaleBOCurHp; this.Affinity = origin.battleBaseAttr.Affinity; this.OnlineTime = origin.battleBaseAttr.OnlineTime; }
protected static BattleBaseInfo CreateSelfBattleBaseInfo(int instanceType, FuBenJiChuPeiZhi instanceData, List <PetInfo> trialPetInfos = null, List <BattleSkillInfo> trialSkillInfos = null) { BattleBaseInfo battleBaseInfo = new BattleBaseInfo(); battleBaseInfo.publicBaseInfo = new PublicBaseInfo(); battleBaseInfo.publicBaseInfo.simpleInfo = new SimpleBaseInfo(); battleBaseInfo.battleBaseAttr = new BattleBaseAttr(); battleBaseInfo.wrapType = GameObjectType.ENUM.Role; battleBaseInfo.camp = 1; battleBaseInfo.publicBaseInfo.simpleInfo.MoveSpeed = EntityWorld.Instance.EntSelf.CityBaseAttrs.MoveSpeed; battleBaseInfo.publicBaseInfo.simpleInfo.AtkSpeed = EntityWorld.Instance.EntSelf.CityBaseAttrs.ActSpeed; battleBaseInfo.publicBaseInfo.simpleInfo.Lv = EntityWorld.Instance.EntSelf.CityBaseAttrs.Lv; battleBaseInfo.publicBaseInfo.simpleInfo.Fighting = EntityWorld.Instance.EntSelf.CityBaseAttrs.Fighting; battleBaseInfo.publicBaseInfo.simpleInfo.VipLv = EntityWorld.Instance.EntSelf.CityBaseAttrs.VipLv; battleBaseInfo.publicBaseInfo.Atk = EntityWorld.Instance.EntSelf.CityBaseAttrs.Atk; battleBaseInfo.publicBaseInfo.Defence = EntityWorld.Instance.EntSelf.CityBaseAttrs.Defence; battleBaseInfo.publicBaseInfo.HpLmt = EntityWorld.Instance.EntSelf.CityBaseAttrs.HpLmt; battleBaseInfo.publicBaseInfo.PveAtk = EntityWorld.Instance.EntSelf.CityBaseAttrs.PveAtk; battleBaseInfo.publicBaseInfo.PvpAtk = EntityWorld.Instance.EntSelf.CityBaseAttrs.PvpAtk; battleBaseInfo.publicBaseInfo.HitRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.HitRatio; battleBaseInfo.publicBaseInfo.DodgeRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.DodgeRatio; battleBaseInfo.publicBaseInfo.CritRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.CritRatio; battleBaseInfo.publicBaseInfo.DecritRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.DecritRatio; battleBaseInfo.publicBaseInfo.CritHurtAddRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.CritHurtAddRatio; battleBaseInfo.publicBaseInfo.ParryRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.ParryRatio; battleBaseInfo.publicBaseInfo.DeparryRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.DeparryRatio; battleBaseInfo.publicBaseInfo.ParryHurtDeRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.ParryHurtDeRatio; battleBaseInfo.publicBaseInfo.SuckBloodScale = EntityWorld.Instance.EntSelf.CityBaseAttrs.SuckBloodScale; battleBaseInfo.publicBaseInfo.HurtAddRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.HurtAddRatio; battleBaseInfo.publicBaseInfo.HurtDeRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.HurtDeRatio; battleBaseInfo.publicBaseInfo.PveHurtAddRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.PveHurtAddRatio; battleBaseInfo.publicBaseInfo.PveHurtDeRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.PveHurtDeRatio; battleBaseInfo.publicBaseInfo.PvpHurtAddRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.PvpHurtAddRatio; battleBaseInfo.publicBaseInfo.PvpHurtDeRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.PvpHurtDeRatio; battleBaseInfo.publicBaseInfo.AtkMulAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.AtkMulAmend; battleBaseInfo.publicBaseInfo.DefMulAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.DefMulAmend; battleBaseInfo.publicBaseInfo.HpLmtMulAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.HpLmtMulAmend; battleBaseInfo.publicBaseInfo.PveAtkMulAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.PveAtkMulAmend; battleBaseInfo.publicBaseInfo.PvpAtkMulAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.PvpAtkMulAmend; battleBaseInfo.battleBaseAttr.ActPointLmt = (int)float.Parse(DataReader <GlobalParams> .Get("actionpoint_limit_i").value); battleBaseInfo.publicBaseInfo.ActPointRecoverSpeedAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.ActPointRecoverSpeedAmend; battleBaseInfo.publicBaseInfo.VpLmt = EntityWorld.Instance.EntSelf.CityBaseAttrs.VpLmt; battleBaseInfo.publicBaseInfo.VpLmtMulAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.VpLmtMulAmend; battleBaseInfo.publicBaseInfo.VpAtk = EntityWorld.Instance.EntSelf.CityBaseAttrs.VpAtk; battleBaseInfo.publicBaseInfo.VpAtkMulAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.VpAtkMulAmend; battleBaseInfo.publicBaseInfo.VpResume = EntityWorld.Instance.EntSelf.CityBaseAttrs.VpResume; battleBaseInfo.publicBaseInfo.IdleVpResume = EntityWorld.Instance.EntSelf.CityBaseAttrs.IdleVpResume; battleBaseInfo.publicBaseInfo.WaterBuffAddProbAddAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.WaterBuffAddProbAddAmend; battleBaseInfo.publicBaseInfo.WaterBuffDurTimeAddAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.WaterBuffDurTimeAddAmend; battleBaseInfo.publicBaseInfo.ThunderBuffAddProbAddAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.ThunderBuffAddProbAddAmend; battleBaseInfo.publicBaseInfo.ThunderBuffDurTimeAddAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.ThunderBuffDurTimeAddAmend; battleBaseInfo.publicBaseInfo.HealIncreasePercent = EntityWorld.Instance.EntSelf.CityBaseAttrs.HealIncreasePercent; battleBaseInfo.publicBaseInfo.CritAddValue = EntityWorld.Instance.EntSelf.CityBaseAttrs.CritAddValue; battleBaseInfo.publicBaseInfo.HpRestore = EntityWorld.Instance.EntSelf.CityBaseAttrs.HpRestore; battleBaseInfo.battleBaseAttr.BuffMoveSpeedMulPosAmend = 0; battleBaseInfo.battleBaseAttr.BuffActSpeedMulPosAmend = 0; battleBaseInfo.battleBaseAttr.SkillTreatScaleBOAtk = 0; battleBaseInfo.battleBaseAttr.SkillTreatScaleBOHpLmt = 0; battleBaseInfo.battleBaseAttr.SkillNmlDmgScale = 0; battleBaseInfo.battleBaseAttr.SkillNmlDmgAddAmend = 0; battleBaseInfo.battleBaseAttr.SkillHolyDmgScaleBOMaxHp = 0; battleBaseInfo.battleBaseAttr.SkillHolyDmgScaleBOCurHp = 0; battleBaseInfo.battleBaseAttr.Affinity = 0; battleBaseInfo.battleBaseAttr.OnlineTime = 0; int num = instanceData.actionPoint + SkillDataManager.Instance.GetSkillProInitActPoint() + EntityWorld.Instance.EntSelf.TotalBeginActPoint; battleBaseInfo.battleBaseAttr.ActPoint = ((num <= battleBaseInfo.battleBaseAttr.ActPointLmt) ? num : battleBaseInfo.battleBaseAttr.ActPointLmt); battleBaseInfo.battleBaseAttr.Hp = (long)((double)battleBaseInfo.publicBaseInfo.HpLmt * (1.0 + (double)battleBaseInfo.publicBaseInfo.HpLmtMulAmend * 0.001)); battleBaseInfo.battleBaseAttr.Vp = (int)((double)battleBaseInfo.publicBaseInfo.VpLmt * (1.0 + (double)battleBaseInfo.publicBaseInfo.VpLmtMulAmend * 0.001)); battleBaseInfo.ownedListIdx = 0; List <PetInfo> list; if (trialPetInfos == null) { list = PetManager.Instance.GetPetBattleInfo(instanceType); } else { list = trialPetInfos; } int num2 = 0; for (int i = 0; i < list.get_Count(); i++) { if (DataReader <Pet> .Get(list.get_Item(i).petId) != null) { battleBaseInfo.ownedIds.Add(list.get_Item(i).id); BattleSkillInfo summonSkillInfo = PetManager.Instance.GetSummonSkillInfo(list.get_Item(i), num2); if (summonSkillInfo != null) { battleBaseInfo.skills.Add(summonSkillInfo); } num2++; } } battleBaseInfo.finalOwnerId = 0L; for (int j = 0; j < instanceData.beginSkill.get_Count(); j++) { battleBaseInfo.skills.Add(new BattleSkillInfo { skillId = instanceData.beginSkill.get_Item(j), skillIdx = 0, skillLv = 1 }); } SkillDataManager.Instance.ConstructBattleSkillInfo(battleBaseInfo.skills, trialSkillInfos, battleBaseInfo.skillExs); battleBaseInfo.isFit = false; battleBaseInfo.isInFit = false; battleBaseInfo.isFighting = true; battleBaseInfo.isFixed = false; battleBaseInfo.isStatic = false; battleBaseInfo.isTaunt = false; battleBaseInfo.isSuperArmor = false; battleBaseInfo.isIgnoreDmgFormula = false; battleBaseInfo.isCloseRenderer = false; battleBaseInfo.isMoveCast = false; battleBaseInfo.isKnocking = false; battleBaseInfo.isSuspended = false; battleBaseInfo.isStun = false; battleBaseInfo.isBoss = false; return(battleBaseInfo); }
public static MapObjInfo CreateSelfCopyMapObjInfo(int poolID, int sceneID, int pointGroupID, BattleBaseInfo battleInfo) { MapObjInfo mapObjInfo = new MapObjInfo(); mapObjInfo.objType = GameObjectType.ENUM.Role; mapObjInfo.id = (long)poolID; mapObjInfo.ownerId = EntityWorld.Instance.EntSelf.OwnerID; mapObjInfo.typeId = EntityWorld.Instance.EntSelf.TypeID; mapObjInfo.modelId = EntityWorld.Instance.EntSelf.ModelID; mapObjInfo.name = EntityWorld.Instance.EntSelf.Name; mapObjInfo.rankValue = EntityWorld.Instance.EntSelf.TypeRank; Vector2 point = MapDataManager.Instance.GetPoint(sceneID, pointGroupID); string[] array = DataReader <Scene> .Get(sceneID).LockLookPoint.Split(new char[] { ';' }); float num = float.Parse(array[0]); float num2 = float.Parse(array[1]); Vector2 vector = new Vector2(num, num2); mapObjInfo.pos = new Pos(); mapObjInfo.pos.x = point.x; mapObjInfo.pos.y = point.y; mapObjInfo.vector = new Vector2(); mapObjInfo.vector.x = (vector - point).get_normalized().x; mapObjInfo.vector.y = (vector - point).get_normalized().y; mapObjInfo.mapLayer = 0; mapObjInfo.battleInfo = battleInfo; return(mapObjInfo); }
public static BattleBaseInfo CreateSelfCopyBattleInfo(bool isSameCamp, List <PetInfo> petOriginInfos, float instanceActionPoint) { BattleBaseInfo battleBaseInfo = new BattleBaseInfo(); battleBaseInfo.publicBaseInfo = new PublicBaseInfo(); battleBaseInfo.publicBaseInfo.simpleInfo = new SimpleBaseInfo(); battleBaseInfo.battleBaseAttr = new BattleBaseAttr(); battleBaseInfo.wrapType = GameObjectType.ENUM.Pet; battleBaseInfo.camp = ((!isSameCamp) ? ((EntityWorld.Instance.EntSelf.Camp != 1) ? 1 : 2) : EntityWorld.Instance.EntSelf.Camp); battleBaseInfo.publicBaseInfo.simpleInfo.MoveSpeed = EntityWorld.Instance.EntSelf.CityBaseAttrs.MoveSpeed; battleBaseInfo.publicBaseInfo.simpleInfo.AtkSpeed = EntityWorld.Instance.EntSelf.CityBaseAttrs.ActSpeed; battleBaseInfo.publicBaseInfo.simpleInfo.Lv = EntityWorld.Instance.EntSelf.CityBaseAttrs.Lv; battleBaseInfo.publicBaseInfo.simpleInfo.Fighting = EntityWorld.Instance.EntSelf.CityBaseAttrs.Fighting; battleBaseInfo.publicBaseInfo.simpleInfo.VipLv = EntityWorld.Instance.EntSelf.CityBaseAttrs.VipLv; battleBaseInfo.publicBaseInfo.Atk = EntityWorld.Instance.EntSelf.CityBaseAttrs.Atk; battleBaseInfo.publicBaseInfo.Defence = EntityWorld.Instance.EntSelf.CityBaseAttrs.Defence; battleBaseInfo.publicBaseInfo.HpLmt = EntityWorld.Instance.EntSelf.CityBaseAttrs.HpLmt; battleBaseInfo.publicBaseInfo.PveAtk = EntityWorld.Instance.EntSelf.CityBaseAttrs.PveAtk; battleBaseInfo.publicBaseInfo.PvpAtk = EntityWorld.Instance.EntSelf.CityBaseAttrs.PvpAtk; battleBaseInfo.publicBaseInfo.HitRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.HitRatio; battleBaseInfo.publicBaseInfo.DodgeRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.DodgeRatio; battleBaseInfo.publicBaseInfo.CritRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.CritRatio; battleBaseInfo.publicBaseInfo.DecritRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.DecritRatio; battleBaseInfo.publicBaseInfo.CritHurtAddRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.CritHurtAddRatio; battleBaseInfo.publicBaseInfo.ParryRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.ParryRatio; battleBaseInfo.publicBaseInfo.DeparryRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.DeparryRatio; battleBaseInfo.publicBaseInfo.ParryHurtDeRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.ParryHurtDeRatio; battleBaseInfo.publicBaseInfo.SuckBloodScale = EntityWorld.Instance.EntSelf.CityBaseAttrs.SuckBloodScale; battleBaseInfo.publicBaseInfo.HurtAddRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.HurtAddRatio; battleBaseInfo.publicBaseInfo.HurtDeRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.HurtDeRatio; battleBaseInfo.publicBaseInfo.PveHurtAddRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.PveHurtAddRatio; battleBaseInfo.publicBaseInfo.PveHurtDeRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.PveHurtDeRatio; battleBaseInfo.publicBaseInfo.PvpHurtAddRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.PvpHurtAddRatio; battleBaseInfo.publicBaseInfo.PvpHurtDeRatio = EntityWorld.Instance.EntSelf.CityBaseAttrs.PvpHurtDeRatio; battleBaseInfo.publicBaseInfo.AtkMulAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.AtkMulAmend; battleBaseInfo.publicBaseInfo.DefMulAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.DefMulAmend; battleBaseInfo.publicBaseInfo.HpLmtMulAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.HpLmtMulAmend; battleBaseInfo.publicBaseInfo.PveAtkMulAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.PveAtkMulAmend; battleBaseInfo.publicBaseInfo.PvpAtkMulAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.PvpAtkMulAmend; battleBaseInfo.battleBaseAttr.ActPointLmt = (int)float.Parse(DataReader <GlobalParams> .Get("actionpoint_limit_i").value); battleBaseInfo.publicBaseInfo.ActPointRecoverSpeedAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.ActPointRecoverSpeedAmend; battleBaseInfo.publicBaseInfo.VpLmt = EntityWorld.Instance.EntSelf.CityBaseAttrs.VpLmt; battleBaseInfo.publicBaseInfo.VpLmtMulAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.VpLmtMulAmend; battleBaseInfo.publicBaseInfo.VpAtk = EntityWorld.Instance.EntSelf.CityBaseAttrs.VpAtk; battleBaseInfo.publicBaseInfo.VpAtkMulAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.VpAtkMulAmend; battleBaseInfo.publicBaseInfo.VpResume = EntityWorld.Instance.EntSelf.CityBaseAttrs.VpResume; battleBaseInfo.publicBaseInfo.IdleVpResume = EntityWorld.Instance.EntSelf.CityBaseAttrs.IdleVpResume; battleBaseInfo.publicBaseInfo.WaterBuffAddProbAddAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.WaterBuffAddProbAddAmend; battleBaseInfo.publicBaseInfo.WaterBuffDurTimeAddAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.WaterBuffDurTimeAddAmend; battleBaseInfo.publicBaseInfo.ThunderBuffAddProbAddAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.ThunderBuffAddProbAddAmend; battleBaseInfo.publicBaseInfo.ThunderBuffDurTimeAddAmend = EntityWorld.Instance.EntSelf.CityBaseAttrs.ThunderBuffDurTimeAddAmend; battleBaseInfo.publicBaseInfo.HealIncreasePercent = EntityWorld.Instance.EntSelf.CityBaseAttrs.HealIncreasePercent; battleBaseInfo.publicBaseInfo.CritAddValue = EntityWorld.Instance.EntSelf.CityBaseAttrs.CritAddValue; battleBaseInfo.publicBaseInfo.HpRestore = EntityWorld.Instance.EntSelf.CityBaseAttrs.HpRestore; battleBaseInfo.battleBaseAttr.BuffMoveSpeedMulPosAmend = 0; battleBaseInfo.battleBaseAttr.BuffActSpeedMulPosAmend = 0; battleBaseInfo.battleBaseAttr.SkillTreatScaleBOAtk = 0; battleBaseInfo.battleBaseAttr.SkillTreatScaleBOHpLmt = 0; battleBaseInfo.battleBaseAttr.SkillNmlDmgScale = 0; battleBaseInfo.battleBaseAttr.SkillNmlDmgAddAmend = 0; battleBaseInfo.battleBaseAttr.SkillHolyDmgScaleBOMaxHp = 0; battleBaseInfo.battleBaseAttr.SkillHolyDmgScaleBOCurHp = 0; battleBaseInfo.battleBaseAttr.Affinity = 0; battleBaseInfo.battleBaseAttr.OnlineTime = 0; battleBaseInfo.battleBaseAttr.ActPoint = (int)(instanceActionPoint + (float)SkillDataManager.Instance.GetSkillProInitActPoint() + (float)EntityWorld.Instance.EntSelf.TotalBeginActPoint); battleBaseInfo.battleBaseAttr.Hp = (long)((double)battleBaseInfo.publicBaseInfo.HpLmt * (1.0 + (double)battleBaseInfo.publicBaseInfo.HpLmtMulAmend * 0.001)); battleBaseInfo.battleBaseAttr.Vp = (int)((double)battleBaseInfo.publicBaseInfo.VpLmt * (1.0 + (double)battleBaseInfo.publicBaseInfo.VpLmtMulAmend * 0.001)); battleBaseInfo.ownedListIdx = 0; int num = 0; if (petOriginInfos != null) { for (int i = 0; i < petOriginInfos.get_Count(); i++) { if (DataReader <Pet> .Get(petOriginInfos.get_Item(i).petId) != null) { battleBaseInfo.ownedIds.Add(petOriginInfos.get_Item(i).id); BattleSkillInfo summonSkillInfo = PetManager.Instance.GetSummonSkillInfo(petOriginInfos.get_Item(i), num); if (summonSkillInfo != null) { battleBaseInfo.skills.Add(summonSkillInfo); } num++; } } } battleBaseInfo.finalOwnerId = 0L; SkillDataManager.Instance.ConstructBattleSkillInfo(battleBaseInfo.skills, null, battleBaseInfo.skillExs); battleBaseInfo.isFit = false; battleBaseInfo.isInFit = false; battleBaseInfo.isFighting = true; battleBaseInfo.isFixed = false; battleBaseInfo.isStatic = false; battleBaseInfo.isTaunt = false; battleBaseInfo.isSuperArmor = false; battleBaseInfo.isIgnoreDmgFormula = false; battleBaseInfo.isCloseRenderer = false; battleBaseInfo.isMoveCast = false; battleBaseInfo.isKnocking = false; battleBaseInfo.isSuspended = false; battleBaseInfo.isStun = false; battleBaseInfo.isBoss = false; return(battleBaseInfo); }
protected static BattleBaseInfo CreatePetBattleBaseInfo(PetInfo item, int index) { BattleBaseInfo battleBaseInfo = new BattleBaseInfo(); battleBaseInfo.publicBaseInfo = new PublicBaseInfo(); battleBaseInfo.publicBaseInfo.simpleInfo = new SimpleBaseInfo(); battleBaseInfo.battleBaseAttr = new BattleBaseAttr(); battleBaseInfo.wrapType = GameObjectType.ENUM.Pet; battleBaseInfo.camp = 1; battleBaseInfo.publicBaseInfo.simpleInfo.MoveSpeed = item.publicBaseInfo.simpleInfo.MoveSpeed; battleBaseInfo.publicBaseInfo.simpleInfo.AtkSpeed = item.publicBaseInfo.simpleInfo.AtkSpeed; battleBaseInfo.publicBaseInfo.simpleInfo.Lv = item.publicBaseInfo.simpleInfo.Lv; battleBaseInfo.publicBaseInfo.simpleInfo.Fighting = item.publicBaseInfo.simpleInfo.Fighting; battleBaseInfo.publicBaseInfo.simpleInfo.VipLv = item.publicBaseInfo.simpleInfo.VipLv; battleBaseInfo.publicBaseInfo.Atk = item.publicBaseInfo.Atk; battleBaseInfo.publicBaseInfo.Defence = item.publicBaseInfo.Defence; battleBaseInfo.publicBaseInfo.HpLmt = item.publicBaseInfo.HpLmt; battleBaseInfo.publicBaseInfo.PveAtk = item.publicBaseInfo.PveAtk; battleBaseInfo.publicBaseInfo.PvpAtk = item.publicBaseInfo.PvpAtk; battleBaseInfo.publicBaseInfo.HitRatio = item.publicBaseInfo.HitRatio; battleBaseInfo.publicBaseInfo.DodgeRatio = item.publicBaseInfo.DodgeRatio; battleBaseInfo.publicBaseInfo.CritRatio = item.publicBaseInfo.CritRatio; battleBaseInfo.publicBaseInfo.DecritRatio = item.publicBaseInfo.DecritRatio; battleBaseInfo.publicBaseInfo.CritHurtAddRatio = item.publicBaseInfo.CritHurtAddRatio; battleBaseInfo.publicBaseInfo.ParryRatio = item.publicBaseInfo.ParryRatio; battleBaseInfo.publicBaseInfo.DeparryRatio = item.publicBaseInfo.DeparryRatio; battleBaseInfo.publicBaseInfo.ParryHurtDeRatio = item.publicBaseInfo.ParryHurtDeRatio; battleBaseInfo.publicBaseInfo.SuckBloodScale = item.publicBaseInfo.SuckBloodScale; battleBaseInfo.publicBaseInfo.HurtAddRatio = item.publicBaseInfo.HurtAddRatio; battleBaseInfo.publicBaseInfo.HurtDeRatio = item.publicBaseInfo.HurtDeRatio; battleBaseInfo.publicBaseInfo.PveHurtAddRatio = item.publicBaseInfo.PveHurtAddRatio; battleBaseInfo.publicBaseInfo.PveHurtDeRatio = item.publicBaseInfo.PveHurtDeRatio; battleBaseInfo.publicBaseInfo.PvpHurtAddRatio = item.publicBaseInfo.PvpHurtAddRatio; battleBaseInfo.publicBaseInfo.PvpHurtDeRatio = item.publicBaseInfo.PvpHurtDeRatio; battleBaseInfo.publicBaseInfo.AtkMulAmend = item.publicBaseInfo.AtkMulAmend; battleBaseInfo.publicBaseInfo.DefMulAmend = item.publicBaseInfo.DefMulAmend; battleBaseInfo.publicBaseInfo.HpLmtMulAmend = item.publicBaseInfo.HpLmtMulAmend; battleBaseInfo.publicBaseInfo.PveAtkMulAmend = item.publicBaseInfo.PveAtkMulAmend; battleBaseInfo.publicBaseInfo.PvpAtkMulAmend = item.publicBaseInfo.PvpAtkMulAmend; battleBaseInfo.battleBaseAttr.ActPointLmt = item.actPointLmt; battleBaseInfo.publicBaseInfo.ActPointRecoverSpeedAmend = item.publicBaseInfo.ActPointRecoverSpeedAmend; battleBaseInfo.publicBaseInfo.VpLmt = item.publicBaseInfo.VpLmt; battleBaseInfo.publicBaseInfo.VpLmtMulAmend = item.publicBaseInfo.VpLmtMulAmend; battleBaseInfo.publicBaseInfo.VpAtk = item.publicBaseInfo.VpAtk; battleBaseInfo.publicBaseInfo.VpAtkMulAmend = item.publicBaseInfo.VpAtkMulAmend; battleBaseInfo.publicBaseInfo.VpResume = item.publicBaseInfo.VpResume; battleBaseInfo.publicBaseInfo.IdleVpResume = item.publicBaseInfo.IdleVpResume; battleBaseInfo.publicBaseInfo.WaterBuffAddProbAddAmend = item.publicBaseInfo.WaterBuffAddProbAddAmend; battleBaseInfo.publicBaseInfo.WaterBuffDurTimeAddAmend = item.publicBaseInfo.WaterBuffDurTimeAddAmend; battleBaseInfo.publicBaseInfo.ThunderBuffAddProbAddAmend = item.publicBaseInfo.ThunderBuffAddProbAddAmend; battleBaseInfo.publicBaseInfo.ThunderBuffDurTimeAddAmend = item.publicBaseInfo.ThunderBuffDurTimeAddAmend; battleBaseInfo.publicBaseInfo.HealIncreasePercent = item.publicBaseInfo.HealIncreasePercent; battleBaseInfo.publicBaseInfo.CritAddValue = item.publicBaseInfo.CritAddValue; battleBaseInfo.publicBaseInfo.HpRestore = item.publicBaseInfo.HpRestore; battleBaseInfo.battleBaseAttr.BuffMoveSpeedMulPosAmend = 0; battleBaseInfo.battleBaseAttr.BuffActSpeedMulPosAmend = 0; battleBaseInfo.battleBaseAttr.SkillTreatScaleBOAtk = 0; battleBaseInfo.battleBaseAttr.SkillTreatScaleBOHpLmt = 0; battleBaseInfo.battleBaseAttr.SkillNmlDmgScale = 0; battleBaseInfo.battleBaseAttr.SkillNmlDmgAddAmend = 0; battleBaseInfo.battleBaseAttr.SkillHolyDmgScaleBOMaxHp = 0; battleBaseInfo.battleBaseAttr.SkillHolyDmgScaleBOCurHp = 0; battleBaseInfo.battleBaseAttr.Affinity = item.affinity; battleBaseInfo.battleBaseAttr.OnlineTime = PetManager.Instance.GetExistTime(item); battleBaseInfo.battleBaseAttr.ActPoint = item.actPoint; battleBaseInfo.battleBaseAttr.Hp = (long)((double)battleBaseInfo.publicBaseInfo.HpLmt * (1.0 + (double)battleBaseInfo.publicBaseInfo.HpLmtMulAmend * 0.001)); battleBaseInfo.battleBaseAttr.Vp = (int)((double)battleBaseInfo.publicBaseInfo.VpLmt * (1.0 + (double)battleBaseInfo.publicBaseInfo.VpLmtMulAmend * 0.001)); battleBaseInfo.skills.AddRange(PetManager.Instance.GetSkillInfo(item.petId)); battleBaseInfo.ownedListIdx = index; battleBaseInfo.ownedIds.Clear(); battleBaseInfo.finalOwnerId = EntityWorld.Instance.EntSelf.ID; battleBaseInfo.isLoading = false; battleBaseInfo.isFit = false; battleBaseInfo.isInFit = false; battleBaseInfo.isFighting = false; battleBaseInfo.isFixed = false; battleBaseInfo.isStatic = false; battleBaseInfo.isTaunt = false; battleBaseInfo.isSuperArmor = false; battleBaseInfo.isIgnoreDmgFormula = false; battleBaseInfo.isCloseRenderer = false; battleBaseInfo.isStun = false; battleBaseInfo.isMoveCast = false; battleBaseInfo.isAssaulting = false; battleBaseInfo.isKnocking = false; battleBaseInfo.isSuspended = false; battleBaseInfo.isSkillManaging = false; battleBaseInfo.isSkillPressing = false; battleBaseInfo.isBorning = true; battleBaseInfo.isBoss = false; return(battleBaseInfo); }
protected static BattleBaseInfo CreateMonsterBattleBaseInfo(Monster monsterData, BattleBaseAttrs attrs, int camp, bool isBoss, bool isFighting = true) { if (attrs == null) { return(null); } BattleBaseInfo battleBaseInfo = new BattleBaseInfo(); battleBaseInfo.publicBaseInfo = new PublicBaseInfo(); battleBaseInfo.publicBaseInfo.simpleInfo = new SimpleBaseInfo(); battleBaseInfo.battleBaseAttr = new BattleBaseAttr(); battleBaseInfo.wrapType = GameObjectType.ENUM.Monster; battleBaseInfo.camp = camp; battleBaseInfo.publicBaseInfo.simpleInfo.MoveSpeed = DataReader <AvatarModel> .Get(monsterData.model).speed; battleBaseInfo.publicBaseInfo.simpleInfo.AtkSpeed = attrs.ActSpeed; battleBaseInfo.publicBaseInfo.simpleInfo.Lv = attrs.Lv; battleBaseInfo.publicBaseInfo.simpleInfo.Fighting = attrs.Fighting; battleBaseInfo.publicBaseInfo.simpleInfo.VipLv = attrs.VipLv; battleBaseInfo.publicBaseInfo.Atk = attrs.Atk; battleBaseInfo.publicBaseInfo.Defence = attrs.Defence; battleBaseInfo.publicBaseInfo.HpLmt = attrs.HpLmt; battleBaseInfo.publicBaseInfo.PveAtk = attrs.PveAtk; battleBaseInfo.publicBaseInfo.PvpAtk = attrs.PvpAtk; battleBaseInfo.publicBaseInfo.HitRatio = attrs.HitRatio; battleBaseInfo.publicBaseInfo.DodgeRatio = attrs.DodgeRatio; battleBaseInfo.publicBaseInfo.CritRatio = attrs.CritRatio; battleBaseInfo.publicBaseInfo.DecritRatio = attrs.DecritRatio; battleBaseInfo.publicBaseInfo.CritHurtAddRatio = attrs.CritHurtAddRatio; battleBaseInfo.publicBaseInfo.ParryRatio = attrs.ParryRatio; battleBaseInfo.publicBaseInfo.DeparryRatio = attrs.DeparryRatio; battleBaseInfo.publicBaseInfo.ParryHurtDeRatio = attrs.ParryHurtDeRatio; battleBaseInfo.publicBaseInfo.SuckBloodScale = attrs.SuckBloodScale; battleBaseInfo.publicBaseInfo.HurtAddRatio = attrs.HurtAddRatio; battleBaseInfo.publicBaseInfo.HurtDeRatio = attrs.HurtDeRatio; battleBaseInfo.publicBaseInfo.PveHurtAddRatio = attrs.PveHurtAddRatio; battleBaseInfo.publicBaseInfo.PveHurtDeRatio = attrs.PveHurtDeRatio; battleBaseInfo.publicBaseInfo.PvpHurtAddRatio = attrs.PvpHurtAddRatio; battleBaseInfo.publicBaseInfo.PvpHurtDeRatio = attrs.PvpHurtDeRatio; battleBaseInfo.publicBaseInfo.AtkMulAmend = attrs.AtkMulAmend; battleBaseInfo.publicBaseInfo.DefMulAmend = attrs.DefMulAmend; battleBaseInfo.publicBaseInfo.HpLmtMulAmend = attrs.HpLmtMulAmend; battleBaseInfo.publicBaseInfo.PveAtkMulAmend = attrs.PveAtkMulAmend; battleBaseInfo.publicBaseInfo.PvpAtkMulAmend = attrs.PvpAtkMulAmend; battleBaseInfo.battleBaseAttr.ActPointLmt = attrs.ActPointLmt; battleBaseInfo.publicBaseInfo.ActPointRecoverSpeedAmend = attrs.ActPointRecoverSpeedAmend; battleBaseInfo.publicBaseInfo.VpLmt = attrs.VpLmt; battleBaseInfo.publicBaseInfo.VpLmtMulAmend = attrs.VpLmtMulAmend; battleBaseInfo.publicBaseInfo.VpAtk = attrs.VpAtk; battleBaseInfo.publicBaseInfo.VpAtkMulAmend = attrs.VpAtkMulAmend; battleBaseInfo.publicBaseInfo.VpResume = attrs.VpResume; battleBaseInfo.publicBaseInfo.IdleVpResume = attrs.IdleVpResume; battleBaseInfo.publicBaseInfo.WaterBuffAddProbAddAmend = attrs.WaterBuffAddProbAddAmend; battleBaseInfo.publicBaseInfo.WaterBuffDurTimeAddAmend = attrs.WaterBuffDurTimeAddAmend; battleBaseInfo.publicBaseInfo.ThunderBuffAddProbAddAmend = attrs.ThunderBuffAddProbAddAmend; battleBaseInfo.publicBaseInfo.ThunderBuffAddProbAddAmend = attrs.ThunderBuffAddProbAddAmend; battleBaseInfo.publicBaseInfo.HealIncreasePercent = attrs.HealIncreasePercent; battleBaseInfo.publicBaseInfo.CritAddValue = attrs.CritAddValue; battleBaseInfo.publicBaseInfo.HpRestore = attrs.HpRestore; battleBaseInfo.battleBaseAttr.BuffMoveSpeedMulPosAmend = 0; battleBaseInfo.battleBaseAttr.BuffActSpeedMulPosAmend = 0; battleBaseInfo.battleBaseAttr.SkillTreatScaleBOAtk = 0; battleBaseInfo.battleBaseAttr.SkillTreatScaleBOHpLmt = 0; battleBaseInfo.battleBaseAttr.SkillNmlDmgScale = 0; battleBaseInfo.battleBaseAttr.SkillNmlDmgAddAmend = 0; battleBaseInfo.battleBaseAttr.SkillHolyDmgScaleBOMaxHp = 0; battleBaseInfo.battleBaseAttr.SkillHolyDmgScaleBOCurHp = 0; battleBaseInfo.battleBaseAttr.Affinity = 0; battleBaseInfo.battleBaseAttr.OnlineTime = 0; battleBaseInfo.battleBaseAttr.ActPoint = attrs.ActPoint; battleBaseInfo.battleBaseAttr.Hp = (long)((double)battleBaseInfo.publicBaseInfo.HpLmt * (1.0 + (double)battleBaseInfo.publicBaseInfo.HpLmtMulAmend * 0.001)); battleBaseInfo.battleBaseAttr.Vp = (int)((double)battleBaseInfo.publicBaseInfo.VpLmt * (1.0 + (double)battleBaseInfo.publicBaseInfo.VpLmtMulAmend * 0.001)); battleBaseInfo.ownedListIdx = 0; battleBaseInfo.ownedIds.Clear(); for (int i = 0; i < monsterData.skill.get_Count(); i++) { battleBaseInfo.skills.Add(new BattleSkillInfo { skillIdx = i + 1, skillId = monsterData.skill.get_Item(i) }); } battleBaseInfo.isLoading = false; battleBaseInfo.isFit = false; battleBaseInfo.isInFit = false; battleBaseInfo.isFighting = isFighting; battleBaseInfo.isFixed = false; battleBaseInfo.isStatic = false; battleBaseInfo.isTaunt = false; battleBaseInfo.isSuperArmor = false; battleBaseInfo.isIgnoreDmgFormula = false; battleBaseInfo.isCloseRenderer = false; battleBaseInfo.isStun = false; battleBaseInfo.isMoveCast = false; battleBaseInfo.isAssaulting = false; battleBaseInfo.isKnocking = false; battleBaseInfo.isSuspended = false; battleBaseInfo.isSkillManaging = false; battleBaseInfo.isSkillPressing = false; battleBaseInfo.isBorning = true; battleBaseInfo.isBoss = isBoss; battleBaseInfo.pressingSkillId = 0; battleBaseInfo.reliveTimes = 0; return(battleBaseInfo); }