syntax = "proto3";
package Fantasy.Network.Message;


//**************          进入 离开         **********************
///用户进入地图
message Map2C_RoleEnterRoomNotify // ICustomRouteMessage,MapRoute
{
	MapUnitInfo Info = 2;
}

///用户离开地图
message Map2C_RoleExitRoomNotify // ICustomRouteMessage,MapRoute
{
	int64 Id = 1;//离开人员
}

//**************          参数变化         **********************
message C2Map_RolePropertyChange // ICustomRouteMessage,MapRoute
{
    repeated KeyValueInt64 Propertys = 1;      //变化的属性信息
}

///玩家状态变化同步
message Map2C_RoleStateNotify // ICustomRouteMessage,MapRoute
{
    int64 Id = 1;
    UnitStateInfo State = 2;
}

///玩家钓组变化
message Map2C_RoleGearChangeNotify // ICustomRouteMessage,MapRoute
{
    int64 Id = 1;
    repeated GearInfo Gears = 2;    //钓组数据
}

//玩家属性值变化
message Map2C_RolePropertyChangeNotify // ICustomRouteMessage,MapRoute
{
    int64 Id = 1;
    repeated KeyValueInt64 Propertys = 2;      //变化的属性信息
}



//**************          移动 旋转         **********************

// 角色移动
message C2Map_Move // ICustomRouteMessage,MapRoute
{
    Vector3Info Position = 1;           //当前位置
    Vector3Info Rotation = 2;           //角色方向
    Vector3Info Direction = 3;          // 移动方向
    bool IsStop = 4;                    // 是否是停止移动
    bool IsRun = 5;
    int64 Timestamp = 6;                // 时间点
}

// 角色朝向变化
message C2Map_Look // ICustomRouteMessage,MapRoute
{
    Vector3Info Rotation = 1;    //角色方向
    int64 Timestamp = 2;            // 时间点
}

///玩家移动推送
message Map2C_MoveNotify // ICustomRouteMessage,MapRoute
{
    int64 Id = 1;                       // id
    Vector3Info Position = 2;           //当前位置
    Vector3Info Rotation = 3;           //角色方向
    Vector3Info Direction = 4;          // 移动方向
    bool IsStop = 5;                    // 是否停止移动
    bool IsRun = 6;                     //是否奔跑
    int64 Timestamp = 7;                // 时间点
}

///玩家旋转推送
message Map2C_LookeNotify // ICustomRouteMessage,MapRoute
{
    int64 Id = 1;                       // id
    Vector3Info Rotation = 2;           //角色方向
    int64 Timestamp = 3;                // 时间点
}