Files
fc/server/tools/gen_data/cfg/quest_exchange_data.erl
2026-05-23 22:10:14 +08:00

91 lines
4.6 KiB
Erlang

%%%-------------------------------------------------------------------
%%% @author Administrator
%%% @copyright (C) 2023, <COMPANY>
%%% @doc
%%%
%%% @end
%%% Created : 14. 9月 2023 20:12
%%%-------------------------------------------------------------------
-module(quest_exchange_data).
-author("Administrator").
-export([cfg/0]).
-include("data_config.hrl").
-include("common.hrl").
cfg() ->
#data_cfg{
name = quest_exchange_data
,lua_name = quest_exchange_data
,desc = "等级好礼配置数据"
,source = "quest_exchange_data.xml"
,target = "quest_exchange_data.erl"
,inc = ["common.hrl", "quest.hrl", "gain.hrl", "quest_exchange.hrl"]
,callback = [
{get_all_award, cb_fun, handle, {tuple_list, ["道具兑换"], id}}
,{get_award_info, cb_fun, handle, {get_tuple, ["道具兑换"], id, all}}
,{get_quest, cb_fun, handle, {get_record, ["任务"], id, exchange_grow_data, [id, progress]}}
,{{get_point, 0}, cb_fun, handle, {get_tuple, ["任务"], id, point}}
,{get_quest_list, cb_fun, handle, {record_list, ["任务"], exchange_grow_data, [id, progress]}}
,{const, cb_fun, handle, {get_fun, ["常量配置"], "const(~ts) -> ~ts; %% ~ts", [key, val, desc]}}
]
,callback_cli = [
]
,callback_json = [
{constant, cb_fun_json, handle, {key_val, [ "常量配置"], [key], all}},
{explain, cb_fun_json, handle, {key_val, [ "玩法说明"], [id], all}},
{item_exchange, cb_fun_json, handle, {key_val, [ "道具兑换"], [id], all}},
{quest_list, cb_fun_json, handle, {key_val, [ "任务"], [id], all}}
]
,sheet = [
{["任务"], [
#f_column{type = int, name = id, desc = "任务id", mod = all}
,#f_column{type = bstr, name = desc, desc = "任务描述", mod = client}
, #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{type = int, name = open_lev, desc = "开启等级", mod = all}
,#f_column{type = int, name = point, desc = "增加点数", mod = all}
,#f_column{type = int, name = source_id, desc = "跳转id", mod = client}
]}
,{["道具兑换"],
[
#f_column{desc = "物品id", name = id, type = int, mod = all}
, #f_column{desc = "所需点数", name = point, type = int, mod = all}
, #f_column{desc = "物品名称", name = name, type = bstr, mod = all}
, #f_column{desc = "物品内容", name = reward, type = term, add_list_sign = false, width = 300, mod = all}
, #f_column{desc = "总限购数", name = num, type = int, mod = server}
]
}
, {["常量配置"],
[#f_column{desc = "常量名", type = atom, name = key}
, #f_column{desc = "常量值", type = term, name = val, add_list_sign = false}
, #f_column{desc = "描述", type = bstr, name = desc, mod = desc}
]
}
,{["玩法说明"], [
#f_column{type = int, name = id, desc = "id", mod = client}
,#f_column{type = bstr, name = name, desc = "标签名", mod = client}
,#f_column{type = bstr, name = content, desc = "内容", mod = client}
]}
]
}.