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

مشاهدة النسخة كاملة : شغال بسورس 3d الى كان بيتبياع ب 1000 جنية


megokarika
2020-03-07, 11:27 PM
شغال بسورس 3D الى كان بيتبياع ب 1000 جنية دا عنوان الموضوع بتاع السورس الى انا شغال بيه حاليه

محتاج اظبط اتاك المونك من ناحية الاسكلات مش اكتر و لكم جزيل الشكر
بإختصار الاسكله دى عاوز اعلى الاتاك بتاعها شوية

whirlwindkick

ElSaher
2020-03-08, 09:27 PM
من Handle يا حوب

MRonlineGvrix
2020-03-09, 11:54 AM
بدلها با الي عندك

#region WhirlwindKick
case 10415:
{
if (Time32.Now < attacker.SpellStamp.AddMilliseconds(500))
{
attacker.AttackPacket = null; return;
}
if (Kernel.GetDistance(attacker.X, attacker.Y, X, Y) <= 400)
{
if (CanUseSpell(spell, attacker.Owner))
{
PrepareSpell(spell, attacker.Owner);

SpellUse suse = new SpellUse(true);
suse.Attacker = attacker.UID;
suse.SpellID = spell.ID;
suse.SpellLevel = 0;
suse.X = (ushort)Kernel.Random.Next(3, 10);
suse.Y = 0;
//suse.SpellLevelHu = client_Spell.LevelHu2;
if (Kernel.GetDistance(attacker.X, attacker.Y, X, Y) <= 500)
{
for (int c = 0; c < attacker.Owner.Screen.Objects.Length; c++)
{
//For a multi threaded application, while we go through the collection
//the collection might change. We will make sure that we wont go off
//the limits with a check.
if (c >= attacker.Owner.Screen.Objects.Length)
break;
Interfaces.IMapObject _obj = attacker.Owner.Screen.Objects[c];
if (_obj == null)
continue;
if (_obj.MapObjType == MapObjectType.Monster || _obj.MapObjType == MapObjectType.Entity)
{
attacked = _obj as Entity;
if (Kernel.GetDistance(attacker.X, attacker.Y, attacked.X, attacked.Y) <= spell.Range)
{
if (CanAttack(attacker, attacked, spell, attack.AttackType == Attack.Ranged))
{
var damage = Game.Attacking.Calculate.Melee(attacker, attacked, ref attack);
damage = (uint)(damage * 0.570);
suse.Effect1 = attack.Effect1;
ReceiveAttack(attacker, attacked, attack, ref damage, spell);
attacked.Stunned = true;
attacked.StunStamp = Time32.Now;
suse.AddTarget(attacked, damage, attack);

}
}
}
}
attacker.AttackPacket = null;
}
else
{
attacker.AttackPacket = null; return;
}
attacker.Owner.SendScreen(suse, true);
attacker.SpellStamp = Time32.Now;
suse.Targets = new SafeDictionary<uint, SpellUse.DamageClass>();
attacker.AttackPacket = null; return;
}
attacker.AttackPacket = null;
}
attacker.AttackPacket = null; return;
}
#endregion
#endregion

megokarika
2020-03-09, 12:54 PM
بدلها با الي عندك

#region whirlwindkick
case 10415:
{
if (time32.now < attacker.spellstamp.addmilliseconds(500))
{
attacker.attackpacket = null; return;
}
if (kernel.getdistance(attacker.x, attacker.y, x, y) <= 400)
{
if (canusespell(spell, attacker.owner))
{
preparespell(spell, attacker.owner);

spelluse suse = new spelluse(true);
suse.attacker = attacker.uid;
suse.spellid = spell.id;
suse.spelllevel = 0;
suse.x = (ushort)kernel.random.next(3, 10);
suse.y = 0;
//suse.spelllevelhu = client_spell.levelhu2;
if (kernel.getdistance(attacker.x, attacker.y, x, y) <= 500)
{
for (int c = 0; c < attacker.owner.screen.objects.length; c++)
{
//for a multi threaded application, while we go through the collection
//the collection might change. We will make sure that we wont go off
//the limits with a check.
If (c >= attacker.owner.screen.objects.length)
break;
interfaces.imapobject _obj = attacker.owner.screen.objects[c];
if (_obj == null)
continue;
if (_obj.mapobjtype == mapobjecttype.monster || _obj.mapobjtype == mapobjecttype.entity)
{
attacked = _obj as entity;
if (kernel.getdistance(attacker.x, attacker.y, attacked.x, attacked.y) <= spell.range)
{
if (canattack(attacker, attacked, spell, attack.attacktype == attack.ranged))
{
var damage = game.attacking.calculate.melee(attacker, attacked, ref attack);
damage = (uint)(damage * 0.570);
suse.effect1 = attack.effect1;
receiveattack(attacker, attacked, attack, ref damage, spell);
attacked.stunned = true;
attacked.stunstamp = time32.now;
suse.addtarget(attacked, damage, attack);

}
}
}
}
attacker.attackpacket = null;
}
else
{
attacker.attackpacket = null; return;
}
attacker.owner.sendscreen(suse, true);
attacker.spellstamp = time32.now;
suse.targets = new safedictionary<uint, spelluse.damageclass>();
attacker.attackpacket = null; return;
}
attacker.attackpacket = null;
}
attacker.attackpacket = null; return;
}
#endregion
#endregion


طبب كددا هوو اااللااتاك اى بقاا شديد وللاا تتعبان ووللاا اى ااا ااانننا مش فهم

محمد ياسر
2020-03-09, 01:35 PM
magictype.cs
سيرش
spell.Damage = int.Parse(line[10]);
تحتها ضيف
if (spell.ID == (ushort)Game.Enums.SpellID.WhirlwindKick)
spell.Damage = spell.Damage *(100)/100;

تغير رقم 100 الي بين قوسين دول وتعمله علي حسب ماتحتاج قوي او ضعيف هتزودها الاتاك هيزيد هتقللها الاتاك هيقل

Tefa
2020-03-09, 02:06 PM
magictype.cs
سيرش
spell.Damage = int.Parse(line[10]);
تحتها ضيف
if (spell.ID == (ushort)Game.Enums.SpellID.WhirlwindKick)
spell.Damage = spell.Damage *(100)/100;

100 الي بين قوسين دول هتزودها الاتاك هيزيد هتقللها الاتاك هيقل