import * as $protobuf from "protobufjs";
import Long = require("long");
/** Namespace client2gate_protocols. */
export namespace client2gate_protocols {

    /** e_server_msg_type enum. */
    enum e_server_msg_type {
        e_mst_start_c2g = 300,
        e_mst_c2g_heartbeat = 301,
        e_mst_g2c_send_msglist = 402,
        e_mst_g2c_heartbeat = 403,
        e_mst_cgend_index = 500
    }

    /** Properties of a packetc2g_heartbeat. */
    interface Ipacketc2g_heartbeat {

        /** packetc2g_heartbeat packetId */
        packetId?: (client2gate_protocols.e_server_msg_type|null);
    }

    /** Represents a packetc2g_heartbeat. */
    class packetc2g_heartbeat implements Ipacketc2g_heartbeat {

        /**
         * Constructs a new packetc2g_heartbeat.
         * @param [properties] Properties to set
         */
        constructor(properties?: client2gate_protocols.Ipacketc2g_heartbeat);

        /** packetc2g_heartbeat packetId. */
        public packetId: client2gate_protocols.e_server_msg_type;

        /**
         * Creates a new packetc2g_heartbeat instance using the specified properties.
         * @param [properties] Properties to set
         * @returns packetc2g_heartbeat instance
         */
        public static create(properties?: client2gate_protocols.Ipacketc2g_heartbeat): client2gate_protocols.packetc2g_heartbeat;

        /**
         * Encodes the specified packetc2g_heartbeat message. Does not implicitly {@link client2gate_protocols.packetc2g_heartbeat.verify|verify} messages.
         * @param message packetc2g_heartbeat message or plain object to encode
         * @param [writer] Writer to encode to
         * @returns Writer
         */
        public static encode(message: client2gate_protocols.Ipacketc2g_heartbeat, writer?: $protobuf.Writer): $protobuf.Writer;

        /**
         * Encodes the specified packetc2g_heartbeat message, length delimited. Does not implicitly {@link client2gate_protocols.packetc2g_heartbeat.verify|verify} messages.
         * @param message packetc2g_heartbeat message or plain object to encode
         * @param [writer] Writer to encode to
         * @returns Writer
         */
        public static encodeDelimited(message: client2gate_protocols.Ipacketc2g_heartbeat, writer?: $protobuf.Writer): $protobuf.Writer;

        /**
         * Decodes a packetc2g_heartbeat message from the specified reader or buffer.
         * @param reader Reader or buffer to decode from
         * @param [length] Message length if known beforehand
         * @returns packetc2g_heartbeat
         * @throws {Error} If the payload is not a reader or valid buffer
         * @throws {$protobuf.util.ProtocolError} If required fields are missing
         */
        public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): client2gate_protocols.packetc2g_heartbeat;

