Files

78 lines
5.5 KiB
Erlang
Raw Permalink Normal View History

2026-05-23 22:10:14 +08:00
%%----------------------------------------------------
%% 掉落表
%% @author whjing2011@gmail.com
%%----------------------------------------------------
-module(drop_data).
-export([
cfg/0
,get/1
]).
-include("data_config.hrl").
cfg() ->
#data_cfg{
name = drop_data
,desc = "掉落数据"
,source = "drop_data.xml"
,target = "drop_data.erl"
,inc = ["common.hrl", "drop.hrl"]
,callback = [
{get, cb_fun, handle, {get_record, ["掉落规则"], drop_id, drop_total, all}}
,{best_list, cb_fun, handle, {record_type, ["贵重掉落"], drop_id, drop_son, all}}
,{common_list, cb_fun, handle, {record_type, ["普通掉落"], drop_id, drop_son, all}}
,{drop_group, cb_fun, handle, {record_type, ["掉落组"], group, drop_group, all}}
]
,sheet = [
{["掉落规则"], [
#f_column{type = int, name = drop_id, desc = "掉落ID", primary = true}
,#f_column{type = str, name = name, desc = "名称"}
,#f_column{type = kv, name = allot, desc = "分配规则", kv_type = {?MODULE, get, [type]}}
,#f_column{type = int, name = super_r, desc = "极品触发率", comment = "万分制"}
,#f_column{type = int, name = first_r, desc = "一次触发率", comment = "万分制"}
,#f_column{type = int, name = second_r, desc = "二次触发率", comment = "万分制"}
,#f_column{type = int, name = third_r, desc = "三次触发率", comment = "万分制"}
,#f_column{type = str, name = notice_msg, width = 200, desc = "公告"}
]}
,{["贵重掉落", "普通掉落"], [
#f_column{type = int, name = drop_id, desc = "掉落ID"}
,#f_column{type = str, name = name, desc = "名称"}
,#f_column{type = int, name = item_bid, desc = "物品ID", valid_list = [item]}
,#f_column{type = str, name = item_name, width = 100, desc = "物品名", mod = desc}
,#f_column{type = term, name = item_num, desc = "物品数量", add_list_sign = false}
,#f_column{type = kv, name = bind, kv_type = bool, desc = "是否绑定"}
,#f_column{type = int, name = rand, desc = "概率因子"}
,#f_column{type = kv, name = is_notice, kv_type = bool, desc = "是否公告"}
,#f_column{type = kv, name = career, desc = "职业掉落", kv_type = career}
,#f_column{type = term, name = lev, add_list_sign=false, desc = "等级限制", valid_list = [{integer, integer}]}
,#f_column{type = term, name = world_lev, add_list_sign=false, desc = "世界等级限制", valid_list = [{integer, integer}]}
,#f_column{type = term, name = self_time, add_list_sign=false, desc = "个人时间限制", comment = "{秒,触发次数}\n例如:个人100秒内最多出现2次\n{100,2}", valid_list = [{integer, integer}, {atom, integer}]}
,#f_column{type = term, name = srv_time, add_list_sign=false, desc = "服务器时间限制", comment = "{秒,触发次数}\n例如:服务器100秒内最多出现10次\n{100,10}", valid_list = [{integer, integer}]}
,#f_column{type = term, name = self_count, add_list_sign=false, desc = "个人次数限制", comment = "{次数,触发次数}\n例如:个人20次内最多出现3次\n{20,3}", valid_list = [{integer, integer}]}
,#f_column{type = term, name = srv_count, add_list_sign=false, desc = "服务器次数限制", comment = "{次数,触发次数}\n例如:服务器100次内最多出现10次\n{100,10}", valid_list = [{integer, integer}]}
,#f_column{type = term, name = self_down, add_list_sign=false, desc = "个人下限保底", comment = "多少次以内不出\n{type,次数n}\ntype\n0:出现后重置\n1:出现后,或24小时后重置\n2:出现后,或48小时后重置\n3:出现后,或72小", valid_list = [{integer, integer}]}
,#f_column{type = term, name = self_up, add_list_sign=false, desc = "个人上限保底", comment = "多少次之后必出\n{type,次数n}\ntype\n0:出现后重置\n1:出现后,或24小时后重置\n2:出现后,或48小时后重置\n3:出现后,或72小", valid_list = [{integer, integer}]}
]
}
,{["掉落组"], [
#f_column{type = int, name = group, desc = "掉落组ID"}
,#f_column{type = int, name = item_bid, desc = "物品ID"}
,#f_column{type = bstr, name = item_name, desc = "物品名称"}
,#f_column{type = term, name = item_num, desc = "物品数量", add_list_sign = false}
,#f_column{type = kv, name = bind, desc = "是否绑定", kv_type = bool}
,#f_column{type = int, name = rand, desc = "权重"}
,#f_column{type = kv, name = career, desc = "职业", kv_type = career}
,#f_column{type = term, add_list_sign=false, name = lev, desc = "等级限制", valid_list = [{integer, integer}]}
,#f_column{type = bstr, name = desc, desc = "备注", mod = desc}
]}
]
}.
get(type) ->
[
{"各人独自掉落", 1},
{"随机一队员", 2},
{"全队复制", 3},
{"只掉队长", 4}
].