// 
//   This file was generated by a tool; you should avoid making direct changes.
//   Consider using 'partial classes' to extend these types
//   Input: messages.proto
// 
#region Designer generated code
#pragma warning disable CS0612, CS0618, CS1591, CS3021, IDE0079, IDE1006, RCS1036, RCS1057, RCS1085, RCS1192
namespace Dof
{
    [global::ProtoBuf.ProtoContract()]
    public partial class ClientMessage : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
        [global::ProtoBuf.ProtoMember(1, Name = @"player_enter")]
        public PlayerEnter PlayerEnter
        {
            get => __pbn__actual.Is(1) ? ((PlayerEnter)__pbn__actual.Object) : default;
            set => __pbn__actual = new global::ProtoBuf.DiscriminatedUnionObject(1, value);
        }
        public bool ShouldSerializePlayerEnter() => __pbn__actual.Is(1);
        public void ResetPlayerEnter() => global::ProtoBuf.DiscriminatedUnionObject.Reset(ref __pbn__actual, 1);
        private global::ProtoBuf.DiscriminatedUnionObject __pbn__actual;
        [global::ProtoBuf.ProtoMember(2, Name = @"level_prepared")]
        public LevelPrepared LevelPrepared
        {
            get => __pbn__actual.Is(2) ? ((LevelPrepared)__pbn__actual.Object) : default;
            set => __pbn__actual = new global::ProtoBuf.DiscriminatedUnionObject(2, value);
        }
        public bool ShouldSerializeLevelPrepared() => __pbn__actual.Is(2);
        public void ResetLevelPrepared() => global::ProtoBuf.DiscriminatedUnionObject.Reset(ref __pbn__actual, 2);
        [global::ProtoBuf.ProtoMember(3, Name = @"point_found")]
        public PointFound PointFound
        {
            get => __pbn__actual.Is(3) ? ((PointFound)__pbn__actual.Object) : default;
            set => __pbn__actual = new global::ProtoBuf.DiscriminatedUnionObject(3, value);
        }
        public bool ShouldSerializePointFound() => __pbn__actual.Is(3);
        public void ResetPointFound() => global::ProtoBuf.DiscriminatedUnionObject.Reset(ref __pbn__actual, 3);
        [global::ProtoBuf.ProtoMember(4, Name = @"level_end")]
        public LevelEnd LevelEnd
        {
            get => __pbn__actual.Is(4) ? ((LevelEnd)__pbn__actual.Object) : default;
            set => __pbn__actual = new global::ProtoBuf.DiscriminatedUnionObject(4, value);
        }
        public bool ShouldSerializeLevelEnd() => __pbn__actual.Is(4);
        public void ResetLevelEnd() => global::ProtoBuf.DiscriminatedUnionObject.Reset(ref __pbn__actual, 4);
        [global::ProtoBuf.ProtoMember(5, Name = @"all_level_end")]
        public AllLevelEnd AllLevelEnd
        {
            get => __pbn__actual.Is(5) ? ((AllLevelEnd)__pbn__actual.Object) : default;
            set => __pbn__actual = new global::ProtoBuf.DiscriminatedUnionObject(5, value);
        }
        public bool ShouldSerializeAllLevelEnd() => __pbn__actual.Is(5);
        public void ResetAllLevelEnd() => global::ProtoBuf.DiscriminatedUnionObject.Reset(ref __pbn__actual, 5);
        [global::ProtoBuf.ProtoMember(6, Name = @"player_leave")]
        public PlayerLeave PlayerLeave
        {
            get => __pbn__actual.Is(6) ? ((PlayerLeave)__pbn__actual.Object) : default;
            set => __pbn__actual = new global::ProtoBuf.DiscriminatedUnionObject(6, value);
        }
        public bool ShouldSerializePlayerLeave() => __pbn__actual.Is(6);
        public void ResetPlayerLeave() => global::ProtoBuf.DiscriminatedUnionObject.Reset(ref __pbn__actual, 6);
        [global::ProtoBuf.ProtoMember(21, Name = @"heartbeat")]
        public Heartbeat Heartbeat
        {
            get => __pbn__actual.Is(21) ? ((Heartbeat)__pbn__actual.Object) : default;
            set => __pbn__actual = new global::ProtoBuf.DiscriminatedUnionObject(21, value);
        }
        public bool ShouldSerializeHeartbeat() => __pbn__actual.Is(21);
        public void ResetHeartbeat() => global::ProtoBuf.DiscriminatedUnionObject.Reset(ref __pbn__actual, 21);
    }
    [global::ProtoBuf.ProtoContract()]
    public partial class ServerMessage : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
        [global::ProtoBuf.ProtoMember(1, Name = @"player_entered")]
        public PlayerEntered PlayerEntered
        {
            get => __pbn__actual.Is(1) ? ((PlayerEntered)__pbn__actual.Object) : default;
            set => __pbn__actual = new global::ProtoBuf.DiscriminatedUnionObject(1, value);
        }
        public bool ShouldSerializePlayerEntered() => __pbn__actual.Is(1);
        public void ResetPlayerEntered() => global::ProtoBuf.DiscriminatedUnionObject.Reset(ref __pbn__actual, 1);
        private global::ProtoBuf.DiscriminatedUnionObject __pbn__actual;
        [global::ProtoBuf.ProtoMember(2, Name = @"game_start")]
        public GameStart GameStart
        {
            get => __pbn__actual.Is(2) ? ((GameStart)__pbn__actual.Object) : default;
            set => __pbn__actual = new global::ProtoBuf.DiscriminatedUnionObject(2, value);
        }
        public bool ShouldSerializeGameStart() => __pbn__actual.Is(2);
        public void ResetGameStart() => global::ProtoBuf.DiscriminatedUnionObject.Reset(ref __pbn__actual, 2);
        [global::ProtoBuf.ProtoMember(3, Name = @"level_start")]
        public LevelStart LevelStart
        {
            get => __pbn__actual.Is(3) ? ((LevelStart)__pbn__actual.Object) : default;
            set => __pbn__actual = new global::ProtoBuf.DiscriminatedUnionObject(3, value);
        }
        public bool ShouldSerializeLevelStart() => __pbn__actual.Is(3);
        public void ResetLevelStart() => global::ProtoBuf.DiscriminatedUnionObject.Reset(ref __pbn__actual, 3);
        [global::ProtoBuf.ProtoMember(4, Name = @"point_found")]
        public PointFound PointFound
        {
            get => __pbn__actual.Is(4) ? ((PointFound)__pbn__actual.Object) : default;
            set => __pbn__actual = new global::ProtoBuf.DiscriminatedUnionObject(4, value);
        }
        public bool ShouldSerializePointFound() => __pbn__actual.Is(4);
        public void ResetPointFound() => global::ProtoBuf.DiscriminatedUnionObject.Reset(ref __pbn__actual, 4);
        [global::ProtoBuf.ProtoMember(5, Name = @"game_finish")]
        public GameFinish GameFinish
        {
            get => __pbn__actual.Is(5) ? ((GameFinish)__pbn__actual.Object) : default;
            set => __pbn__actual = new global::ProtoBuf.DiscriminatedUnionObject(5, value);
        }
        public bool ShouldSerializeGameFinish() => __pbn__actual.Is(5);
        public void ResetGameFinish() => global::ProtoBuf.DiscriminatedUnionObject.Reset(ref __pbn__actual, 5);
        [global::ProtoBuf.ProtoMember(21, Name = @"heartbeat")]
        public Heartbeat Heartbeat
        {
            get => __pbn__actual.Is(21) ? ((Heartbeat)__pbn__actual.Object) : default;
            set => __pbn__actual = new global::ProtoBuf.DiscriminatedUnionObject(21, value);
        }
        public bool ShouldSerializeHeartbeat() => __pbn__actual.Is(21);
        public void ResetHeartbeat() => global::ProtoBuf.DiscriminatedUnionObject.Reset(ref __pbn__actual, 21);
    }
    [global::ProtoBuf.ProtoContract()]
    public partial class PlayerEnter : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
        [global::ProtoBuf.ProtoMember(1, Name = @"room_id")]
        [global::System.ComponentModel.DefaultValue("")]
        public string RoomId { get; set; } = "";
        [global::ProtoBuf.ProtoMember(2, Name = @"uid")]
        [global::System.ComponentModel.DefaultValue("")]
        public string Uid { get; set; } = "";
        [global::ProtoBuf.ProtoMember(3, Name = @"nick_name")]
        [global::System.ComponentModel.DefaultValue("")]
        public string NickName { get; set; } = "";
        [global::ProtoBuf.ProtoMember(4, Name = @"country")]
        [global::System.ComponentModel.DefaultValue("")]
        public string Country { get; set; } = "";
        [global::ProtoBuf.ProtoMember(5, Name = @"app_id")]
        [global::System.ComponentModel.DefaultValue("")]
        public string AppId { get; set; } = "";
        [global::ProtoBuf.ProtoMember(6, Name = @"token")]
        [global::System.ComponentModel.DefaultValue("")]
        public string Token { get; set; } = "";
    }
    [global::ProtoBuf.ProtoContract()]
    public partial class LevelResource : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
        [global::ProtoBuf.ProtoMember(1, Name = @"level_id")]
        [global::System.ComponentModel.DefaultValue("")]
        public string LevelId { get; set; } = "";
        [global::ProtoBuf.ProtoMember(2, Name = @"android_generation")]
        [global::System.ComponentModel.DefaultValue("")]
        public string AndroidGeneration { get; set; } = "";
        [global::ProtoBuf.ProtoMember(3, Name = @"ios_generation")]
        [global::System.ComponentModel.DefaultValue("")]
        public string IosGeneration { get; set; } = "";
        [global::ProtoBuf.ProtoMember(4, Name = @"diff_count")]
        public int DiffCount { get; set; }
    }
    [global::ProtoBuf.ProtoContract()]
    public partial class PlayerEntered : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
        [global::ProtoBuf.ProtoMember(1, Name = @"cid")]
        public long Cid { get; set; }
    }
    [global::ProtoBuf.ProtoContract()]
    public partial class GameStart : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
        [global::ProtoBuf.ProtoMember(1, Name = @"level_resource")]
        public global::System.Collections.Generic.List LevelResources { get; } = new global::System.Collections.Generic.List();
        [global::ProtoBuf.ProtoMember(2, Name = @"player_entered")]
        public global::System.Collections.Generic.List PlayerEntereds { get; } = new global::System.Collections.Generic.List();
    }
    [global::ProtoBuf.ProtoContract()]
    public partial class LevelPrepared : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
        [global::ProtoBuf.ProtoMember(1, Name = @"cid")]
        public long Cid { get; set; }
        [global::ProtoBuf.ProtoMember(2, Name = @"level")]
        [global::System.ComponentModel.DefaultValue("")]
        public string Level { get; set; } = "";
    }
    [global::ProtoBuf.ProtoContract()]
    public partial class LevelStart : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
        [global::ProtoBuf.ProtoMember(1, Name = @"level")]
        [global::System.ComponentModel.DefaultValue("")]
        public string Level { get; set; } = "";
    }
    [global::ProtoBuf.ProtoContract()]
    public partial class PointFound : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
        [global::ProtoBuf.ProtoMember(1, Name = @"cid")]
        public long Cid { get; set; }
        [global::ProtoBuf.ProtoMember(2, Name = @"level")]
        [global::System.ComponentModel.DefaultValue("")]
        public string Level { get; set; } = "";
        [global::ProtoBuf.ProtoMember(3, Name = @"point_id")]
        public int PointId { get; set; }
        [global::ProtoBuf.ProtoMember(4, Name = @"combo")]
        public float Combo { get; set; }
    }
    [global::ProtoBuf.ProtoContract()]
    public partial class LevelEnd : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
        [global::ProtoBuf.ProtoMember(1, Name = @"cid")]
        public long Cid { get; set; }
        [global::ProtoBuf.ProtoMember(2, Name = @"level")]
        [global::System.ComponentModel.DefaultValue("")]
        public string Level { get; set; } = "";
    }
    [global::ProtoBuf.ProtoContract()]
    public partial class AllLevelEnd : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
        [global::ProtoBuf.ProtoMember(1, Name = @"cid")]
        public long Cid { get; set; }
        [global::ProtoBuf.ProtoMember(2, Name = @"time_spent")]
        public float TimeSpent { get; set; }
    }
    [global::ProtoBuf.ProtoContract()]
    public partial class GameScore : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
        [global::ProtoBuf.ProtoMember(1, Name = @"uid")]
        [global::System.ComponentModel.DefaultValue("")]
        public string Uid { get; set; } = "";
        [global::ProtoBuf.ProtoMember(2, Name = @"score")]
        public int Score { get; set; }
        [global::ProtoBuf.ProtoMember(3, Name = @"rank")]
        public int Rank { get; set; }
        [global::ProtoBuf.ProtoMember(4, Name = @"award")]
        public int Award { get; set; }
    }
    [global::ProtoBuf.ProtoContract()]
    public partial class GameFinish : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
        [global::ProtoBuf.ProtoMember(1, Name = @"scores")]
        public global::System.Collections.Generic.List Scores { get; } = new global::System.Collections.Generic.List();
    }
    [global::ProtoBuf.ProtoContract()]
    public partial class PlayerLeave : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
        [global::ProtoBuf.ProtoMember(1, Name = @"cid")]
        public long Cid { get; set; }
    }
    [global::ProtoBuf.ProtoContract()]
    public partial class Heartbeat : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
        [global::ProtoBuf.ProtoMember(1, Name = @"timestamp")]
        public long Timestamp { get; set; }
    }
}
#pragma warning restore CS0612, CS0618, CS1591, CS3021, IDE0079, IDE1006, RCS1036, RCS1057, RCS1085, RCS1192
#endregion