        /**
         * Decodes a packetc2g_heartbeat message from the specified reader or buffer, length delimited.
         * @param reader Reader or buffer to decode from
         * @returns packetc2g_heartbeat
         * @throws {Error} If the payload is not a reader or valid buffer
         * @throws {$protobuf.util.ProtocolError} If required fields are missing
         */
        public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): client2gate_protocols.packetc2g_heartbeat;

        /**
         * Verifies a packetc2g_heartbeat message.
         * @param message Plain object to verify
         * @returns `null` if valid, otherwise the reason why it is not
         */
        public static verify(message: { [k: string]: any }): (string|null);

        /**
         * Creates a packetc2g_heartbeat message from a plain object. Also converts values to their respective internal types.
         * @param object Plain object
         * @returns packetc2g_heartbeat
         */
        public static fromObject(object: { [k: string]: any }): client2gate_protocols.packetc2g_heartbeat;

        /**
         * Creates a plain object from a packetc2g_heartbeat message. Also converts values to other types if specified.
         * @param message packetc2g_heartbeat
         * @param [options] Conversion options
         * @returns Plain object
         */
        public static toObject(message: client2gate_protocols.packetc2g_heartbeat, options?: $protobuf.IConversionOptions): { [k: string]: any };

        /**
         * Converts this packetc2g_heartbeat to JSON.
         * @returns JSON object
         */
        public toJSON(): { [k: string]: any };

        /**
         * Gets the default type url for packetc2g_heartbeat
         * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
         * @returns The default type url
         */
        public static getTypeUrl(typeUrlPrefix?: string): string;
    }

    /** Properties of a packetg2c_heartbeat. */
    interface Ipacketg2c_heartbeat {

        /** packetg2c_heartbeat packetId */
        packetId?: (client2gate_protocols.e_server_msg_type|null);
    }

    /** Represents a packetg2c_heartbeat. */
    class packetg2c_heartbeat implements Ipacketg2c_heartbeat {

        /**
         * Constructs a new packetg2c_heartbeat.
         * @param [properties] Properties to set
         */
        constructor(properties?: client2gate_protocols.Ipacketg2c_heartbeat);

        /** packetg2c_heartbeat packetId. */
        public packetId: client2gate_protocols.e_server_msg_type;

        /**
         * Creates a new packetg2c_heartbeat instance using the specified properties.
         * @param [properties] Properties to set
         * @returns packetg2c_heartbeat instance
         */
        public static create(properties?: client2gate_protocols.Ipacketg2c_heartbeat): client2gate_protocols.packetg2c_heartbeat;

        /**
         * Encodes the specified packetg2c_heartbeat message. Does not implicitly {@link client2gate_protocols.packetg2c_heartbeat.verify|verify} messages.
         * @param message packetg2c_heartbeat message or plain object to encode
         * @param [writer] Writer to encode to
         * @returns Writer
         */
        public static encode(message: client2gate_protocols.Ipacketg2c_heartbeat, writer?: $protobuf.Writer): $protobuf.Writer;

        /**
         * Encodes the specified packetg2c_heartbeat message, length delimited. Does not implicitly {@link client2gate_protocols.packetg2c_heartbeat.verify|verify} messages.
         * @param message packetg2c_heartbeat message or plain object to encode
         * @param [writer] Writer to encode to
         * @returns Writer
         */
        public static encodeDelimited(message: client2gate_protocols.Ipacketg2c_heartbeat, writer?: $protobuf.Writer): $protobuf.Writer;

        /**
         * Decodes a packetg2c_heartbeat message from the specified reader or buffer.
         * @param reader Reader or buffer to decode from
         * @param [length] Message length if known beforehand
         * @returns packetg2c_heartbeat
         * @throws {Error} If the payload is not a reader or valid buffer
         * @throws {$protobuf.util.ProtocolError} If required fields are missing
         */
        public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): client2gate_protocols.packetg2c_heartbeat;

        /**
         * Decodes a packetg2c_heartbeat message from the specified reader or buffer, length delimited.
         * @param reader Reader or buffer to decode from
         * @returns packetg2c_heartbeat
         * @throws {Error} If the payload is not a reader or valid buffer
         * @throws {$protobuf.util.ProtocolError} If required fields are missing
         */
        public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): client2gate_protocols.packetg2c_heartbeat;

        /**
         * Verifies a packetg2c_heartbeat message.
         * @param message Plain object to verify
         * @returns `null` if valid, otherwise the reason why it is not
         */
        public static verify(message: { [k: string]: any }): (string|null);

        /**
         * Creates a packetg2c_heartbeat message from a plain object. Also converts values to their respective internal types.
         * @param object Plain object
         * @returns packetg2c_heartbeat
         */
        public static fromObject(object: { [k: string]: any }): client2gate_protocols.packetg2c_heartbeat;

        /**
         * Creates a plain object from a packetg2c_heartbeat message. Also converts values to other types if specified.
         * @param message packetg2c_heartbeat
         * @param [options] Conversion options
         * @returns Plain object
         */
        public static toObject(message: client2gate_protocols.packetg2c_heartbeat, options?: $protobuf.IConversionOptions): { [k: string]: any };

        /**
         * Converts this packetg2c_heartbeat to JSON.
         * @returns JSON object
         */
        public toJSON(): { [k: string]: any };

        /**
         * Gets the default type url for packetg2c_heartbeat
         * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
         * @returns The default type url
         */
        public static getTypeUrl(typeUrlPrefix?: string): string;
    }

    /** Properties of a msg_packet. */
    interface Imsg_packet {

        /** msg_packet msgid */
        msgid?: (number|null);

        /** msg_packet msginfo */
        msginfo?: (Uint8Array|null);
    }

    /** Represents a msg_packet. */
    class msg_packet implements Imsg_packet {

        /**
         * Constructs a new msg_packet.
         * @param [properties] Properties to set
         */
        constructor(properties?: client2gate_protocols.Imsg_packet);

        /** msg_packet msgid. */
        public msgid: number;

        /** msg_packet msginfo. */
        public msginfo: Uint8Array;

        /**
         * Creates a new msg_packet instance using the specified properties.
         * @param [properties] Properties to set
         * @returns msg_packet instance
         */
        public static create(properties?: client2gate_protocols.Imsg_packet): client2gate_protocols.msg_packet;

        /**
         * Encodes the specified msg_packet message. Does not implicitly {@link client2gate_protocols.msg_packet.verify|verify} messages.
         * @param message msg_packet message or plain object to encode
         * @param [writer] Writer to encode to
         * @returns Writer
         */
        public static encode(message: client2gate_protocols.Imsg_packet, writer?: $protobuf.Writer): $protobuf.Writer;

        /**
         * Encodes the specified msg_packet message, length delimited. Does not implicitly {@link client2gate_protocols.msg_packet.verify|verify} messages.
         * @param message msg_packet message or plain object to encode
         * @param [writer] Writer to encode to
         * @returns Writer
         */
        public static encodeDelimited(message: client2gate_protocols.Imsg_packet, writer?: $protobuf.Writer): $protobuf.Writer;

        /**
         * Decodes a msg_packet message from the specified reader or buffer.
         * @param reader Reader or buffer to decode from
         * @param [length] Message length if known beforehand
         * @returns msg_packet
         * @throws {Error} If the payload is not a reader or valid buffer
         * @throws {$protobuf.util.ProtocolError} If required fields are missing
         */
        public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): client2gate_protocols.msg_packet;

        /**
         * Decodes a msg_packet message from the specified reader or buffer, length delimited.
         * @param reader Reader or buffer to decode from
         * @returns msg_packet
         * @throws {Error} If the payload is not a reader or valid buffer
         * @throws {$protobuf.util.ProtocolError} If required fields are missing
         */
        public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): client2gate_protocols.msg_packet;

        /**
         * Verifies a msg_packet message.
         * @param message Plain object to verify
         * @returns `null` if valid, otherwise the reason why it is not
         */
        public static verify(message: { [k: string]: any }): (string|null);

        /**
         * Creates a msg_packet message from a plain object. Also converts values to their respective internal types.
         * @param object Plain object
         * @returns msg_packet
         */
        public static fromObject(object: { [k: string]: any }): client2gate_protocols.msg_packet;

        /**
         * Creates a plain object from a msg_packet message. Also converts values to other types if specified.
         * @param message msg_packet
         * @param [options] Conversion options
         * @returns Plain object
         */
        public static toObject(message: client2gate_protocols.msg_packet, options?: $protobuf.IConversionOptions): { [k: string]: any };

        /**
         * Converts this msg_packet to JSON.
         * @returns JSON object
         */
        public toJSON(): { [k: string]: any };

        /**
         * Gets the default type url for msg_packet
         * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
         * @returns The default type url
         */
        public static getTypeUrl(typeUrlPrefix?: string): string;
    }

    /** Properties of a packet_g2c_send_msglist. */
    interface Ipacket_g2c_send_msglist {

        /** packet_g2c_send_msglist packetId */
        packetId?: (client2gate_protocols.e_server_msg_type|null);

        /** packet_g2c_send_msglist msgpaks */
        msgpaks?: (client2gate_protocols.Imsg_packet[]|null);
    }

    /** Represents a packet_g2c_send_msglist. */
    class packet_g2c_send_msglist implements Ipacket_g2c_send_msglist {

        /**
         * Constructs a new packet_g2c_send_msglist.
         * @param [properties] Properties to set
         */
        constructor(properties?: client2gate_protocols.Ipacket_g2c_send_msglist);

        /** packet_g2c_send_msglist packetId. */
        public packetId: client2gate_protocols.e_server_msg_type;

        /** packet_g2c_send_msglist msgpaks. */
        public msgpaks: client2gate_protocols.Imsg_packet[];

        /**
         * Creates a new packet_g2c_send_msglist instance using the specified properties.
         * @param [properties] Properties to set
         * @returns packet_g2c_send_msglist instance
         */
        public static create(properties?: client2gate_protocols.Ipacket_g2c_send_msglist): client2gate_protocols.packet_g2c_send_msglist;

        /**
         * Encodes the specified packet_g2c_send_msglist message. Does not implicitly {@link client2gate_protocols.packet_g2c_send_msglist.verify|verify} messages.
         * @param message packet_g2c_send_msglist message or plain object to encode
         * @param [writer] Writer to encode to
         * @returns Writer
         */
        public static encode(message: client2gate_protocols.Ipacket_g2c_send_msglist, writer?: $protobuf.Writer): $protobuf.Writer;

        /**
         * Encodes the specified packet_g2c_send_msglist message, length delimited. Does not implicitly {@link client2gate_protocols.packet_g2c_send_msglist.verify|verify} messages.
         * @param message packet_g2c_send_msglist message or plain object to encode
         * @param [writer] Writer to encode to
         * @returns Writer
         */
        public static encodeDelimited(message: client2gate_protocols.Ipacket_g2c_send_msglist, writer?: $protobuf.Writer): $protobuf.Writer;

        /**
         * Decodes a packet_g2c_send_msglist message from the specified reader or buffer.
         * @param reader Reader or buffer to decode from
         * @param [length] Message length if known beforehand
         * @returns packet_g2c_send_msglist
         * @throws {Error} If the payload is not a reader or valid buffer
         * @throws {$protobuf.util.ProtocolError} If required fields are missing
         */
        public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): client2gate_protocols.packet_g2c_send_msglist;

        /**
         * Decodes a packet_g2c_send_msglist message from the specified reader or buffer, length delimited.
         * @param reader Reader or buffer to decode from
         * @returns packet_g2c_send_msglist
         * @throws {Error} If the payload is not a reader or valid buffer
         * @throws {$protobuf.util.ProtocolError} If required fields are missing
         */
        public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): client2gate_protocols.packet_g2c_send_msglist;

        /**
         * Verifies a packet_g2c_send_msglist message.
         * @param message Plain object to verify
         * @returns `null` if valid, otherwise the reason why it is not
         */
        public static verify(message: { [k: string]: any }): (string|null);

        /**
         * Creates a packet_g2c_send_msglist message from a plain object. Also converts values to their respective internal types.
         * @param object Plain object
         * @returns packet_g2c_send_msglist
         */
        public static fromObject(object: { [k: string]: any }): client2gate_protocols.packet_g2c_send_msglist;

        /**
         * Creates a plain object from a packet_g2c_send_msglist message. Also converts values to other types if specified.
         * @param message packet_g2c_send_msglist
         * @param [options] Conversion options
         * @returns Plain object
         */
        public static toObject(message: client2gate_protocols.packet_g2c_send_msglist, options?: $protobuf.IConversionOptions): { [k: string]: any };

        /**
         * Converts this packet_g2c_send_msglist to JSON.
         * @returns JSON object
         */
        public toJSON(): { [k: string]: any };

        /**
         * Gets the default type url for packet_g2c_send_msglist
         * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
         * @returns The default type url
         */
        public static getTypeUrl(typeUrlPrefix?: string): string;
    }
}

