المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : مشكله بخصوص الاتاك


Mr NemNem
2020-04-30, 09:54 PM
عندي مشكله فى الاتاك الكينج بيضرب البرنس برقم عالي عايز اظبط ان الكينج يضرب من البرنس بنفس الرقم الى الكينج بيضربه بيه
بمعني دلوقتي كينج لكينج بيدو مثلا لبعض ب 35 الف
الكينج لو ضرب البرنس بيدي البرنس ب 45 الف انا عايز اشيل الفرق ده عايزه يضرب البرنس زي مبيضرب الكينج ويضرب الايرل زي مبيضرب الكينج يعني بمعني اصح عايز اوحد الضربه
بمعني اكتر عايز الكينج يبقا ملهوش لزمة من نحية الضرب يعني يضرب كا اتاك مش يحسب ان ده كينج فا يضرب باكتر لا انا عايز نفس الرقم الى الكينجات بيضربو لبعض يضربو بيه البرنسات والدكات
والدوق او البرنس يضرب بنفس الرقم للكينج انا عارف ان ده كدا مشكله سيستم كامل انا هعرف اظبط ضربه البريك كل الى عايزو اني اللغي الضرب على حسب الرانك بس وكتر الف خيركم

AliNasser
2020-04-30, 10:27 PM
ياما في كلاس هاندل هتلاقي تحت الاسكله الانت عاوز تعدلها كود بتاع اتاك الكنج وباقي الرنكات

لو ملقتش هتلاقي الكود في كلاس calculate دور عليه وشيله خالص في الحالتين

Mr NemNem
2020-05-01, 12:52 AM
ياما في كلاس هاندل هتلاقي تحت الاسكله الانت عاوز تعدلها كود بتاع اتاك الكنج وباقي الرنكات

لو ملقتش هتلاقي الكود في كلاس calculate دور عليه وشيله خالص في الحالتين

للاسف مش موجود اكواد الرانكات هل فى حل تاني

AliNasser
2020-05-01, 01:17 AM
ابعت اكواد الكلاسين هنا

game/attacking/handle.cs
game/attacking/calculate.cs

ElSaher
2020-05-01, 01:52 AM
هتروح علي الاسكلت
الي انتا عايز تعدل عليها لي الكنج واكيد هتلاقي كنج برنس دوك
مسلن اسكلت الننجا

#region SuperTwofoldBlade
case 12080:

هتلاقي الاكواد دي
هتلاقي الاكواد دي

if (attacker.NobilityRank == AbdoRedaGxV4.Game.ConquerStructures.NobilityRank.K ing)
{
damage = (uint)(damage * 0.950);
}
if (attacker.NobilityRank == AbdoRedaGxV4.Game.ConquerStructures.NobilityRank.P rince)
{
damage = (uint)(damage * 0.960);
}
if (attacker.NobilityRank == AbdoRedaGxV4.Game.ConquerStructures.NobilityRank.D uke)
{
damage = (uint)(damage * 0.930);
}
if (attacker.NobilityRank == AbdoRedaGxV4.Game.ConquerStructures.NobilityRank.E arl)
{
damage = (uint)(damage * 0.930);
}
if (attacker.NobilityRank == AbdoRedaGxV4.Game.ConquerStructures.NobilityRank.B aron)
{
damage = (uint)(damage * 0.750);
}
if (attacker.NobilityRank == AbdoRedaGxV4.Game.ConquerStructures.NobilityRank.K night)
{
damage = (uint)(damage * 0.750);
}
if (attacker.NobilityRank == AbdoRedaGxV4.Game.ConquerStructures.NobilityRank.S erf)
{
damage = (uint)(damage * 0.300);
}


دا اتاك الكنج

if (attacker.NobilityRank == AbdoRedaGxV4.Game.ConquerStructures.NobilityRank.K ing)
{
damage = (uint)(damage * 0.950);
}

التعديل هيكون علي الرقم دا
0.950
هتنقص هيوطي هتعلي هيعلا
تحتو هتلاثي Prince
تحت البرنس هتلاقي Duke
تحت الدوك هتلاقي Earl
تحت الايرل هتلاقي Baron
ولو انتا سيرفرك صعب
كنج برنس دوك

