コード例 #1
0
ファイル: define.py プロジェクト: kimch2/x8623
equip_fields = init_fields([
    define(0x0001, "entityID", "integer", "唯一实体ID", save=True, sync=True),
    define(0x0002, "prototypeID", "integer", "配置ID", save=True, sync=True),
    define(0x0003, "masterID", "integer", "主人的角色ID"),
    define(0x0004, "type", "integer", "类型"),
    define(0x0005, 'equipID', 'integer', '装备ID', formula='entityID'),
    define(0x0006, 'level', "integer", "强化等级", save=True, sync=True),
    define(0x0007, 'step', "integer", "装备阶数", save=True, sync=True, default=1),
    define(0x0008,
           'rest_star',
           "integer",
           "剩余兵魂",
           save=True,
           sync=True,
           default=0),
    define(0x0009, "slugs", "integer", "加成属性槽数", formula="fn.get_slugs(step)"),
    define(
        0x0020,
        "baseHP",
        "float",
        "基础血量",
        formula=
        "fn.get_equip_base_hp(prototypeID, level, step, enchant_attrs, player_equip1, player_equip2, player_equip3, player_equip4, player_equip5, player_equip6, type)"
    ),
    define(
        0x0021,
        "baseATK",
        "float",
        "基础攻击",
        formula=
        "fn.get_equip_base_atk(prototypeID, level, step, enchant_attrs, player_equip1, player_equip2, player_equip3, player_equip4, player_equip5, player_equip6, type)"
    ),
    define(
        0x0022,
        "baseDEF",
        "float",
        "基础防御",
        formula=
        "fn.get_equip_base_def(prototypeID, level, step, enchant_attrs, player_equip1, player_equip2, player_equip3, player_equip4, player_equip5, player_equip6, type)"
    ),
    define(
        0x0023,
        "baseCRI",
        "float",
        "基础暴击",
        formula=
        "fn.get_equip_base_crit(prototypeID, level, step, enchant_attrs, player_equip1, player_equip2, player_equip3, player_equip4, player_equip5, player_equip6, type)"
    ),
    define(
        0x0024,
        "baseEVA",
        "float",
        "基础闪躲",
        formula=
        "fn.get_equip_base_dodge(prototypeID, level, step, enchant_attrs, player_equip1, player_equip2, player_equip3, player_equip4, player_equip5, player_equip6, type)"
    ),
    define(0x0025,
           "enchants",
           "sequence",
           "附魔",
           save=True,
           decoder=json.decode,
           encoder=json.encode),
    define(0x0026,
           "enchant_attrs",
           "string",
           "附魔属性",
           sync=True,
           formula="fn.get_enchant_attrs(prototypeID, slugs, enchants)"),
    define(
        0x0080,
        "base_power",
        "float",
        "装备战力",
        formula=
        "fn.get_equip_base_power(entityID, prototypeID, masterID, baseHP, baseATK, baseDEF, baseCRI, baseEVA)"
    ),
    define(0x0081, "power", "integer", "战力", sync=True, formula="base_power"),
    define(0x0099, "player_equip1", "integer", "玩家装备等级1", default=0),
    define(0x009a, "player_equip2", "integer", "玩家装备等级2", default=0),
    define(0x009b, "player_equip3", "integer", "玩家装备等级3", default=0),
    define(0x009c, "player_equip4", "integer", "玩家装备等级4", default=0),
    define(0x009d, "player_equip5", "integer", "玩家装备等级5", default=0),
    define(0x009e, "player_equip6", "integer", "玩家装备等级6", default=0),
])
コード例 #2
0
'''

mail_fields = init_fields([
    define(0x0001, 'entityID', 'integer', '邮件ID', save=True),
    define(0x0002, 'playerID', 'integer', '玩家ID', save=True),
    define(0x0003, 'title', 'string', '邮件标题', save=True),
    define(0x0004, 'content', 'string', '邮件内容', save=True),
    define(0x0005, 'type', 'integer', '邮件类型', save=True),
    define(0x0006, 'addtime', 'integer', '添加时间', save=True),
    define(0x0007,
           'addition',
           'dict',
           '邮件附件',
           save=True,
           decoder=json.decode,
           encoder=json.encode),
    define(0x0008, 'isread', 'boolean', '是否已读', save=True),
    define(0x0009, 'isreceived', 'boolean', '是否已领', save=True),
    define(0x000c, 'mailID', 'integer', '邮件ID', formula='entityID'),
    define(0x000d,
           'limitdata',
           'dict',
           '用户限制条件',
           save=True,
           decoder=json.decode,
           encoder=json.encode),
    define(0x000e, 'cd', 'integer', '剩余时间,自动销毁', save=True, default=0),
    define(0x000f, "configID", "integer", "配置ID,可能没有", save=True, default=0),
])
store_tag = 'm'
MailBase = create_class('MailBase', mail_fields, store_tag)
コード例 #3
0
ファイル: define.py プロジェクト: fcua/x8623
# coding: utf-8
from yy.entity import create_class, define, init_fields

extra_imports = '''
'''

user_fields = init_fields([
    define(1, 'userID', 'integer', '用户ID', save=True),
    define(2, 'username', 'string', '用户名', save=True, event=True),
    define(3, 'password', 'string', '密码', save=True),
    define(4, 'imsi', 'string', 'imsi', save=True),
    define(5, 'createtime', 'datetime', '创建时间', save=True),
    define(6, "blocktime", "integer", "限制登录时间", save=True),
    define(7, "lock_device", "string", "锁定登录设备", save=True),
])
store_tag = 'u'
UserBase = create_class('UserBase', user_fields, store_tag)

if __name__ == '__main__':
    import os
    from yy.entity import gen_cython
    c = gen_cython(user_fields.values(), 'c_UserBase',
                   'from user.define import UserBase as PureEntity', store_tag,
                   extra_imports)
    open(os.path.join(os.path.dirname(__file__), 'c_user.pyx'), 'w').write(c)
コード例 #4
0
faction_fields = init_fields([
    define(0x0001, "entityID", "integer", "唯一ID", save=True),
    define(0x0002, "factionID", "integer", "公会ID", formula='entityID'),
    define(0x0003, "name", "string", "公会名称", save=True),
    define(0x0004, "level", "integer", "公会等级"),
    define(0x0005, "totalfp", "integer", "总贡献", save=True, default=0),
    define(0x0006,
           "todayfp",
           "integer",
           "今日贡献",
           save=True,
           cycle=True,
           timestamp=0x0013,
           default=0),
    define(0x0007,
           "memberset",
           "set",
           "拥有的成员",
           save=True,
           decoder=json.decode,
           encoder=json.encode),
    define(0x0008,
           "applyset",
           "set",
           "申请的成员",
           save=True,
           decoder=json.decode,
           encoder=json.encode),
    define(0x0009,
           "inviteset",
           "set",
           "邀请的冒险者",
           save=True,
           decoder=json.decode,
           encoder=json.encode),
    define(0x000a, "mode", "integer", "认证方式", save=True, default=1),
    define(0x000b, "notice", "string", "公会公告", save=True),
    define(0x000c, "createtime", "integer", "创建时间", save=True),
    define(0x000d,
           "strengthen_hp_level",
           "integer",
           "强化hp等级",
           save=True,
           default=0),
    define(0x000e,
           "strengthen_at_level",
           "integer",
           "强化攻等级",
           save=True,
           default=0),
    define(0x000f,
           "strengthen_ct_level",
           "integer",
           "强化暴等级",
           save=True,
           default=0),
    define(0x0010,
           "strengthen_df_level",
           "integer",
           "强化防等级",
           save=True,
           default=0),
    define(0x0015, "leaderID", "integer", "会长ID", save=True),
    define(0x0016, "dflag", "boolean", "待解散标识", save=True, default=False),
    define(0x0017,
           "mall_products",
           "set",
           "已经解锁商品位置",
           save=True,
           decoder=json.decode,
           encoder=json.encode),
    define(0x0018, "faction_treasure", "integer", "公会宝藏", save=True,
           default=0),
    define(0x0019,
           "city_top_member",
           "dict",
           "黄金城第一名成员",
           decoder=json.decode,
           encoder=json.encode,
           save=True),
    define(0x0020,
           "city_top_member_kills",
           "integer",
           "黄金城第一名成员所杀怪个数",
           save=True,
           default=0),
])
コード例 #5
0
ファイル: entity.py プロジェクト: fcua/x8623
player_fields = init_fields(
    define(0x000b, "entityID", "integer", "", save=True),
    define(0x0001, "plain", "integer", ""),
    define(0x0002, "persistent", "integer", "", save=True, sync=True),
    define(0x0003, "formula1", "integer", "", formula="plain + 1", sync=True),
    define(0x0004, "formula2", "integer", "", formula="plain + 2", save=True),
    define(0x0005,
           "formula3",
           "integer",
           "",
           formula="formula2 + 2",
           event=True),
    define(0x0006,
           "sp",
           "integer",
           "",
           cycle=True,
           timestamp='sp_update_time',
           resume=10,
           max='sp_max',
           default=0),
    # 0x0007 sp_ts
    define(0x0008, "sp_max", "integer", "", default=10),
    define(0x0024,
           "sp_update_time",
           "integer",
           "",
           sync=True,
           save=True,
           default=0),
    define(0x0009,
           "left_count",
           "integer",
           "",
           cycle=True,
           resume=0,
           default=10,
           timestamp='left_count_update_time'),
    define(0x000a, "left_count_update_time", "integer", ""),
    define(0x000c,
           "list_value",
           "sequence",
           "",
           cycle=True,
           timestamp=0x0015,
           sync=True,
           save=True,
           encoder=json.encode,
           decoder=json.decode),
    define(0x000d, "string_value", "string", ""),
    define(0x000e,
           "dict_value",
           "dict",
           "",
           save=True,
           sync=True,
           encoder=json.encode,
           decoder=json.decode),
    define(0x000f,
           "default_dict_value",
           "object",
           "",
           encoder=json.encode,
           decoder=json.decode,
           raw_default='defaultdict(int)'),
    define(0x0010,
           "set_value",
           "set",
           "",
           save=True,
           sync=True,
           encoder=json.encode,
           decoder=json.decode),
    define(0x0011,
           "some_cd_value",
           "integer",
           "",
           cycle=True,
           timestamp=0x0012,
           save=True,
           sync=True,
           syncTimeout=True),
    define(0x0013, "float_value", "float", "", save=True, sync=True),
    define(0x0014, "datetime_value", "datetime", "", save=True, sync=True),

    # 普通属性排行榜
    define(0x0016, "natural_score", "integer", "", sync=True, default=10),
    define(0x001A,
           "natural_ranking",
           "integer",
           "",
           formula='fn.get_challenge_rank(entityID)'),
    define(0x0017, "rank", "integer", ""),
    define(0x0018, "depend_on_formula3", "integer", ""),
    define(0x0019, "rank2", "integer", ""),

    # 材料背包 测试stored_dict
    define(0x001B, 'pack', 'stored_dict', '', int_key=True, int_value=True),
    # 材料背包 测试stored_set
    define(0x001C, 'rewards', 'stored_set', '', int_value=True),

    # 依赖持久属性的公式属性
    define(0x001D, "persist_formula1", "integer", "",
           formula="persistent + 1"),
    define(0x001E,
           "persist_formula2",
           "integer",
           "",
           formula="persist_formula1 + 1"),
    define(0x001F,
           'fbs',
           'stored_dict',
           '',
           int_key=True,
           encoder=json.encode,
           decoder=json.decode),
    define(0x0020, "integer_formula", "integer", "", formula="plain*0.1"),
    define(0x0021, "name", "string", "", save=True),
    define(0x0022, "worldID", "integer", "", save=True),
    define(0x0023, "bool_value", "boolean", "", save=True),
    define(0x0025,
           "natural_ranking2",
           "integer",
           "",
           formula='fn.get_challenge_rank2(entityID)'),
    define(0x0026, "natural_score2", "integer", "", sync=True, default=10),
    define(0x0027, "join_time", "integer", ""),
    define(0x0030, "createtime", "integer", "", save=True),
    define(0x0031, "createtime", "integer", "", save=True),
    define(0x0032,
           "usedcount",
           "integer",
           "",
           cycle=True,
           timestamp=0x0033,
           save=True,
           default=0),

    # stored_set encoding
    define(0x0040,
           'fbrewards',
           'stored_set',
           '',
           encoder=cPickle.dumps,
           decoder=cPickle.loads),

    # stored_list encoding
    define(0x0041,
           'mylist',
           'stored_sequence',
           '',
           encoder=json.encode,
           decoder=json.decode),
)
コード例 #6
0
user_fields = init_fields([
    define(1, 'userID', 'integer', '用户ID', formula="entityID"),
    define(2, 'username', 'string', '用户名', save=True, event=True),
    define(3, 'password', 'string', '密码', save=True),
    define(4, 'imsi', 'string', 'imsi', save=True),
    define(5, 'createtime', 'datetime', '创建时间', save=True),
    # 如果玩家不在线,且这个字段有值,表示上次没有干净退出
    define(6,
           'roles',
           'stored_dict',
           '各区角色ID',
           int_key=True,
           encoder=json.encode,
           decoder=decode_roles),
    define(7, 'entityID', 'integer', '用户ID', save=True),
    define(8, "blocktime", "integer", "限制登录时间", save=True),
    # define(9, "createRoleReward", "integer", "创建下一个角色时奖励", save=True, default=0),
    define(10, "lastserver", "integer", "lastserver", save=True, default=0),
    define(11, "username_alias", "string", "用户名别名", save=True),
    define(12, "lock_device", "string", "锁定登录设备", save=True),
    define(13, "channel", "string", "小渠道名", save=True),
    define(14,
           "back_reward_received",
           "boolean",
           "上次测试充值返现",
           save=True,
           default=False),
    define(15,
           "back_level_reward_received",
           "boolean",
           "上次测试等级奖励",
           save=True,
           default=False),
])
コード例 #7
0
ファイル: define.py プロジェクト: kimch2/x8623
group_fields = init_fields([
    define(0x0001, "entityID", "integer", "唯一ID", save=True),
    define(0x0002, "groupID", "integer", "同门ID", formula="entityID"),
    define(0x0003, "name", "string", "同门名称", save=True),
    define(0x0004,
           "applys",
           "stored_dict",
           "申请的成员",
           int_key=True,
           decoder=json.decode,
           encoder=json.encode),
    define(0x0005,
           "members",
           "stored_dict",
           "当前的成员",
           int_key=True,
           decoder=json.decode,
           encoder=json.encode),
    define(0x0006, "leaderID", "integer", "大师兄ID", save=True),
    define(0x0007, "invites", "stored_set", "已邀请的好友", int_value=True),
    define(0x0008, "leader_lastlogin", "datetime", "大师兄上次登录时间", save=True),
    define(0x0009, "gve_joineds", "stored_sequence", "观战列表", int_value=True),
    define(0x000a, "gve_activateds", "stored_sequence", "活跃列表",
           int_value=True),
    define(0x000b, "gve_start_time", "integer", "开战时间", save=True, default=0),
    define(0x000c,
           "gve_progress",
           "stored_dict",
           "进度",
           int_key=True,
           int_value=True),
    define(0x000d, "gve_deads", "stored_set", "死亡列表", int_value=True),
    define(0x000e, "gve_end_cd", "integer", "结束倒计时", save=True, default=0),
    define(0x0010, "gve_max_damage", "integer", "最高伤害", save=True, default=0),
    define(0x0011,
           "gve_rewards",
           "stored_dict",
           "奖励",
           int_key=True,
           decoder=json.decode,
           encoder=json.encode),
    define(0x0012,
           "gve_last_kick_time",
           "integer",
           "上次踢人时间",
           save=True,
           default=0),
    define(0x0013,
           "gve_last_reset_time",
           "integer",
           "上次重置时间",
           save=True,
           default=0),
    define(0x0014,
           "gve_end_activateds",
           "stored_sequence",
           "备份活跃列表",
           int_value=True),
    define(0x0015,
           "gve_activateds_detail",
           "stored_dict",
           "备份活跃详细",
           int_key=True,
           decoder=json.decode,
           encoder=json.encode),
    define(0x0016,
           "lastlogin",
           "datetime",
           "同门大师兄最后一次登录",
           save=True,
           default=0),
])