|
|
المشاركات 158 |
+التقييم 0.07 |
تاريخ التسجيل May 2020 |
الاقامة |
نظام التشغيل |
رقم العضوية 3864 |
أفضل جواب - كتبه ToRWadA
|
|
لا الحل دا مينفعش لاليكس جرب دا افتح PoolProcesor.cs ودور علي كود:
بدلو بدا كود:
بعد كدا افتح MapGroupThread دور علي كود:
ولو مش لقيتها دور علي كود:
وبدل بدا كود:
|
private void AutoAttackCallback(GameState client, int time)
{
if (!Valid(client)) return;
Time32 Now = new Time32(time);
if (client.Player.AttackPacket != null || client.Player.VortexAttackStamp != null)
{
try
{
if (client.Player.ContainsFlag((ulong)Update.Flags.ShurikenVortex))
{
if (client.Player.VortexPacket != null && client.Player.VortexPacket.ToArray() != null)
{
if (Now > client.Player.VortexAttackStamp.AddMilliseconds(1400))
{
client.Player.VortexAttackStamp = Now;
new Game.Attacking.Handle(client.Player.VortexPacket, client.Player, null);
}
}
}
else
{
client.Player.VortexPacket = null;
var AttackPacket = client.Player.AttackPacket;
if (AttackPacket != null && AttackPacket.ToArray() != null)
{
uint AttackType = AttackPacket.AttackType;
if (AttackType == Attack.Magic || AttackType == Attack.Melee || AttackType == Attack.Ranged)
{
if (AttackType == Attack.Magic)
{
if (Now > client.Player.AttackStamp.AddSeconds(1))
{
if (AttackPacket.Damage != 12160 &&
AttackPacket.Damage != 12170 &&
AttackPacket.Damage != 12120 &&
AttackPacket.Damage != 12130 &&
AttackPacket.Damage != 12140 &&
AttackPacket.Damage != 12320 &&
AttackPacket.Damage != 12330 &&
AttackPacket.Damage != 12340 &&
AttackPacket.Damage != 12210)
new Game.Attacking.Handle(AttackPacket, client.Player, null);
}
}
else
{
int decrease = -300;
if (client.Player.OnCyclone())
decrease = 700;
if (client.Player.OnSuperman())
decrease = 200;
if (Now > client.Player.AttackStamp.AddMilliseconds((200 - client.Player.Agility - decrease) * (int)(AttackType == Attack.Ranged ? 1 : 1)))
{
new Game.Attacking.Handle(AttackPacket, client.Player, null);
}
}
}
}
}
}
catch (Exception e)
{
Program.SaveException(e);
client.Player.AttackPacket = null;
client.Player.VortexPacket = null;
}
}
}
private void autoattackcallback(gamestate client, int time)
{
if (!valid(client)) return;
time32 now = new time32(time);
if (client.player.attackpacket != null || client.player.vortexattackstamp != null)
{
try
{
if (client.player.containsflag((ulong)update.flags.shurikenvortex))
{
if (client.player.vortexpacket != null && client.player.vortexpacket.toarray() != null)
{
if (now > client.player.vortexattackstamp.addmilliseconds(1400))
{
client.player.vortexattackstamp = now;
new game.attacking.handle(client.player.vortexpacket, client.player, null);
}
}
}
else
{
client.player.vortexpacket = null;
var attackpacket = client.player.attackpacket;
if (attackpacket != null && attackpacket.toarray() != null)
{
uint attacktype = attackpacket.attacktype;
if (attacktype == attack.magic || attacktype == attack.melee || attacktype == attack.ranged)
{
if (attacktype == attack.magic)
{
if (now > client.player.attackstamp.addseconds(1))
{
if (attackpacket.damage != 12160 &&
attackpacket.damage != 12170 &&
attackpacket.damage != 12120 &&
attackpacket.damage != 12130 &&
attackpacket.damage != 12140 &&
attackpacket.damage != 12320 &&
attackpacket.damage != 12330 &&
attackpacket.damage != 12340 &&
attackpacket.damage != 12210)
new game.attacking.handle(attackpacket, client.player, null);
}
}
else
{
int decrease = -300;
if (client.player.oncyclone())
decrease = 700;
if (client.player.onsuperman())
decrease = 200;
if (now > client.player.attackstamp.addmilliseconds((200 - client.player.agility - decrease) * (int)(attacktype == attack.ranged ? 1 : 1)))
{
new game.attacking.handle(attackpacket, client.player, null);
}
}
}
}
}
}
catch (exception e)
{
program.saveexception(e);
client.player.attackpacket = null;
client.player.vortexpacket = null;
}
}
}
public static unsafe void AutoAttackCallback(Client.GameClient client)
public static unsafe void AutoAttackCallback(Client.GameClient client)
{
try
{
if (client == null || !client.FullLoading || client.Player == null)
return;
if (client.Player.Alive == false && client.Player.CompleteLogin)
{
if (DateTime.Now > client.Player.GhostStamp)
{
if (!client.Player.ContainFlag(MsgUpdate.Flags.Ghost))
{
client.Player.AddFlag(Game.MsgServer.MsgUpdate.Flags.Ghost, Role.StatusFlagsBigVector32.PermanentFlag, true);
if (client.Player.Body % 10 < 3)
client.Player.TransformationID = 99;
else
client.Player.TransformationID = 98;
using (var rec = new ServerSockets.RecycledPacket())
{
var stream = rec.GetStream();
client.Send(stream.MapStatusCreate(client.Player.Map, client.Map.ID, (uint)client.Map.TypeStatus));
}
}
}
}
Extensions.Time32 timer = Extensions.Time32.Now;
/* int jmpStamp = client.Player.StampJumpMilisecounds;
if (client.PrepareAttack != null)
{
if (client.PrepareAttack.Attack.SpellID == (ushort)Role.Flags.SpellID.FastBlader
|| client.PrepareAttack.Attack.SpellID == (ushort)Role.Flags.SpellID.ScrenSword
|| client.PrepareAttack.Attack.SpellID == (ushort)Role.Flags.SpellID.ViperFang)
jmpStamp /= 2;
else
{
if (client.Player.OnXPSkill() != MsgUpdate.Flags.Normal)
jmpStamp /= 3;
}
}*/
// if (DateTime.Now > client.Player.StampJump.AddMilliseconds(jmpStamp))
{
}
if (client.OnAutoAttack && client.Player.Alive)
{
if (client.Player.ContainFlag(Game.MsgServer.MsgUpdate.Flags.Dizzy))
{
client.OnAutoAttack = false;
return;
}
InteractQuery action = new InteractQuery();
action = InteractQuery.ShallowCopy(client.AutoAttack);
client.Player.RandomSpell = action.SpellID;
MsgAttackPacket.Process(client, action);
//MsgAttackPacket.ProcessAttack.Enqueue(new MsgAttackPacket.AttackObj() { User = client, Attack = action });
}
/* if (client.PrepareAttack != null)//&& client.TryAttacking > 0)
{
// client.TryAttacking--;
InteractQuery action = new InteractQuery();
action = InteractQuery.ShallowCopy(client.PrepareAttack.Attack);
MsgAttackPacket.Process(client, action);
}*/
}
catch (Exception e)
{
MyConsole.WriteException(e);
}
}
if (clock > user.AttackStamp)
AttackStamp
if (clock > user.AttackStamp)
{
Client.PoolProcesses.AutoAttackCallback(user);
user.AttackStamp.Value = clock.Value + User_AutoAttack;
}
public static unsafe void autoattackcallback(client.gameclient client)
public static unsafe void autoattackcallback(client.gameclient client)
{
try
{
if (client == null || !client.fullloading || client.player == null)
return;
if (client.player.alive == false && client.player.completelogin)
{
if (datetime.now > client.player.ghoststamp)
{
if (!client.player.containflag(msgupdate.flags.ghost))
{
client.player.addflag(game.msgserver.msgupdate.flags.ghost, role.statusflagsbigvector32.permanentflag, true);
if (client.player.body % 10 < 3)
client.player.transformationid = 99;
else
client.player.transformationid = 98;
using (var rec = new serversockets.recycledpacket())
{
var stream = rec.getstream();
client.send(stream.mapstatuscreate(client.player.map, client.map.id, (uint)client.map.typestatus));
}
}
}
}
extensions.time32 timer = extensions.time32.now;
/* int jmpstamp = client.player.stampjumpmilisecounds;
if (client.prepareattack != null)
{
if (client.prepareattack.attack.spellid == (ushort)role.flags.spellid.fastblader
|| client.prepareattack.attack.spellid == (ushort)role.flags.spellid.scrensword
|| client.prepareattack.attack.spellid == (ushort)role.flags.spellid.viperfang)
jmpstamp /= 2;
else
{
if (client.player.onxpskill() != msgupdate.flags.normal)
jmpstamp /= 3;
}
}*/
// if (datetime.now > client.player.stampjump.addmilliseconds(jmpstamp))
{
}
if (client.onautoattack && client.player.alive)
{
if (client.player.containflag(game.msgserver.msgupdate.flags.dizzy))
{
client.onautoattack = false;
return;
}
interactquery action = new interactquery();
action = interactquery.shallowcopy(client.autoattack);
client.player.randomspell = action.spellid;
msgattackpacket.process(client, action);
//msgattackpacket.processattack.enqueue(new msgattackpacket.attackobj() { user = client, attack = action });
}
/* if (client.prepareattack != null)//&& client.tryattacking > 0)
{
// client.tryattacking--;
interactquery action = new interactquery();
action = interactquery.shallowcopy(client.prepareattack.attack);
msgattackpacket.process(client, action);
}*/
}
catch (exception e)
{
myconsole.writeexception(e);
}
}
if (clock > user.attackstamp)
attackstamp
if (clock > user.attackstamp)
{
client.poolprocesses.autoattackcallback(user);
user.attackstamp.value = clock.value + user_autoattack;
}
if (DateTime.Now > client.Player.StampJump.AddMilliseconds(jmpStamp))
{
}
if (client.OnAutoAttack && client.Player.Alive)
{
if (client.Player.ContainFlag(Game.MsgServer.MsgUpdate.Flags.Dizzy))
{
client.OnAutoAttack = false;
return;
}
InteractQuery action = new InteractQuery();
action = InteractQuery.ShallowCopy(client.AutoAttack);
client.Player.RandomSpell = action.SpellID;
MsgAttackPacket.Process(client, action);
MsgAttackPacket.ProcessAttack.Enqueue(new MsgAttackPacket.AttackObj() { User = client, Attack = action });
}
| الذين يشاهدون محتوى الموضوع الآن : 1 ( الأعضاء 0 والزوار 1) | |
|
| الموضوع | كاتب الموضوع | المنتدى | مشاركات | آخر مشاركة |
| حل مشكلة الاسكلات الي بتجيلك بعد ريبورن+الاسكلات مش بتختفي + الاكونت بيهنج[Proto] | Rider | تطوير سيرفرات كونكر | 14 | 2020-08-10 11:36 AM |
| مشكلة في الاسكلات | ElSaher | مشكلات السيرفيرات كونكر الشخصيه | 9 | 2020-04-27 01:59 PM |
| مشكلة الاسكلات | ahmeddd | مشكلات السيرفيرات كونكر الشخصيه | 6 | 2020-04-11 03:17 AM |
| مشكلة في الاوتو باتش | محمودمحمدسالم | مشكلات السيرفيرات كونكر الشخصيه | 3 | 2020-03-21 05:44 PM |
| مشكلة ف الاوتو انفيت الكابتشر فلاج | nova | مشكلات السيرفيرات كونكر الشخصيه | 1 | 2019-12-05 03:26 PM |