/** Namespace msg_type_def. */
export namespace msg_type_def {

    /** e_msg_result_def enum. */
    enum e_msg_result_def {
        e_rmt_unknow = 0,
        e_rmt_success = 1,
        e_rmt_fail = 2,
        e_rmt_change_gate = 3,
        e_rmt_connect_full = 4,
        e_rmt_player_max = 5,
        e_rmt_has_dial_lottery = 6,
        e_rmt_error_nickname = 7,
        e_rmt_same_nickname = 8,
        e_rmt_length_beyond_range = 9,
        e_rmt_gold_not_enough = 10,
        e_rmt_ticket_not_enough = 11,
        e_rmt_room_full = 12,
        e_rmt_vip_under = 13,
        e_rmt_player_level_under = 14,
        e_rmt_turret_level_under = 15,
        e_rmt_friend_full = 16,
        e_rmt_exists_friend = 17,
        e_rmt_player_not_exists = 18,
        e_rmt_runout_count = 19,
        e_rmt_time_not_arrive = 20,
        e_rmt_bet_index_error = 21,
        e_rmt_outof_bet_limit = 22,
        e_rmt_no_find_table = 23,
        e_rmt_pwd_not_same = 24,
        e_rmt_format_invalid = 25,
        e_rmt_need_set_pwd = 26,
        e_rmt_pwd_error = 27,
        e_rmt_not_find_item = 28,
        e_rmt_friend_offline = 29,
        e_rmt_not_in_game = 30,
        e_rmt_cant_buyitem = 31,
        e_rmt_cannot_add_self = 32,
        e_rmt_chat_too_often = 33,
        e_rmt_exp_not_enough = 34,
        e_rmt_level_max = 35,
        e_rmt_cannot_collect = 36,
        e_rmt_has_bind_phone = 37,
        e_rmt_code_error = 38,
        e_rmt_beyond_limit = 39,
        e_rmt_not_bind_phone = 40,
        e_rmt_cannot_sendto_self = 41,
        e_rmt_room_notopen = 42,
        e_rmt_bet_full = 43,
        e_rmt_game_begun = 44,
        e_rmt_banker_not_bet = 45,
        e_rmt_banker_is_full = 46,
        e_rmt_can_not_leave = 47,
        e_rmt_has_receive_reward = 48,
        e_rmt_not_recharge = 49,
        e_rmt_custom_head_freezing = 50,
        e_rmt_now_banker_first = 51,
        e_rmt_has_in_banker_list = 52,
        e_rmt_now_is_banker = 53,
        e_rmt_is_not_banker = 54,
        e_rmt_haven_apply_leave = 55,
        e_rmt_banker_not_enough = 56,
        e_rmt_banker_betgold_is_full = 57,
        e_rmt_other_betgold_is_full = 58,
        e_rmt_error_game_state = 59,
        e_rmt_box_not_exist = 60,
        e_rmt_box_has_opened = 61,
        e_rmt_thank_you_not_enough = 62,
        e_rmt_now_is_you = 63,
        e_rmt_banker_protect = 64,
        e_rmt_snatch_is_you = 65,
        e_rmt_snatch_is_low = 66,
        e_rmt_last_speaker_not_finish = 67,
        e_rmt_speaker_beyond_max_count = 68,
        e_rmt_roping_over = 69,
        e_rmt_activity_outofdate = 70,
        e_rmt_activity_not_satisfy_cond = 71,
        e_rmt_time_over = 72,
        e_rmt_not_follow = 73,
        e_rmt_not_follow_roping = 74,
        e_rmt_chip_not_enough = 75,
        e_rmt_month_card_out_date = 76,
        e_rmt_not_follow_prize_claw = 77,
        e_rmt_box_lottery_has_finish = 78,
        e_rmt_is_game_item = 79,
        e_rmt_dragon_ball_not_enough = 80,
        e_rmt_entrance_ticket_not_enough = 81,
        e_rmt_match_not_start = 82,
        e_rmt_match_will_end = 83,
        e_rmt_boss_cant_use_item = 84,
        e_rmt_lucky_not_enough = 85,
        e_rmt_item_not_enough = 86,
        e_rmt_uptype_error = 87,
        e_rmt_uplevel_fail = 88,
        e_rmt_not_open_function = 89,
        e_rmt_finish = 90,
        e_rmt_not_in_lobby = 91,
        e_rmt_not_find_cdkey = 92,
        e_rmt_has_used_cdkey = 93,
        e_rmt_cdkey_outofdate = 94,
        e_rmt_cdkey_error_overmuch = 95,
        e_rmt_has_received_cdkey_rewrad = 96,
        e_rmt_payment_only_once = 97,
        e_rmt_win_beyond_limit = 98,
        e_rmt_lose_beyond_limit = 99,
        e_rmt_player_betgold_limit = 100,
        e_rmt_rate_limit = 101,
        e_rmt_not_new_player = 102,
        e_rmt_not_friend = 103,
        e_rmt_abandon_qianggou = 104,
        e_rmt_hold_qianggou = 105,
        e_rmt_not_hold_qianggou = 106,
        e_rmt_signup_beyond_maxcount = 107,
        e_rmt_not_find_game_server = 108,
        e_rmt_game_version_error = 109,
        e_rmt_cding = 110,
        e_rmt_using = 111,
        e_rmt_item_can_not_usetime = 112,
        e_rmt_use_item_viproom = 113,
        e_rmt_dbchip_not_enough = 114,
        e_rmt_not_find_bwroom = 115,
        e_rmt_item_uselimit = 116,
        e_rmt_resign_count_limit = 117,
        e_rmt_diamond_not_enough = 118,
        e_rmt_no_buff = 119,
        e_rmt_can_not_find_fish = 120,
        e_rmt_not_signed = 121,
        e_rmt_not_completed = 122,
        e_rmt_energy_not_enought = 123,
        e_rmt_jackpot_not_enought = 124,
        e_rmt_has_bind_id_card = 125,
        e_rmt_number_error = 126,
        e_rmt_blue_level_under = 127,
        e_rmt_not_blue_lux = 128,
        e_rmt_not_blue_player = 129,
        e_rmt_not_blue_year = 130,
        e_rmt_daily_exchange_limit = 131,
        e_rmt_has_signed = 132
    }

