Ejemplo n.º 1
0
    public float  yAngle; //y轴旋转

    public byte[] ToArray(bool isChild = false)
    {
        MMO_MemoryStream ms = null;

        if (!isChild)
        {
            ms = GameEntry.Socket.SocketSendMS;
            ms.SetLength(0);
            ms.WriteUShort(ProtoCode);
        }
        else
        {
            ms = GameEntry.Pool.DequeueClassObject <MMO_MemoryStream>();
            ms.SetLength(0);
        }

        ms.WriteFloat(x);
        ms.WriteFloat(y);
        ms.WriteFloat(z);
        ms.WriteFloat(yAngle);

        byte[] retBuffer = ms.ToArray();
        if (isChild)
        {
            GameEntry.Pool.EnqueueClassObject(ms);
        }
        return(retBuffer);
    }
Ejemplo n.º 2
0
    public byte[] ToArray(MMO_MemoryStream ms, bool isChild = false)
    {
        ms.SetLength(0);
        if (!isChild)
        {
            ms.WriteUShort(ProtoCode);
        }

        ms.WriteInt(RoleCount);
        for (int i = 0; i < RoleCount; i++)
        {
            var item = ItemList[i];
            ms.WriteInt(item.RoleId);
            ms.WriteUTF8String(item.RoleNickName);
            ms.WriteInt(item.RoleLevel);
            ms.WriteInt(item.RoleMaxHP);
            ms.WriteInt(item.RoleCurrHP);
            ms.WriteInt(item.RoleMaxMP);
            ms.WriteInt(item.RoleCurrMP);
            ms.WriteInt(item.RoleJobId);
            ms.WriteFloat(item.RolePosX);
            ms.WriteFloat(item.RolePosY);
            ms.WriteFloat(item.RolePosZ);
            ms.WriteFloat(item.RoleYAngle);
        }

        return(ms.ToArray());
    }
Ejemplo n.º 3
0
    public byte[] ToArray(MMO_MemoryStream ms, bool isChild = false)
    {
        ms.SetLength(0);
        if (!isChild)
        {
            ms.WriteUShort(ProtoCode);
        }

        ms.WriteInt(AttackRoleId);
        ms.WriteInt(SkillId);
        ms.WriteInt(SkillLevel);
        ms.WriteFloat(RolePosX);
        ms.WriteFloat(RolePosY);
        ms.WriteFloat(RolePosZ);
        ms.WriteFloat(RoleYAngle);
        ms.WriteInt(BeAttackCount);
        for (int i = 0; i < BeAttackCount; i++)
        {
            var item = ItemList[i];
            ms.WriteInt(item.BeAttackRoleId);
            ms.WriteInt(item.ReduceHp);
            ms.WriteByte(item.IsCri);
        }

        return(ms.ToArray());
    }
Ejemplo n.º 4
0
    public int    NeedTime;   //客户端移动所需时间

    public byte[] ToArray(bool isChild = false)
    {
        MMO_MemoryStream ms = null;

        if (!isChild)
        {
            ms = GameEntry.Socket.SocketSendMS;
            ms.SetLength(0);
            ms.WriteUShort(ProtoCode);
        }
        else
        {
            ms = GameEntry.Pool.DequeueClassObject <MMO_MemoryStream>();
            ms.SetLength(0);
        }

        ms.WriteInt(RoleId);
        ms.WriteFloat(TargetPosX);
        ms.WriteFloat(TargetPosY);
        ms.WriteFloat(TargetPosZ);
        ms.WriteLong(ServerTime);
        ms.WriteInt(NeedTime);

        byte[] retBuffer = ms.ToArray();
        if (isChild)
        {
            GameEntry.Pool.EnqueueClassObject(ms);
        }
        return(retBuffer);
    }
Ejemplo n.º 5
0
    public float  yAngle; //y轴旋转

    public byte[] ToArray()
    {
        using (MMO_MemoryStream ms = new MMO_MemoryStream())
        {
            ms.WriteUShort(ProtoCode);
            ms.WriteFloat(x);
            ms.WriteFloat(y);
            ms.WriteFloat(z);
            ms.WriteFloat(yAngle);
            return(ms.ToArray());
        }
    }
Ejemplo n.º 6
0
    public int    NeedTime;   //客户端移动所需时间(毫秒)

    public byte[] ToArray()
    {
        using (MMO_MemoryStream ms = new MMO_MemoryStream())
        {
            ms.WriteUShort(ProtoCode);
            ms.WriteFloat(TargetPosX);
            ms.WriteFloat(TargetPosY);
            ms.WriteFloat(TargetPosZ);
            ms.WriteLong(ServerTime);
            ms.WriteInt(NeedTime);
            return(ms.ToArray());
        }
    }
    public float  RoleYAngle;            //角色Y轴旋转

    public byte[] ToArray()
    {
        using (MMO_MemoryStream ms = new MMO_MemoryStream())
        {
            ms.WriteUShort(ProtoCode);
            ms.WriteInt(TargetWorldMapSceneId);
            ms.WriteFloat(RolePosX);
            ms.WriteFloat(RolePosY);
            ms.WriteFloat(RolePosZ);
            ms.WriteFloat(RoleYAngle);
            return(ms.ToArray());
        }
    }
