syntax = "proto3";

package freefire;

message AccountPersonalShowInfo {
    message BasicInfo {
        string account_id = 1;
        string nickname = 2;
        int32 level = 3;
        int64 exp = 4;
        int32 liked = 5;
        string region = 6;
        int32 badge_cnt = 7;
        int32 rank = 8;
        int32 cs_rank = 9;
        bool show_br_rank = 10;
        bool show_cs_rank = 11;
        int64 create_at = 12;
        int64 last_login_at = 13;
        string release_version = 14;
        int32 max_rank = 15;
        int32 ranking_points = 16;
        int32 cs_max_rank = 17;
        int32 cs_ranking_points = 18;
    }
    
    message ClanBasicInfo {
        string clan_id = 1;
        string clan_name = 2;
        int32 clan_level = 3;
        int32 member_num = 4;
        int32 capacity = 5;
        string captain_id = 6;
    }
    
    message SocialInfo {
        string signature = 1;
        string language = 2;
        int32 gender = 3;
        string mode_prefer = 4;
    }
    
    message PetInfo {
        string id = 1;
        string name = 2;
        int32 exp = 3;
        int32 level = 4;
    }
    
    message CaptainBasicInfo {
        string account_id = 1;
        string nickname = 2;
        int32 level = 3;
        int64 exp = 4;
        int32 liked = 5;
        string region = 6;
    }
    
    message CreditScoreInfo {
        int32 credit_score = 1;
        int64 periodic_summary_end_time = 2;
    }
    
    message InventoryInfo {
        repeated SkinInfo skins = 1;
        repeated BundleInfo bundles = 2;
        repeated EmoteInfo emotes = 3;
    }
    
    message SkinInfo {
        string id = 1;
        string name = 2;
        bool is_owned = 3;
        bool is_equipped = 4;
        int32 quantity = 5;
    }
    
    message BundleInfo {
        string id = 1;
        string name = 2;
        bool is_owned = 3;
        bool is_equipped = 4;
    }
    
    message EmoteInfo {
        string id = 1;
        string name = 2;
        bool is_owned = 3;
        bool is_equipped = 4;
    }
    
    message BadgeInfo {
        string id = 1;
        string name = 2;
        bool is_owned = 3;
    }
    
    message TitleInfo {
        string id = 1;
        bool is_owned = 2;
    }
    
    BasicInfo basic_info = 1;
    ClanBasicInfo clan_basic_info = 2;
    SocialInfo social_info = 3;
    PetInfo pet_info = 4;
    CaptainBasicInfo captain_basic_info = 5;
    CreditScoreInfo credit_score_info = 6;
    InventoryInfo inventory_info = 7;
    repeated BadgeInfo badge_info = 8;
    repeated TitleInfo title_info = 9;
}