    /** e_item_type_def enum. */
    enum e_item_type_def {
        e_itd_gold = 1,
        e_itd_diamond = 2,
        e_itd_ticket = 3,
        e_itd_count_acc = 4,
        e_itd_iconcustom = 5,
        e_itd_photoframe = 6,
        e_itd_auto_fire = 7,
        e_itd_vip = 8,
        e_itd_exchange = 9,
        e_itd_nickname = 10,
        e_itd_fish_item = 11,
        e_itd_materialstone = 12,
        e_itd_call = 13,
        e_itd_monthcard = 14,
        e_itd_active = 15,
        e_itd_turret = 16,
        e_itd_torpedo = 17,
        e_itd_dimensity = 18,
        e_itd_contribution = 19,
        e_itd_chip = 20,
        e_itd_material = 21,
        e_itd_time_acc = 22,
        e_itd_recharge = 23,
        e_itd_dimensity_discount = 24,
        e_itd_lottery_ticket = 25,
        e_itd_weekcard = 26,
        e_itd_half_price_violent = 27,
        e_itd_exchange_stone = 28,
        e_itd_turret_level = 29,
        e_itd_turret_chip = 30,
        e_itd_turret_gift = 31,
        e_itd_gift = 32,
        e_itd_dragon_ball_chip = 33,
        e_itd_give_bead = 34,
        e_itd_sex = 35,
        e_itd_createtime = 37,
        e_itd_used_bead = 38,
        e_itd_is_new_addplayer = 39,
        e_itd_channel = 40,
        e_itd_deviceid = 41,
        e_itd_player_level = 42,
        e_itd_blue_vip = 43,
        e_itd_gold_monthcard = 44,
        e_itd_diamond_monthcard = 45,
        e_itd_medium_grade_room = 50,
        e_itd_high_grade_room = 51,
        e_itd_crocodile_score = 52,
        e_itd_color_egg = 53,
        e_itd_torpedo_gift = 54,
        e_itd_activity_item = 55,
        e_itd_monkey_score = 56,
        e_itd_tomorrow_buff = 57,
        e_itd_energy = 58,
        e_itd_vip_exp = 60,
        e_itd_player_exp = 61,
        e_itd_goldingot = 62,
        e_itd_tombola = 63,
        e_itd_wing = 64,
        e_itd_buff = 100,
        e_itd_phone_card = 101,
        e_itd_jd_card = 102,
        e_itd_legendary_fish_gold = 104,
        e_itd_vip_point = 105,
        e_itd_red_packet = 106,
        e_itd_JD_chip = 107,
        e_itd_dragonball = 108,
        e_itd_glorycrystal = 109,
        e_itd_base_turret = 515,
        e_itd_trigger_event = 666
    }

