موضوع مهم . اظبط الاتاك على حسب الباتل باور BattlePower .. خش وافهم اكتر
بسم الله
بنتكلم النهارده عن حسابات الاتاك ..
فى كلاس ال calculate
فى معظم السورسات بيتم حساب الاتاك على حساب الNobilityRank .
احنا المرادي هنحسبها على اساس الفرق بين الباتل باور ..
ابحث عن
كود:
#region Nobility Damage
اقفلها من ال - وبدلها ب دي
كود:
#region Nobility Damage
#region 1 لو الباور اقل
if (attacked.EntityFlag == EntityFlag.Entity && (attacked.BattlePower - attacker.BattlePower == 1))
{
if (attacked.Owner.Challenge == null)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
int sub = attacked.BattlePower - attacker.BattlePower;
if (sub > 41)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
Damage = 1;
}
else
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
if (attacked.Class == 135)
{
Damage = (Int32)Math.Floor((float)Damage * (0.64 - (sub * 0.01)));//التعديل من 75 زود الرقم الضربة تزيد
}
else
{
Damage = (Int32)Math.Floor((float)Damage * (0.72 - (sub * 0.01)));//التعديل من 75 زود الرقم الضربة تزيد
}
}
}
}
#endregion
#region 2 لو الباور اقل
if (attacked.EntityFlag == EntityFlag.Entity && (attacked.BattlePower - attacker.BattlePower == 2))
{
if (attacked.Owner.Challenge == null)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
int sub = attacked.BattlePower - attacker.BattlePower;
if (sub > 41)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
Damage = 1;
}
else
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
if (attacked.Class == 135)
{
Damage = (Int32)Math.Floor((float)Damage * (0.64 - (sub * 0.01)));//التعديل من 75 زود الرقم الضربة تزيد
}
else
{
Damage = (Int32)Math.Floor((float)Damage * (0.70 - (sub * 0.01)));//التعديل من 75 زود الرقم الضربة تزيد
}
}
}
}
#endregion
#region 3 لو الباور اقل
if (attacked.EntityFlag == EntityFlag.Entity && (attacked.BattlePower - attacker.BattlePower == 3))
{
if (attacked.Owner.Challenge == null)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
int sub = attacked.BattlePower - attacker.BattlePower;
if (sub > 41)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
Damage = 1;
}
else
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
if (attacked.Class == 135)
{
Damage = (Int32)Math.Floor((float)Damage * (0.63 - (sub * 0.01)));//التعديل من 75 زود الرقم الضربة تزيد
}
else
{
Damage = (Int32)Math.Floor((float)Damage * (0.67 - (sub * 0.01)));//التعديل من 75 زود الرقم الضربة تزيد
}
}
}
}
#endregion
#region 4 لو الباور اقل
if (attacked.EntityFlag == EntityFlag.Entity && (attacked.BattlePower - attacker.BattlePower == 4))
{
if (attacked.Owner.Challenge == null)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
int sub = attacked.BattlePower - attacker.BattlePower;
if (sub > 41)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
Damage = 1;
}
else
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
if (attacked.Class == 135)
{
Damage = (Int32)Math.Floor((float)Damage * (0.62 - (sub * 0.01)));//التعديل من 75 زود الرقم الضربة تزيد
}
else
{
Damage = (Int32)Math.Floor((float)Damage * (0.62 - (sub * 0.01)));//التعديل من 75 زود الرقم الضربة تزيد
}
}
}
}
#endregion
#region 5 لو الباور اقل
if (attacked.EntityFlag == EntityFlag.Entity && (attacked.BattlePower - attacker.BattlePower == 5))
{
if (attacked.Owner.Challenge == null)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
int sub = attacked.BattlePower - attacker.BattlePower;
if (sub > 41)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
Damage = 1;
}
else
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
if (attacked.Class == 135)
{
Damage = (Int32)Math.Floor((float)Damage * (0.60 - (sub * 0.01)));//التعديل من 75 زود الرقم الضربة تزيد
}
else
{
Damage = (Int32)Math.Floor((float)Damage * (0.60 - (sub * 0.01)));//التعديل من 75 زود الرقم الضربة تزيد
}
}
}
}
#endregion
#region لو الباور اكبر من او اقل 6
if (attacked.EntityFlag == EntityFlag.Entity && (attacked.BattlePower - attacker.BattlePower >= 6))
{
if (attacked.Owner.Challenge == null)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
int sub = attacked.BattlePower - attacker.BattlePower;
if (sub > 41)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
Damage = 1;
}
else
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
if (attacked.Class == 135)
{
Damage = (Int32)Math.Floor((float)Damage * (0.40 - (sub * 0.01)));//التعديل من 75 زود الرقم الضربة تزيد
}
else
{
Damage = (Int32)Math.Floor((float)Damage * (0.43 - (sub * 0.01)));//التعديل من 75 زود الرقم الضربة تزيد
}
}
}
}
#endregion
#region 1 لو الباور اعلي
if (attacked.EntityFlag == EntityFlag.Entity && (attacker.BattlePower - attacked.BattlePower == 1))
{
if (attacked.Owner.Challenge == null)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
int dmg = attacked.BattlePower - attacker.BattlePower;
if (dmg > 50)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
Damage = Damage * 2;
}
else
if (attacker.EntityFlag == EntityFlag.Monster) return;
if (attacked.Class == 135)
{
Damage = (Int32)Math.Floor((float)Damage * (0.80 - (dmg * 0.01)));//التعديل من 75 زود الرقم الضربة تزيد
}
else
{
Damage = (Int32)Math.Floor((float)Damage * (1.01 - (dmg * 0.01)));//edit 1.10 increase for increase the hit
}
}
}
#endregion
#region 2 لو الباور اعلي
if (attacked.EntityFlag == EntityFlag.Entity && (attacker.BattlePower - attacked.BattlePower == 2))
{
if (attacked.Owner.Challenge == null)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
int dmg = attacked.BattlePower - attacker.BattlePower;
if (dmg > 50)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
Damage = Damage * 2;
}
else
if (attacker.EntityFlag == EntityFlag.Monster) return;
if (attacked.Class == 135)
{
Damage = (Int32)Math.Floor((float)Damage * (0.80 - (dmg * 0.01)));//التعديل من 75 زود الرقم الضربة تزيد
}
else
{
Damage = (Int32)Math.Floor((float)Damage * (1.10 - (dmg * 0.01)));//edit 1.10 increase for increase the hit
}
}
}
#endregion
#region 3 لو الباور اعلي
if (attacked.EntityFlag == EntityFlag.Entity && (attacker.BattlePower - attacked.BattlePower == 3))
{
if (attacked.Owner.Challenge == null)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
int dmg = attacked.BattlePower - attacker.BattlePower;
if (dmg > 50)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
Damage = Damage * 2;
}
else
if (attacker.EntityFlag == EntityFlag.Monster) return;
if (attacked.Class == 135)
{
Damage = (Int32)Math.Floor((float)Damage * (0.85 - (dmg * 0.01)));//التعديل من 75 زود الرقم الضربة تزيد
}
else
{
Damage = (Int32)Math.Floor((float)Damage * (1.10 - (dmg * 0.01)));//edit 1.10 increase for increase the hit
}
}
}
#endregion
#region 4 لو الباور اعلي
if (attacked.EntityFlag == EntityFlag.Entity && (attacker.BattlePower - attacked.BattlePower == 4))
{
if (attacked.Owner.Challenge == null)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
int dmg = attacked.BattlePower - attacker.BattlePower;
if (dmg > 50)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
Damage = Damage * 2;
}
else
if (attacker.EntityFlag == EntityFlag.Monster) return;
if (attacked.Class == 135)
{
Damage = (Int32)Math.Floor((float)Damage * (0.85 - (dmg * 0.01)));//التعديل من 75 زود الرقم الضربة تزيد
}
else
{
Damage = (Int32)Math.Floor((float)Damage * (1.17 - (dmg * 0.01)));//edit 1.10 increase for increase the hit
}
}
}
#endregion
#region 5 لو الباور اعلي
if (attacked.EntityFlag == EntityFlag.Entity && (attacker.BattlePower - attacked.BattlePower == 5))
{
if (attacked.Owner.Challenge == null)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
int dmg = attacked.BattlePower - attacker.BattlePower;
if (dmg > 50)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
Damage = Damage * 2;
}
else
if (attacker.EntityFlag == EntityFlag.Monster) return;
if (attacked.Class == 135)
{
Damage = (Int32)Math.Floor((float)Damage * (0.90 - (dmg * 0.01)));//التعديل من 75 زود الرقم الضربة تزيد
}
else
{
Damage = (Int32)Math.Floor((float)Damage * (1.20 - (dmg * 0.01)));//edit 1.10 increase for increase the hit
}
}
}
#endregion
#region لو الباور اعلى من 6
if (attacked.EntityFlag == EntityFlag.Entity && (attacker.BattlePower - attacked.BattlePower >= 6))
{
if (attacked.Owner.Challenge == null)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
int dmg = attacked.BattlePower - attacker.BattlePower;
if (dmg > 50)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
Damage = Damage * 2;
}
else
if (attacker.EntityFlag == EntityFlag.Monster) return;
if (attacked.Class == 135)
{
Damage = (Int32)Math.Floor((float)Damage * (0.92 - (dmg * 0.01)));//التعديل من 75 زود الرقم الضربة تزيد
}
else
{
Damage = (Int32)Math.Floor((float)Damage * (1.43 - (dmg * 0.01)));//edit 1.10 increase for increase the hit
}
}
}
#endregion
#region same BP
if (attacked.EntityFlag == EntityFlag.Entity && (attacker.BattlePower == attacked.BattlePower))
{
if (attacked.Owner.Challenge == null)
{
if (attacker.EntityFlag == EntityFlag.Monster) return;
if (attacked.Class == 135)
{
Damage = (int)((double)Damage * 0.900);
}
else
{
Damage = (int)((double)Damage * 1.100);
}
}
}
#endregion
هنا انا بحسب الفرق الباور ما بين الي بيهاجم والى بيتهاجم !
والفرق هنا انا واقف لو اقل او اعلى من 6
كملو انتو بقا الموضوع سهل هتاخد كوبي لل Region وتعدل الفروق
لاحظو اني عامل اتشيك عشان لو حد التورتويس جيم مش شغاله عنده
يقدر يظبط الضربه للواترات بحيث تبق اقل من الاساسيه
يارب يكون الموضوع بسيط <3
ملحوظه فرق الباور بين البرنس والكينج 3
والدوق 5
وهكذا انشاء الله <3 ..
التعديل الأخير تم بواسطة ديسكو الفظيع ; 2020-09-14 الساعة 10:36 PM