Esempio n. 1
0
    public static List <CustomSyncMsg> extract_msg(List <p_AllMsg.p_CustomSyncMsg> pmsg_list)
    {
        List <CustomSyncMsg> customSyncMsgs = new List <CustomSyncMsg>();

        foreach (p_AllMsg.p_CustomSyncMsg pmsg in pmsg_list)
        {
            if (pmsg.msg_type == (int)RequestType.ROTATE)
            {
                p_AllMsg.p_RotateMessage pRotate    = pmsg as p_AllMsg.p_RotateMessage;
                RotateMessage            rotate_msg = new RotateMessage(pmsg.player_id, new Vector2(pRotate.delta_x, pRotate.delta_y));
                customSyncMsgs.Add(rotate_msg);
            }
            else if (pmsg.msg_type == (int)RequestType.SPAWN)
            {
            }
            else if (pmsg.msg_type == (int)RequestType.INPUT)
            {
                p_AllMsg.p_InputMessage pInput    = pmsg as p_AllMsg.p_InputMessage;
                InputMessage            input_msg = new InputMessage(pmsg.player_id, new Vector3(pInput.moving_x, pInput.moving_y, pInput.moving_z));
                customSyncMsgs.Add(input_msg);
            }
        }



        return(customSyncMsgs);
    }
Esempio n. 2
0
    public static List <p_AllMsg.p_CustomSyncMsg> Buffer_SyncFrame_msg_list(List <CustomSyncMsg> msg_list)
    {
        List <p_AllMsg.p_CustomSyncMsg> p_msg_list = new List <p_AllMsg.p_CustomSyncMsg>();

        foreach (CustomSyncMsg msg in msg_list)
        {
            if (msg.msg_type == (int)RequestType.ENTERAREA)
            {
                EnterAreaMessage            enterArea = msg as EnterAreaMessage;
                p_AllMsg.p_EnterAreaMessage p_msg     = new p_AllMsg.p_EnterAreaMessage();
                p_msg.id         = enterArea.id;
                p_msg.health     = enterArea.health;;
                p_msg.position_x = enterArea.position.x;
                p_msg.position_y = enterArea.position.y;
                p_msg.position_z = enterArea.position.z;

                p_msg.direction_x = enterArea.direction.x;
                p_msg.direction_y = enterArea.direction.y;
                p_msg.direction_z = enterArea.direction.z;

                p_msg.rotation_x = enterArea.rotation.x;
                p_msg.rotation_y = enterArea.rotation.y;

                p_msg.msg_type  = enterArea.msg_type;
                p_msg.player_id = enterArea.player_id;
                p_msg.area_id   = enterArea.area_id;
                p_msg_list.Add(p_msg);
            }
            if (msg.msg_type == (int)RequestType.INPUT)
            {
                InputMessage            input = msg as InputMessage;
                p_AllMsg.p_InputMessage p_msg = new p_AllMsg.p_InputMessage();
                p_msg.id       = input.id;
                p_msg.moving_x = input.moving.x;
                p_msg.moving_y = input.moving.y;
                p_msg.moving_z = input.moving.z;

                p_msg.msg_type  = input.msg_type;
                p_msg.player_id = input.player_id;
                p_msg.area_id   = input.area_id;

                p_msg_list.Add(p_msg);
            }
            if (msg.msg_type == (int)RequestType.LEAVEAREA)
            {
                LeaveAreaMessage            leaveArea = msg as LeaveAreaMessage;
                p_AllMsg.p_LeaveAreaMessage p_msg     = new p_AllMsg.p_LeaveAreaMessage();

                p_msg.id = leaveArea.id;

                p_msg.msg_type  = leaveArea.msg_type;
                p_msg.player_id = leaveArea.player_id;
                p_msg.area_id   = leaveArea.area_id;
                p_msg_list.Add(p_msg);
            }
            if (msg.msg_type == (int)RequestType.ROTATE)
            {
                RotateMessage            rotate = msg as RotateMessage;
                p_AllMsg.p_RotateMessage p_msg  = new p_AllMsg.p_RotateMessage();

                p_msg.id      = rotate.id;
                p_msg.delta_x = rotate.delta.x;
                p_msg.delta_y = rotate.delta.y;

                p_msg.msg_type  = rotate.msg_type;
                p_msg.player_id = rotate.player_id;
                p_msg.area_id   = rotate.area_id;
                p_msg_list.Add(p_msg);
            }
            if (msg.msg_type == (int)RequestType.SPAWN)
            {
                SpawnMessage            spawn = msg as SpawnMessage;
                p_AllMsg.p_SpawnMessage p_msg = new p_AllMsg.p_SpawnMessage();

                p_msg.id         = spawn.id;
                p_msg.position_x = spawn.position.x;
                p_msg.position_y = spawn.position.y;
                p_msg.position_z = spawn.position.z;

                p_msg.msg_type  = spawn.msg_type;
                p_msg.player_id = spawn.player_id;
                p_msg.area_id   = spawn.area_id;
                p_msg_list.Add(p_msg);
            }
            if (msg.msg_type == (int)RequestType.SHOOT)
            {
                ShootMessage            shoot = msg as ShootMessage;
                p_AllMsg.p_ShootMessage p_msg = new p_AllMsg.p_ShootMessage();


                p_msg.direction_x = shoot.direction_x;
                p_msg.direction_y = shoot.direction_y;
                p_msg.direction_z = shoot.direction_z;

                p_msg.origin_x  = shoot.origin_x;
                p_msg.origin_y  = shoot.origin_y;
                p_msg.origin_z  = shoot.origin_z;
                p_msg.player_id = shoot.player_id;
                p_msg.msg_type  = shoot.msg_type;

                p_msg_list.Add(p_msg);
            }
        }

        return(p_msg_list);
    }