    /** e_turret_def enum. */
    enum e_turret_def {
        e_turret_base = 1
    }

    /** e_item_id_def enum. */
    enum e_item_id_def {
        e_it_gold = 1,
        e_it_diamond = 2,
        e_it_ticket = 3,
        e_it_dimensity = 28,
        e_it_chip = 30
    }

    /** e_sex_def enum. */
    enum e_sex_def {
        sex_unknown = 0,
        sex_boy = 1,
        sex_girl = 2,
        sex_max = 3
    }

    /** ENotifyType enum. */
    enum ENotifyType {
        NotifyTypeSys = 200,
        NotifyTypePlayerSpeaker = 199,
        NotifyTypeWinningPrize = 198,
        NotifyTypeImportantConsume = 197,
        NotifyTypeRobot = 196
    }

    /** ENotifyShowPos enum. */
    enum ENotifyShowPos {
        pos_up = 0,
        pos_down = 1
    }

    /** BoxLotteryResult enum. */
    enum BoxLotteryResult {
        result_big_prize = 0,
        result_samll_prize = 1,
        result_thank_you = 2
    }

    /** RechargeType enum. */
    enum RechargeType {
        typeGold = 1,
        typeDiamond = 2,
        typeMonthCard = 3,
        typeNormalGift = 4,
        typeTurret = 5,
        typeLimitTimeGift = 6,
        typeTriggerGift = 7,
        typeDailyGift = 8,
        typeWeekCard = 9,
        typeVipLimitGift = 10,
        typeDailyTreasure = 11,
        typeUpToLevel = 20,
        typeNyGiftGoldChange = 21
    }
}
