Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public void MagicAttack(ushort x, ushort y, uint spellid, uint TargetUID, ushort TargetX, ushort TargetY)
- {
- uint ECX = spellid;
- ECX -= 0x14BE;
- ECX &= 0xFFFF;
- spellid = (ECX >> 3);
- ECX <<= 13;
- spellid |= ECX;
- ECX = TargetUID;
- ECX += 0x746F4AE6;
- spellid ^= player.UID;
- ECX ^= player.UID;
- spellid ^= 0x915D;
- ECX ^= 0x5F2D2463;
- uint XX = ECX >> 19;
- ECX <<= 13;
- XX |= ECX;
- TargetUID = XX;
- ECX = TargetX;//Target X
- ECX += 0xFFFF22EE;
- ECX &= 0xFFFF;
- XX = ECX;
- ECX &= 1;
- XX >>= 1;
- XX &= 0xFFFF;
- ECX <<= 15;
- XX |= ECX;
- ECX = TargetY;//Target Y
- ECX += 0xFFFF8922;
- XX ^= player.UID;
- ECX &= 0xFFFF;
- XX ^= 0x2ED6;
- uint YY = ECX;
- ECX &= 0x1F;
- YY >>= 5;
- YY &= 0xFFFF;
- ECX <<= 0xB;
- YY |= ECX;
- YY ^= player.UID;
- YY ^= 0xB99B;
- ushort X = (ushort)(XX), Y = (ushort)(YY);
- spellid = (ushort)(spellid);
- byte[] packet = new byte[44 + 4];
- ReadWrite.WriteUInt16((ushort)(packet.Length - 8), 0, packet);
- ReadWrite.WriteUInt16(1022, 2, packet);
- ReadWrite.WriteUInt32((uint)DateTime.Now.GetHashCode(), 4, packet);
- ReadWrite.WriteUInt32(player.UID, 12, packet);
- ReadWrite.WriteUInt32((uint)TargetUID, 16, packet);
- ReadWrite.WriteUInt16(X, 20, packet);
- ReadWrite.WriteUInt16(Y, 22, packet);
- ReadWrite.WriteUInt16(24, 24, packet); //attacktype
- ReadWrite.WriteUInt16((ushort)spellid, 28, packet);
- ReadWrite.WriteString("TQClient", packet.Length - 8, packet);
- player.SendToServer(packet);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement