حصريا نظام chi system بنسبة 70% على شبكة فوكس وبس بدايه صفحة جديده
كود PHP:
region Chi System (2533<->2534)
case 2533://Info{Data data2 = new Data(true);data2.ID = 116u;data2.UID = client.Entity.UID;data2.TimeStamp = Time32.Now;data2.dwParam = 3319u;data2.wParam1 = client.Entity.X;data2.wParam2 = client.Entity.Y;client.Send(data2);client.Send(packet);
break;
}
case 2534://Rko03{
client.Send(packet);
break;
}
case 1136:
{client.Send(packet);
break;
}#endregion
Chi.cs
ضع بداخله الاكواد التاليه
كود PHP:
namespace ConquerServerV3{
public enum ChiAction{Unlock = 0,QueryInfo = 1,Study = 2,BuyStrength = 3,
}
public enum ChiPowerType{None = 0,Dragon = 1,Phoenix = 2,Tiger = 3,Turtle = 4}
public enum ChiAttribute{None = 0,CriticalRate,MagicCriticalRate,AntiMagicCriticalRate,CrashAttack,CrashDefense,MaxLife,AddAttack,AddMagicAttack,AddMagicDefense,FinalAttack,FinalMagicAttack,FinalDefense,FinalMagicDefense}
public static partial class PacketBuilder{
public static void Chi(this Packet stream, out int id, out ChiAction action, out ChiPowerType type, out int data)
{id = stream.ReadInt32();action = (ChiAction)stream.ReadInt16();type = (ChiPowerType)stream.ReadUInt8();data = stream.ReadInt32();
}
public static Packet ChiCreate(this Packet stream, int id, ChiAction action, ChiPowerType type, int data)
{stream.InitWriter();
stream.Write(id);stream.Write((short)action);stream.Write((byte)type);stream.Write(data);stream.Write((byte)0); // padding?stream.Write("TQServer", 8);stream.Finalize(PacketType.Chi);
return stream;
}
}
}
ChiInfo.cs
ضع بداخله الاكواد التاليه
كود PHP:
using System;using System.Collections.Generic;using System.Linq;using System.Runtime.InteropServices;using System.Text;
namespace ConquerServerV3{
public struct ChiInfoStruct{
public ChiPowerType Type;
public int Attrib1;
public int Attrib2;
public int Attrib3;
public int Attrib4;
}
public static partial class PacketBuilder{
public static unsafe Packet ChiInfo(this Packet stream, int action, int id, int strength, int unk2, params ChiInfoStruct[] info)
{stream.InitWriter();
stream.Write((ushort)action);stream.Write(id);stream.Write(strength);stream.Write(unk2);stream.Write(info.Length);
foreach (var i in info)
{stream.Write((byte)i.Type);stream.Write(i.Attrib1);stream.Write(i.Attrib2);stream.Write(i.Attrib3);stream.Write(i.Attrib4);
}stream.Write("TQServer", 8);stream.Finalize(PacketType.ChiInfo);
return stream;
}
}
}
ChiHandler.cs
ضع بداخله التالى
كود PHP:
using System;using System.Collections.Generic;using System.Linq;using System.Text;
namespace ConquerServerV3{
public class ChiHandler{
[PacketAttribute(PacketType.Chi)]
private static unsafe void HandleChi(GameClient client, Packet stream)
{int id;ChiAction action;ChiPowerType type;int data;stream.Chi(out id, out action, out type, out data);
// TODO: chi system?
switch (action)
{
case ChiAction.Unlock:
{//client.Send(stream.ChiCreate(id, action, type, 0));break;
}
case ChiAction.QueryInfo:
{
var info = new[]
{
new ChiInfoStruct{Type = ChiPowerType.Dragon,Attrib1 = 10200,Attrib2 = 20200,Attrib3 = 30200,Attrib4 = 40200},
new ChiInfoStruct{Type = ChiPowerType.Phoenix,Attrib1 = 50200,Attrib2 = 63500,Attrib3 = 72000,Attrib4 = 82500},
new ChiInfoStruct{Type = ChiPowerType.Tiger,Attrib1 = 90250,Attrib2 = 100500,Attrib3 = 110300,Attrib4 = 120500},
new ChiInfoStruct{Type = ChiPowerType.Turtle,Attrib1 = 130300,Attrib2 = 10200,Attrib3 = 20200,Attrib4 = 30200}
};
client.Send(stream.ChiInfo(0, id, 4000, 3, info));
break;
}
default:
{
break;
}
}
}
}
}
0 التعليقات:
إرسال تعليق