Ejemplo n.º 8
0
    public float  yAngle; //y轴旋转

    public byte[] ToArray(MMO_MemoryStream ms, bool isChild = false)
    {
        ms.SetLength(0);
        if (!isChild)
        {
            ms.WriteUShort(ProtoCode);
        }

        ms.WriteFloat(x);
        ms.WriteFloat(y);
        ms.WriteFloat(z);
        ms.WriteFloat(yAngle);

        return(ms.ToArray());
    }
Ejemplo n.º 9
0
    public float  RoleYAngle;            //角色Y轴旋转

    public byte[] ToArray(MMO_MemoryStream ms, bool isChild = false)
    {
        ms.SetLength(0);
        if (!isChild)
        {
            ms.WriteUShort(ProtoCode);
        }

        ms.WriteInt(TargetWorldMapSceneId);
        ms.WriteFloat(RolePosX);
        ms.WriteFloat(RolePosY);
        ms.WriteFloat(RolePosZ);
        ms.WriteFloat(RoleYAngle);

        return(ms.ToArray());
    }
Ejemplo n.º 10
0
    public int    NeedTime;   //客户端移动所需时间(毫秒)

    public byte[] ToArray(MMO_MemoryStream ms, bool isChild = false)
    {
        ms.SetLength(0);
        if (!isChild)
        {
            ms.WriteUShort(ProtoCode);
        }

        ms.WriteFloat(TargetPosX);
        ms.WriteFloat(TargetPosY);
        ms.WriteFloat(TargetPosZ);
        ms.WriteLong(ServerTime);
        ms.WriteInt(NeedTime);

        return(ms.ToArray());
    }
Ejemplo n.º 11
0
    public long   ServerTime; //服务器时间(毫秒)

    public byte[] ToArray()
    {
        using (MMO_MemoryStream ms = new MMO_MemoryStream())
        {
            ms.WriteUShort(ProtoCode);
            ms.WriteFloat(LocalTime);
            ms.WriteLong(ServerTime);
            return(ms.ToArray());
        }
    }
Ejemplo n.º 12
0
 public byte[] ToArray()
 {
     using (MMO_MemoryStream ms = new MMO_MemoryStream())
     {
         ms.WriteUShort(ProtoCode);
         ms.WriteInt(SkillId);
         ms.WriteInt(SkillLevel);
         ms.WriteFloat(RolePosX);
         ms.WriteFloat(RolePosY);
         ms.WriteFloat(RolePosZ);
         ms.WriteFloat(RoleYAngle);
         ms.WriteInt(BeAttackCount);
         for (int i = 0; i < BeAttackCount; i++)
         {
             ms.WriteInt(ItemList[i].BeAttackRoleId);
         }
         return(ms.ToArray());
     }
 }
    public float  RoleYAngle;   //角色Y轴旋转

    public byte[] ToArray()
    {
        using (MMO_MemoryStream ms = new MMO_MemoryStream())
        {
            ms.WriteUShort(ProtoCode);
            ms.WriteInt(RoleId);
            ms.WriteUTF8String(RoleNickName);
            ms.WriteInt(RoleLevel);
            ms.WriteInt(RoleJobId);
            ms.WriteInt(RoleCurrMP);
            ms.WriteInt(RoleMaxMP);
            ms.WriteInt(RoleCurrHP);
            ms.WriteInt(RoleMaxHP);
            ms.WriteFloat(RolePosX);
            ms.WriteFloat(RolePosY);
            ms.WriteFloat(RolePosZ);
            ms.WriteFloat(RoleYAngle);
            return(ms.ToArray());
        }
    }
Ejemplo n.º 14
0
    public float  LocalTime; //本地时间(毫秒)

    public byte[] ToArray()
    {
        MMO_MemoryStream ms = GameEntry.Socket.SocketSendMS;

        ms.SetLength(0);
        ms.WriteUShort(ProtoCode);

        ms.WriteFloat(LocalTime);

        return(ms.ToArray());
    }
