syntax = "proto2";

message ServerInfo_User {
    enum UserLevelFlag {
        IsNothing = 0;
        IsUser = 1;
        IsRegistered = 2;
        IsModerator = 4;
        IsAdmin = 8;
        IsJudge = 16;
    };
    message PawnColorsOverride {
        optional string left_side = 1;
        optional string right_side = 2;
    };
    message CardArtParams {
        optional string card_name = 1;
        optional string card_provider_id = 2;
        optional double margin_pct_l = 3 [default = 0.33];
        optional double margin_pct_r = 4 [default = 0.02];
        optional double vertical_offset = 5 [default = 0.35];
        optional double zoom = 6 [default = 1.0];
    };

    optional string name = 1;
    optional uint32 user_level = 2;
    optional string address = 3;
    optional string real_name = 4;
    // gender = 5; // obsolete
    optional string country = 6;
    optional bytes avatar_bmp = 7;
    optional sint32 id = 8 [default = -1];
    optional sint32 server_id = 9 [default = -1];
    optional uint64 session_id = 10;
    optional uint64 accountage_secs = 11;
    optional string email = 12;
    optional string clientid = 13;
    optional string privlevel = 14;
    optional PawnColorsOverride pawn_colors = 15;
    optional CardArtParams card_art_params = 16;
}