%%---------------------------------------------------- %% "伙伴" %% %% @author liufenglin 240039421@qq.com %%---------------------------------------------------- -module(partner_data). -export([cfg/0]). -include("data_config.hrl"). -include("common.hrl"). cfg() -> #data_cfg{ name = partner_data ,lua_name = partner_data ,desc = "伙伴配置数据" ,source = "partner_data.xml" ,target = "partner_data.erl" ,inc = ["partner.hrl", "common.hrl", "attr.hrl"] ,callback = [ {{get_constant, "undefined"}, cb_fun, handle, {get_tuple, ["伙伴常量"], code, val}} ,{list, cb_fun, handle, {list, ["伙伴基础"]}} ,{get_base, cb_fun, handle, {get_record, ["伙伴基础"], bid, partner_base_data, [bid, name, type, pos_type, camp_type, break_id, init_star, ai, hook_skills, other_skills, item_id]}} ,{get_attr, cb_fun, handle, {get_record, ["伙伴属性"], bid, attr, [hp_max, atk, def, speed, crit_rate, crit_ratio, hit_magic, dodge_magic, hit_rate, dodge_rate]}} ,{get_lev_attr, cb_fun, handle, {get_record, ["伙伴属性"], bid, partner_lev_data, [add_hp, add_atk, add_def, add_speed]}} ,{get_lev_expend, cb_fun, handle, {get_tuple, ["升级消耗"], lev, expend}} ,{{get_lev_get_item, "[]"}, cb_fun, handle, {get_tuple, ["升级消耗"], lev, get_item}} ,{get_break_levs, cb_fun, handle, {tuple_type, ["英雄进阶"], [type, break_id], count}} ,{get_break_group_attr, cb_fun, handle, {get_record, ["英雄进阶"], [type, break_id, count], partner_lev_data, [add_hp, add_atk, add_def, add_speed]}} ,{get_break_attr, cb_fun, handle, {get_tuple, ["英雄进阶"], [type, break_id, count], all_attr}} ,{get_break_max_lev, cb_fun, handle, {get_tuple, ["英雄进阶"], [type, break_id, count], lev_max}} ,{get_break_expend, cb_fun, handle, {get_tuple, ["英雄进阶"], [type, break_id, count], expend}} ,{{get_skill_num, "1"}, cb_fun, handle, {get_tuple, ["英雄进阶"], [type, break_id, count], skill_num}} ,{{get_break_get_item, "[]"}, cb_fun, handle, {get_tuple, ["英雄进阶"], [type, break_id, count], get_item}} ,{{get_break_limit, "[]"}, cb_fun, handle, {get_tuple, ["英雄进阶"], [type, break_id, count], limit}} ,{{get_break_by_lev, "0"}, [{data_reverse, 1}], cb_fun, handle, {get_fun, ["英雄进阶"], "get_break_by_lev(ResonateLev) when ResonateLev >= ~ts -> ~ts + 1;", [lev_max, count]}} ,{get_stars_by_bid, cb_fun, handle, {tuple_type, ["英雄升星"], bid, star}} ,{get_star_attr, cb_fun, handle, {get_tuple, ["英雄升星"], [bid, star], attr}} ,{get_skills, cb_fun, handle, {get_tuple, ["英雄升星"], [bid, star], skills}} ,{get_star_max_lev, cb_fun, handle, {get_tuple, ["英雄升星"], [bid, star], lev_max}} ,{get_star_expend, cb_fun, handle, {get_tuple, ["英雄升星"], [bid, star], [expend1, expend2, expend3]}} ,{get_star_other_expend, cb_fun, handle, {get_tuple, ["英雄升星"], [bid, star], other_expend}} ,{get_skill_order, cb_fun, handle, {get_tuple, ["英雄升星"], [bid, star], skill_order}} ,{get_star_group_attr, cb_fun, handle, {get_record, ["英雄升星"], [bid, star], partner_lev_data, [add_hp, add_atk, add_def, add_speed]}} ,{{get_star_get_item1, "[]"}, cb_fun, handle, {get_tuple, ["升星返还"], star, get_item1}} ,{{get_star_get_item2, "[]"}, cb_fun, handle, {get_tuple, ["升星返还"], star, get_item2}} ,{{get_rebirth_get_item2, "[]"}, cb_fun, handle, {get_tuple, ["升星返还"], star, get_item3}} ,{get_partner_item_id, cb_fun, handle, {get_tuple, ["伙伴基础"], bid, item_id}} ,{get_rollback_star_list, cb_fun, handle, {list, ["英雄回退"]}} ,{{get_rollback_info, "[]"}, cb_fun, handle, {get_tuple, ["英雄回退"], [star, camp_type], [num, award]}} ,{{get_rollback_info2, "[]"}, cb_fun, handle, {get_tuple, ["特殊回退"], [star, camp_type], [num, award]}} ,{{get_rollback_info_sp, "[]"}, cb_fun, handle, {get_tuple, ["sp回退"], [star, camp_type], [num, award]}} ,{get_compound_info, cb_fun, handle, {get_tuple, ["英雄合成"], bid, [num, rand_id]}} ,{get_rand_list, cb_fun, handle, {tuple_type, ["英雄合成随机库"], rand_id, [partner_id, pro]}} ,{get_star_cond1, cb_fun, handle, {get_tuple, ["高星级升星条件"], star, cond1}} ,{get_star_cond2, cb_fun, handle, {get_tuple, ["高星级升星条件"], star, cond2}} ,{get_star_cond3, cb_fun, handle, {get_tuple, ["高星级升星条件"], star, cond3}} ,{get_buy_num_info, cb_fun, handle, {get_tuple, ["英雄背包格子购买"], count, [expend, add_num]}} ,{get_partner_location, cb_fun, handle, {get_tuple, ["伙伴基础"], bid, location}} ,{get_partner_cystal_lev_limit, cb_fun, handle, {get_tuple, ["伙伴基础"], bid, cystal_lev_limit}} ] ,callback_cli = [ {partner_const, cb_fun_lua, handle, {key_val, [ "伙伴常量"], [code], all}} ,{partner_base, cb_fun_lua, handle, {key_val, [ "伙伴基础"], [bid], all}} ,{partner_attr, cb_fun_lua, handle, {key_val, [ "伙伴属性"], [bid], all}} ,{partner_lev, cb_fun_lua, handle, {key_val, [ "升级消耗"], [lev], all}} ,{partner_brach, cb_fun_lua, handle, {key_val, [ "英雄进阶"], [type, break_id, count], all}} ,{partner_star, cb_fun_lua, handle, {val_str, [ "英雄升星"], [bid,star], all}} ,{partner_fuse_star, [{filter_row,[{is_show,#f_column.val_cli,[1]}]}], cb_fun_lua, handle, {list_val, ["英雄升星"], bid, [star]}} ,{partner_pokedex, [{filter_row,[{is_show_pokedex,#f_column.val_cli,[1]}]}], cb_fun_lua, handle, {list_val, ["英雄升星"], bid, [star]}} ,{get_compound_info, cb_fun_lua, handle, {key_val, ["英雄合成"], bid, [num, rand_id, is_random]}} ,{partner_buy, cb_fun_lua, handle, {key_val, ["英雄背包格子购买"], [count],all}} ,{partner_show, cb_fun_lua, handle, {val_str, ["英雄展示"], [bid,star],all}} ,{partner_max_star, cb_fun_lua, handle, {type_get_max, ["英雄升星"], [bid], star}} ,{partner_max_lev, cb_fun_lua, handle, {type_get_max, ["英雄展示"], [bid], lev}} ,{partner_library, cb_fun_lua, handle, {val_str, ["英雄图书馆"], [bid], all}} ,{partner_form, cb_fun_lua, handle, {key_val, ["玩法编队汇总显示"], [index], all}} ,{partner_return, cb_fun_lua, handle, {key_val, ["英雄回退"], [star,camp_type],all}} ,{partner_name2bid, cb_fun_lua, handle, {format, ["伙伴基础"], "\t['~ts']=~s", [name,bid]}} ] ,callback_json = [ {partner_const, cb_fun_json, handle, {key_val, [ "伙伴常量"], [code], all}} ,{partner_base, cb_fun_json, handle, {key_val, [ "伙伴基础"], [bid], all}} ,{partner_attr, cb_fun_json, handle, {key_val, [ "伙伴属性"], [bid], all}} ,{partner_lev, cb_fun_json, handle, {key_val, [ "升级消耗"], [lev], all}} ,{partner_brach, cb_fun_json, handle, {key_val, [ "英雄进阶"], [type, break_id, count], all}} ,{partner_star, cb_fun_json, handle, {val_str, [ "英雄升星"], [bid,star], all}} ,{partner_fuse_star, [{filter_row,[{is_show,#f_column.val_cli,[1]}]}], cb_fun_json, handle, {list_val, ["英雄升星"], bid, [star]}} ,{partner_pokedex, [{filter_row,[{is_show_pokedex,#f_column.val_cli,[1]}]}], cb_fun_json, handle, {list_val, ["英雄升星"], bid, [star]}} ,{get_compound_info, cb_fun_json, handle, {key_val, ["英雄合成"], bid, [num, rand_id, is_random]}} ,{partner_buy, cb_fun_json, handle, {key_val, ["英雄背包格子购买"], [count],all}} ,{partner_show, cb_fun_json, handle, {val_str, ["英雄展示"], [bid,star],all}} ,{partner_max_star, cb_fun_json, handle, {type_get_max, ["英雄升星"], [bid], star}} ,{partner_max_lev, cb_fun_json, handle, {type_get_max, ["英雄展示"], [bid], lev}} ,{partner_library, cb_fun_json, handle, {val_str, ["英雄图书馆"], [bid], all}} ,{partner_form, cb_fun_json, handle, {key_val, ["玩法编队汇总显示"], [index], all}} ,{partner_return, cb_fun_json, handle, {key_val, ["英雄回退"], [star,camp_type],all}} ,{get_star_cond, cb_fun_json, handle, {key_val, ["高星级升星条件"], star,all}} ,{partner_name2bid, cb_fun_json, handle, {format, ["伙伴基础"], "\"~ts\":\"~ts\"", [name,bid]}} ] ,sheet = [ {["伙伴常量"], [ #f_column{type = atom, name = code, desc = "标签", mod = all} ,#f_column{type = term, name = val, desc = "值", mod = all,val_cli="{}", add_list_sign = false} ,#f_column{type = bstr, name = desc, desc = "名字", mod = client} ]} ,{["伙伴基础"], [ #f_column{type = int, name = bid, desc = "伙伴BID", mod = all} ,#f_column{type = bstr, name = name, desc = "伙伴名称", mod = all} ,#f_column{type = bstr, name = e_name, desc = "伙伴英文名称", mod = client} ,#f_column{type = kv, name = type, desc = "伙伴职业", kv_type = partner_career_type, mod = all} ,#f_column{type = kv, name = pos_type, desc = "类型", kv_type = partner_pos_type, mod = all} ,#f_column{type = kv, name = camp_type, desc = "阵营", kv_type = partner_camp_type, mod = all} ,#f_column{type = int, name = break_id, desc = "进阶ID", mod = all} ,#f_column{type = int, name = show_order, desc = "显示顺序", mod = client} ,#f_column{type = int, name = init_star, desc = "初始星级", mod = all} ,#f_column{type = int, name = ai, desc = "自动战斗AI", mod = server, val = "0"} % ,#f_column{type = bstr, name = desc, desc = "伙伴描述", mod = client} % ,#f_column{type = term, name = source , desc = "获取途径", mod = client} ,#f_column{type = bstr, name = hero_pos, desc = "英雄定位", mod = client} ,#f_column{type = bstr, name = voice , desc = "语音", mod = client} ,#f_column{type = int, name = voice_time , desc = "语音时长", mod = client} % ,#f_column{type = int, name = can_use_direct_item, desc = "是否可直升", mod = all} % ,#f_column{type = int, name = is_show_hero, desc = "不显示英雄", mod = client} % ,#f_column{type = term, name = hero_attr, desc = "英雄六边形", mod = client} % ,#f_column{type = term, name = recommend_skill, desc = "推荐技能", mod = client} % ,#f_column{type = term, name = hook_skills, desc = "假战斗技能"} % ,#f_column{type = term, name = compose_expend, desc = "神格召唤消耗", mod = all} ,#f_column{type = int, name = show_effect, desc = "召唤特效播放", mod = client} ,#f_column{type = term, name = hook_skills, desc = "假战斗技能"} ,#f_column{type = term, name = other_skills, desc = "隐藏技能", val = "[]", mod = server} ,#f_column{type = bstr, name = bustid, desc = "mvp半身立绘图片", mod = client} ,#f_column{type = int, name = item_id, desc = "英雄道具id", mod = all} ,#f_column{type = bstr, name = draw_res, desc = "英雄全身立绘", mod = client} ,#f_column{type = term, name = draw_offset, desc = "召唤展示立绘偏移量", mod = client} ,#f_column{type = int, name = draw_scale, desc = "召唤展示立绘缩放", mod = client} ,#f_column{type = int, name = rare_flag, desc = "召唤时的稀有标识", val = "0", mod = client} ,#f_column{type = bstr, name = introduce_str, desc = "英雄界面介绍短语", val = "", mod = client} ,#f_column{type = term, name = location, add_list_sign=false, desc = "英雄定位", mod = server, val = "[]"} ,#f_column{type = int, name = cystal_lev_limit, desc = "水晶等级上限", mod = all} ,#f_column{type = int, name = quality, desc = "伙伴品质", mod = client} ,#f_column{type = bstr, name = phonetic_text, desc = "语音文本", mod = client} ]} ,{["伙伴属性"], [ #f_column{type = int, name = bid, desc = "伙伴BID", mod = all} ,#f_column{type = int, name = hp_max, desc = "初始生命", mod = all} ,#f_column{type = int, name = atk, desc = "初始攻击", mod = all} ,#f_column{type = int, name = def, desc = "初始防御", mod = all} ,#f_column{type = int, name = speed, desc = "初始速度", mod = all} ,#f_column{type = int, name = crit_rate, desc = "暴击", mod = all} ,#f_column{type = int, name = crit_ratio, desc = "暴伤", mod = all} ,#f_column{type = int, name = hit_magic, desc = "效果命中", mod = all} ,#f_column{type = int, name = dodge_magic, desc = "效果抵抗", mod = all} ,#f_column{type = int, name = hit_rate, desc = "命中", mod = all} ,#f_column{type = int, name = dodge_rate, desc = "闪避", mod = all} ,#f_column{type = int, name = add_hp, desc = "生命成长", mod = all} ,#f_column{type = int, name = add_atk, desc = "攻击成长", mod = all} ,#f_column{type = int, name = add_def, desc = "防御成长", mod = all} ,#f_column{type = int, name = add_speed, desc = "速度成长", mod = all} ]} ,{["升级消耗"], [ #f_column{type = int, name = lev, desc = "等级", mod = all} ,#f_column{type = term, name = expend, desc = "消耗", mod = all} ,#f_column{type = term, name = get_item, desc = "分解返还", val = "[]", mod = all} ]} ,{["英雄进阶"], [ #f_column{type = int, name = break_id, desc = "进阶ID", mod = all} ,#f_column{type = kv, name = type, desc = "伙伴职业", kv_type = partner_career_type, mod = all} ,#f_column{type = int, name = count, desc = "进阶次数", mod = all} ,#f_column{type = int, name = lev_max, desc = "等级上限", mod = all} ,#f_column{type = int, name = add_hp, desc = "生命成长", mod = all} ,#f_column{type = int, name = add_atk, desc = "攻击成长", mod = all} ,#f_column{type = int, name = add_def, desc = "防御成长", mod = all} ,#f_column{type = int, name = add_speed, desc = "速度成长", mod = all} ,#f_column{type = term, name = all_attr, desc = "固定属性", val = "[]", mod = all} ,#f_column{type = int, name = skill_num, desc = "当前激活技能数", mod = all} ,#f_column{type = term, name = expend, desc = "进阶消耗", val = "[]", mod = all} ,#f_column{type = term, name = get_item, desc = "进阶返还", val = "[]", mod = all} ,#f_column{type = term, name = limit, desc = "进阶要求", val = "[]", mod = all} ]} ,{["英雄升星"], [ #f_column{type = int, name = bid, desc = "伙伴BID", mod = all} ,#f_column{type = int, name = star, desc = "星级", mod = all} ,#f_column{type = atom, name = res_id, desc = "英雄模型资源ID", mod = client} ,#f_column{type = int, name = head_id, desc = "英雄头像", mod = client} ,#f_column{type = int, name = add_hp, desc = "生命成长", mod = all} ,#f_column{type = int, name = add_atk, desc = "攻击成长", mod = all} ,#f_column{type = int, name = add_def, desc = "防御成长", mod = all} ,#f_column{type = int, name = add_speed, desc = "速度成长", mod = all} ,#f_column{type = term, name = attr, desc = "属性加成", val = "[]", mod = all} ,#f_column{type = term, name = expend1, desc = "升星所需本体卡", val = "[]", mod = all} ,#f_column{type = term, name = expend2, desc = "升星所需指定卡", val = "[]", mod = all} ,#f_column{type = term, name = expend3, desc = "升星所需随机卡", val = "[]", mod = all} ,#f_column{type = term, name = other_expend, desc = "额外消耗", val = "[]", mod = all} ,#f_column{type = term, name = skills, desc = "技能", mod = all} ,#f_column{type = int, name = lev_max, desc = "等级上限(没有就不填)", val = "0", mod = all} ,#f_column{type = term, name = skill_order, desc = "默认出招顺序", mod = server} ,#f_column{type = kv, name = is_show, desc = "是否在融合祭坛显示", kv_type = [{"是", 1}, {"否", 0}], val_cli = 0, mod = client} ,#f_column{type = kv, name = is_show_pokedex, desc = "是否在图鉴显示", kv_type = [{"是", 1}, {"否", 0}], val_cli = 0, mod = client} ,#f_column{type = term, type_func = str, name = attr_show, desc = "客户端升星提升预览", mod = client, add_list_sign = false} ,#f_column{type = bstr, name = show_effect, desc = "模型展示环绕特效", mod = client} ,#f_column{type = bstr, name = fight_effect, desc = "战斗中环绕特效", mod = client} ,#f_column{type = term, name = source, desc = "来源", mod = client} ]} ,{["英雄合成"], [ #f_column{type = int, name = bid, desc = "碎片ID", mod = all} ,#f_column{type = int, name = num, desc = "数量", mod = all} ,#f_column{type = int, name = rand_id, desc = "随机库id", mod = server} ,#f_column{type = int, name = is_random, desc = "碎片类型", mod = client} ]} ,{["英雄合成随机库"], [ #f_column{type = int, name = rand_id, desc = "随机库id", mod = all} ,#f_column{type = int, name = partner_id, desc = "英雄id", mod = all} ,#f_column{type = int, name = pro, desc = "权重", mod = all} ]} ,{["升星返还"], [ #f_column{type = int, name = star, desc = "星级", mod = all} ,#f_column{type = term, name = get_item1, desc = "分解返还", val = "[]", mod = all} ,#f_column{type = term, name = get_item2, desc = "分解额外返还", val = "[]", mod = all} ,#f_column{type = term, name = get_item3, desc = "重生返还", val = "[]", mod = all} ]} ,{["英雄回退"], [ #f_column{type = int, name = star, desc = "星级", mod = all} ,#f_column{type = kv, name = camp_type, desc = "阵营", kv_type = partner_camp_type, mod = all} ,#f_column{type = int, name = num, desc = "返还五星本体", val = "0", mod = all} ,#f_column{type = term, name = award, desc = "固定回退返还", val = "[]", mod = all} ]} ,{["特殊回退"], [ #f_column{type = int, name = star, desc = "星级", mod = all} ,#f_column{type = kv, name = camp_type, desc = "阵营", kv_type = partner_camp_type, mod = all} ,#f_column{type = int, name = num, desc = "返还五星本体", val = "0", mod = all} ,#f_column{type = term, name = award, desc = "固定回退返还", val = "[]", mod = all} ]} ,{["sp回退"], [ #f_column{type = int, name = star, desc = "星级", mod = all} ,#f_column{type = kv, name = camp_type, desc = "阵营", kv_type = partner_camp_type, mod = all} ,#f_column{type = int, name = num, desc = "返还五星本体", val = "0", mod = all} ,#f_column{type = term, name = award, desc = "固定回退返还", val = "[]", mod = all} ]} ,{["英雄背包格子购买"], [ #f_column{type = int, name = count, desc = "次数", mod = all} ,#f_column{type = term, name = expend, desc = "消耗", mod = all} ,#f_column{type = int, name = add_num, desc = "增加格子数", mod = all} ]} ,{["英雄展示"], [ #f_column{type = int, name = bid, desc = "英雄ID", mod = client} ,#f_column{type = int, name = lev, desc = "等级", mod = client} ,#f_column{type = int, name = star, desc = "星级", mod = client} ,#f_column{type = int, name = atk, desc = "攻击", mod = client} ,#f_column{type = int, name = def, desc = "防御", mod = client} ,#f_column{type = int, name = hp, desc = "血量", mod = client} ,#f_column{type = int, name = speed, desc = "速度", mod = client} ,#f_column{type = int, name = crit_rate, desc = "暴击率", mod = client} ,#f_column{type = int, name = crit_ratio, desc = "暴击伤害", mod = client} ,#f_column{type = int, name = hit_magic, desc = "控制", mod = client} ,#f_column{type = int, name = dodge_magic, desc = "抗控", mod = client} ,#f_column{type = int, name = tenacity, desc = "抗暴", mod = client} ,#f_column{type = int, name = hit_rate, desc = "命中", mod = client} ,#f_column{type = int, name = res, desc = "免伤", mod = client} ,#f_column{type = int, name = dodge_rate, desc = "闪躲", mod = client} ,#f_column{type = int, name = cure, desc = "治疗加成", mod = client} ,#f_column{type = int, name = be_cure, desc = "被治疗加成", mod = client} ,#f_column{type = int, name = dam, desc = "伤害加成", mod = client} ,#f_column{type = term, name = skills, desc = "技能", mod = client} ]} ,{["英雄图书馆"], [ #f_column{type = int, name = bid, desc = "英雄ID", mod = client} ,#f_column{type = bstr, name = name, desc = "英雄名", mod = server} ,#f_column{type = bstr, name = title, desc = "英雄称号", mod = client} ,#f_column{type = bstr, name = voice_str, desc = "语音内容", mod = client} ,#f_column{type = bstr, name = story, desc = "传记内容", mod = client} ,#f_column{type = term, name = draw_offset, desc = "立绘偏移量", mod = client} ,#f_column{type = int, name = scale, desc = "立绘缩放", mod = client} ]} ,{["玩法编队汇总显示"], [ #f_column{type = int, name = index, desc = "编队排序", mod = client} ,#f_column{type = bstr, name = name, desc = "名字", mod = client} ,#f_column{type = int, name = form_type, desc = "类型", mod = client} ,#f_column{type = bstr, name = group, desc = "分组", mod = client} ]} ,{["高星级升星条件"], [ #f_column{type = int, name = star, desc = "星级", mod = all} ,#f_column{type = term, name = cond1, desc = "条件1", add_list_sign = false, mod = all} ,#f_column{type = bstr, name = desc1, desc = "描述1", mod = client} ,#f_column{type = term, name = cond2, desc = "条件2", mod = all} ,#f_column{type = bstr, name = desc2, desc = "描述2", mod = client} ,#f_column{type = term, name = cond3, desc = "条件3", add_list_sign = false, mod = all} ,#f_column{type = bstr, name = desc3, desc = "描述3", mod = client} ]} ] }.