Ejemplo n.º 15
0
    public byte[] ToArray(bool isChild = false)
    {
        MMO_MemoryStream ms = null;

        if (!isChild)
        {
            ms = GameEntry.Socket.SocketSendMS;
            ms.SetLength(0);
            ms.WriteUShort(ProtoCode);
        }
        else
        {
            ms = GameEntry.Pool.DequeueClassObject <MMO_MemoryStream>();
            ms.SetLength(0);
        }

        ms.WriteInt(RoleCount);
        for (int i = 0; i < RoleCount; i++)
        {
            var item = ItemList[i];
            ms.WriteInt(item.RoleId);
            ms.WriteUTF8String(item.RoleNickName);
            ms.WriteInt(item.RoleLevel);
            ms.WriteInt(item.RoleMaxHP);
            ms.WriteInt(item.RoleCurrHP);
            ms.WriteInt(item.RoleMaxMP);
            ms.WriteInt(item.RoleCurrMP);
            ms.WriteInt(item.RoleJobId);
            ms.WriteFloat(item.RolePosX);
            ms.WriteFloat(item.RolePosY);
            ms.WriteFloat(item.RolePosZ);
            ms.WriteFloat(item.RoleYAngle);
        }

        byte[] retBuffer = ms.ToArray();
        if (isChild)
        {
            GameEntry.Pool.EnqueueClassObject(ms);
        }
        return(retBuffer);
    }
Ejemplo n.º 16
0
 /// <summary>
 /// 将结构体转换成字节数组
 /// </summary>
 /// <returns></returns>
 public byte[] ToArray()
 {
     using (MMO_MemoryStream ms = new MMO_MemoryStream())
     {
         ms.WriteUShort(ProtoID);//协议类型
         ms.WriteInt(Id);
         ms.WriteUTF8String(Name);
         ms.WriteInt(Type);
         ms.WriteFloat(Price);
         return(ms.ToArray());
     }
 }
    public byte[] ToArray(bool isChild = false)
    {
        MMO_MemoryStream ms = null;

        if (!isChild)
        {
            ms = GameEntry.Socket.SocketSendMS;
            ms.SetLength(0);
            ms.WriteUShort(ProtoCode);
        }
        else
        {
            ms = GameEntry.Pool.DequeueClassObject <MMO_MemoryStream>();
            ms.SetLength(0);
        }

        ms.WriteInt(AttackRoleId);
        ms.WriteInt(SkillId);
        ms.WriteInt(SkillLevel);
        ms.WriteFloat(RolePosX);
        ms.WriteFloat(RolePosY);
        ms.WriteFloat(RolePosZ);
        ms.WriteFloat(RoleYAngle);
        ms.WriteInt(BeAttackCount);
        for (int i = 0; i < BeAttackCount; i++)
        {
            var item = ItemList[i];
            ms.WriteInt(item.BeAttackRoleId);
            ms.WriteInt(item.ReduceHp);
            ms.WriteByte(item.IsCri);
        }

        byte[] retBuffer = ms.ToArray();
        if (isChild)
        {
            GameEntry.Pool.EnqueueClassObject(ms);
        }
        return(retBuffer);
    }
    public float  RoleYAngle;   //角色Y轴旋转

    public byte[] ToArray(MMO_MemoryStream ms, bool isChild = false)
    {
        ms.SetLength(0);
        if (!isChild)
        {
            ms.WriteUShort(ProtoCode);
        }

        ms.WriteInt(RoleId);
        ms.WriteUTF8String(RoleNickName);
        ms.WriteInt(RoleLevel);
        ms.WriteInt(RoleJobId);
        ms.WriteInt(RoleCurrMP);
        ms.WriteInt(RoleMaxMP);
        ms.WriteInt(RoleCurrHP);
        ms.WriteInt(RoleMaxHP);
        ms.WriteFloat(RolePosX);
        ms.WriteFloat(RolePosY);
        ms.WriteFloat(RolePosZ);
        ms.WriteFloat(RoleYAngle);

        return(ms.ToArray());
    }
 public byte[] ToArray()
 {
     using (MMO_MemoryStream ms = new MMO_MemoryStream())
     {
         ms.WriteUShort(ProtoCode);
         ms.WriteInt(RoleCount);
         for (int i = 0; i < RoleCount; i++)
         {
             ms.WriteInt(ItemList[i].RoleId);
             ms.WriteUTF8String(ItemList[i].RoleNickName);
             ms.WriteInt(ItemList[i].RoleLevel);
             ms.WriteInt(ItemList[i].RoleMaxHP);
             ms.WriteInt(ItemList[i].RoleCurrHP);
             ms.WriteInt(ItemList[i].RoleMaxMP);
             ms.WriteInt(ItemList[i].RoleCurrMP);
             ms.WriteInt(ItemList[i].RoleJobId);
             ms.WriteFloat(ItemList[i].RolePosX);
             ms.WriteFloat(ItemList[i].RolePosY);
             ms.WriteFloat(ItemList[i].RolePosZ);
             ms.WriteFloat(ItemList[i].RoleYAngle);
         }
         return(ms.ToArray());
     }
 }