%%---------------------------------------------------- %% 角色个人空间成就 %% %% @author liufenglin 240039421@qq.com %%---------------------------------------------------- -module(room_feat_data). -export([cfg/0, get/1]). -include("data_config.hrl"). cfg() -> #data_cfg{ name = room_feat_data ,lua_name = room_feat_data ,desc = "个人空间成就数据" ,splitv = 2 ,source = "room_feat_data.xml" ,target = "room_feat_data.erl" ,inc = ["common.hrl", "quest.hrl", "gain.hrl", "condition.hrl"] ,callback = [ {{get_const, undefined}, cb_fun, handle, {get_fun, ["常量配置"], "get_const(~ts) -> ~ts; %% ~ts", [key, val, desc]}} ,{list, cb_fun, handle, {list, ["成就数据"]}} ,{lev, cb_fun, handle, {tuple_type, ["成就数据"], lev, id}} ,{{suffix_quest, "undefined"}, cb_fun, handle, {get_tuple, ["成就数据"], id, suffix_quest}} ,{{dungeon_feat, "[]"}, cb_fun, handle, {tuple_type, ["成就数据"], dungeon_id, id}} ,{get, cb_fun, handle, {get_record, ["成就数据"], id, quest_data, all}} ,{{get_point, "0"}, cb_fun, handle, {get_tuple, ["徽章基础数据"], id, point}} ,{{get_badges_name, "{<<>>, 2}"}, cb_fun, handle, {get_tuple, ["徽章基础数据"], id, [name, quality]}} ,{get_honor_name, [{data_reverse, 1}], cb_fun, handle, {get_fun, ["徽章点数收集"], "get_honor_name(Point) when Point >= ~ts -> ~ts;", [min, name]}} ] ,callback_cli = [ {const, cb_fun_lua, handle, {key_val, ["常量配置"], [key], all}} ,{exp_info, cb_fun_lua, handle, {key_val, ["成就数据"], id, [id, name, type, lev, desc, commit_rewards, hide]}} ,{honor_icon_info, cb_fun_lua, handle, {key_val, ["徽章基础数据"], id, all}} ,{honor_title_info, cb_fun_lua, handle, {list_val, ["徽章点数收集"], all}} ,{type_list, cb_fun_lua, handle, {list_val, ["成就数据"], type, [id]}} ,{show_list, cb_fun_lua, handle, {list_val, ["徽章基础数据"], is_show, [id]}} ] ,callback_json = [ {const, cb_fun_json, handle, {key_val, ["常量配置"], [key], all}} ,{exp_info, cb_fun_json, handle, {key_val, ["成就数据"], id, [id, name, type, lev, desc, commit_rewards, hide]}} ,{honor_icon_info, cb_fun_json, handle, {key_val, ["徽章基础数据"], id, all}} ,{honor_title_info, cb_fun_json, handle, {list_val, ["徽章点数收集"], all}} ,{type_list, cb_fun_json, handle, {list_val, ["成就数据"], type, [id]}} ,{show_list, cb_fun_json, handle, {list_val, ["徽章基础数据"], is_show, [id]}} ] ,sheet = [ {["成就数据"], [#f_column{type = int, primary = true, name = id, desc = "ID", mod = all} , #f_column{type = bstr, name = name, desc = "名称", mod = all} , #f_column{type = kv, name = type, kv_type = {?MODULE, get, [type]}, desc = "类型", mod = all} , #f_column{type = int, name = lev, min = 1, max = 1000, desc = "等级", mod = all} , #f_column{desc = "前置任务", type = term, name = pre_quest, valid_list = [undefined, all, integer], val = 0, add_list_sign = false, comment = "[10001, 10002]表示需完成其中一个前置任务 \n[0, 10001, 10002]表示需要完成所有的制定任务" } , #f_column{desc = "后置任务", type = term, name = suffix_quest, add_list_sign = false} , #f_column{type = kv, name = val_from_prev, desc = "继承前置任务值", kv_type = bool} , #f_column{type = kv, name = hide, desc = "是否隐藏", kv_type = bool, mod = client} , #f_column{type = int, name = dungeon_id, desc = "关卡限制"} , #f_column{type = rec, name = condition, width = 360, spilt_str = ";", rec = condition, desc = "接受条件限制", fields = [#f_column{type = kv, name = label, kv_type = cond_label, desc = "条件标签"} , #f_column{type = kv, name = op, kv_type = cond_op, desc = "比较运算符"} , #f_column{type = term, name = val, add_list_sign = false, desc = "条件要求值"} ]} , #f_column{desc = "任务要求", type = func, name = progress, width = 360, spilt_str = ";", type_func = {quest_data, progress}, fields = [ #f_column{desc = "服务端事件", type = term, name = label, add_list_sign = false} , #f_column{desc = "客户端标签", type = str, name = cli_label, mod = client} , #f_column{desc = "目标值", type = int, name = target, mod = all} , #f_column{desc = "目标需求值", type = int, name = target_val, mod = all} , #f_column{desc = "服务端附加参数", type = term, name = param, add_list_sign = false} , #f_column{desc = "客户端附加参数", type = term, name = param, add_list_sign = false, mod = client} ], valid_list = [ {atom, integer, integer}, {atom, integer, integer, term}, {atom, atom, integer, integer, term} ], comment = "{事件标签, 目标值, 目标需求值, 附加参数} 或 {服务端事件标签, 服务端事件标签, 目标值, 目标需求值, 附加参数}\n" "事件标签/服务端事件标签/客户端事件标签:英文字符串;\n" "目标值:整数\n" "目标需求值:整数\n" "附加参数需要用“[]”包括,其中每一项需要用“{}”包括:[{monitor}, {type, 1}]\n" "多个任务目标用“;”(分号)分隔,例如: {evt_get_item, 10001, 1, [{monitor}]};{evt_use_item, 10001, 1, [{type, 1}]}", mod = all } , #f_column{desc = "任务扩展参数", type = term, name = extra, add_list_sign = false, comment = "每一项需要用“{}”包括:[{type, 1}, {id, 1}]", def_cli_val = "{}", mod = all} , #f_column{type = bstr, name = desc, desc = "描述", mod = all} , #f_column{desc = "成就奖励", type = term, name = commit_rewards, comment = "奖励格式:{物品基础Id, 数量}, {物品基础Id, 数量}", width = 360, mod = all} , #f_column{type = int, name = end_time, desc = "过期时间(秒)", comment = "0或不填表示永久", mod = server} ] } ,{["徽章基础数据"], [ #f_column{type = int, primary = true, name = id, desc = "ID", mod = all} ,#f_column{type = int, name = type_id, desc = "所在分类", mod = all} ,#f_column{type = bstr, name = type_name, desc = "所在分类名", mod = all} ,#f_column{type = bstr, name = name, desc = "徽章名", mod = all} ,#f_column{type = bstr, name = desc1, desc = "文字描述", mod = all} ,#f_column{type = bstr, name = desc2, desc = "文案描述", mod = all} ,#f_column{type = term, name = need_items, desc = "激活所需物品", mod = all} ,#f_column{type = int, name = point, desc = "收集点数", mod = all} ,#f_column{type = kv, name = is_show, desc = "是否隐藏", kv_type = bool, mod = client} ,#f_column{type = bstr, name = effect_res, desc = "特效资源", mod = client} ,#f_column{type = bstr, name = icon_res, desc = "图标资源", mod = client} ,#f_column{type = kv, kv_type = quality, name = quality, desc = "品质", mod = all} ]} ,{["徽章点数收集"], [ #f_column{type = int, name = min, desc = "点数下限", mod = all} ,#f_column{type = int, name = max, desc = "点数上限", mod = all} ,#f_column{type = bstr, name = name, desc = "评级", mod = all} ,#f_column{type = int, name = res_id, desc = "图标ID", mod = all} ]} ,{["常量配置"],[ #f_column{type = term, name = key, desc = "常量标识", add_list_sign = false,mod = all} ,#f_column{type = term, name = val, desc = "常量值", add_list_sign = false,mod= all} ,#f_column{type = bstr, name = desc, desc = "描述", mod = client} ]} ] }. get(type) -> [ {"默认类型", 0} ,{"PVP", 1} ,{"特殊", 2} ,{"常规战斗", 3} ].