#region SuperTwofoldBlade
case 12080:
{
if (Time32.Now >= attacker.SpellStamp.AddMilliseconds(600))
{
if (CanUseSpell(spell, attacker.Owner))
{
ushort Xx, Yx;
if (attacked != null)
{
Xx = attacked.X;
Yx = attacked.Y;
}
else
{
Xx = attackedsob.X;
Yx = attackedsob.Y;
}
if (Kernel.GetDistance(attacker.X, attacker.Y, Xx, Yx) <= 5)
{
if (attackedsob == null)
if (attacked.ContainsFlag(Update.Flags.Fly))
return;
if (attacker.ContainsFlag(Update.Flags.Fly))
return;
PrepareSpell(spell, attacker.Owner);

SpellUse suse = new SpellUse(true);
suse.Attacker = attacker.UID;
suse.SpellID = spell.ID;
suse.SpellLevel = spell.Level;
suse.X = X;
suse.Y = Y;
bool send = false;

if (attackedsob == null)
{
if (CanAttack(attacker, attacked, spell, attack.AttackType == Attack.Melee))
{
attack.Effect1 = Attack.AttackEffects1.None;
uint damage = Game.Attacking.Calculate.Melee(attacker, attacked, ref attack);
if (attacker.NobilityRank == AbdoRedaGxV4.Game.ConquerStructures.NobilityRank.K ing)
{
damage = (uint)(damage * 0.950);
}
if (attacker.NobilityRank == AbdoRedaGxV4.Game.ConquerStructures.NobilityRank.P rince)
{
damage = (uint)(damage * 0.960);
}
if (attacker.NobilityRank == AbdoRedaGxV4.Game.ConquerStructures.NobilityRank.D uke)
{
damage = (uint)(damage * 0.930);
}
if (attacker.NobilityRank == AbdoRedaGxV4.Game.ConquerStructures.NobilityRank.E arl)
{
damage = (uint)(damage * 0.930);
}
if (attacker.NobilityRank == AbdoRedaGxV4.Game.ConquerStructures.NobilityRank.B aron)
{
damage = (uint)(damage * 0.750);
}
if (attacker.NobilityRank == AbdoRedaGxV4.Game.ConquerStructures.NobilityRank.K night)
{
damage = (uint)(damage * 0.750);
}
if (attacker.NobilityRank == AbdoRedaGxV4.Game.ConquerStructures.NobilityRank.S erf)
{
damage = (uint)(damage * 0.300);
}
suse.Effect1 = attack.Effect1;
ReceiveAttack(attacker, attacked, attack, ref damage, spell);

suse.AddTarget(attacked, damage, attack);
send = true;

if (attacker.Owner.Spells.ContainsKey(0) && !attacked.Dead)
{
var s = attacker.Owner.Spells[0];
var spellz = Database.SpellTable.SpellInformations[s.ID][s.Level];
if (spellz != null)
{
if (Kernel.Rate(spellz.Percent))
{
SpellUse ssuse = new SpellUse(true);
ssuse.Attacker = attacker.UID;
ssuse.SpellID = spellz.ID;

ssuse.SpellLevel = spellz.Level;
damage = Game.Attacking.Calculate.Melee(attacker, attacked, ref attack);
ssuse.AddTarget(attacked, new SpellUse.DamageClass().Damage = damage, attack);
ReceiveAttack(attacker, attacked, attack, ref damage, spell);
attacker.Owner.SendScreen(ssuse, true);
}
}
}
}
}
else
{
if (CanAttack(attacker, attackedsob, spell))
{
attack.Effect1 = Attack.AttackEffects1.None;
uint damage = Game.Attacking.Calculate.Melee(attacker, attackedsob, ref attack);
damage = (uint)(damage * 180 / 100);
ReceiveAttack(attacker, attackedsob, attack, damage, spell);
suse.Effect1 = attack.Effect1;

suse.AddTarget(attackedsob, damage, attack);
send = true;
}
}
if (send)
attacker.Owner.SendScreen(suse, true);
attacker.SpellStamp = Time32.Now;
}
else
{
attacker.AttackPacket = null;
}
}
}
break;
}


#endregion


بدل الاسكلت دي بلي عندك