%% -----------------------------
|
|
%% module :guild_collect.hrl
|
|
%% desc :社团午间菜鸡
|
|
%% author :hh
|
|
%% time :20/02/26
|
|
%% -----------------------------
|
|
|
|
%% 社团午间采集-裂缝配置
|
|
-record(base_guild_collect_mon, {
|
|
mon_id = 0, %% 封印怪
|
|
min_world_lv = 0, %% 世界等级下限
|
|
max_world_lv = 0 %% 世界等级上限
|
|
}).
|
|
|
|
|
|
%% 社团午间采集-怪物奖励配置
|
|
-record(base_guild_collect_mon_rewards, {
|
|
lv_min = 0, %% 玩家等级
|
|
lv_max = 0,
|
|
rewwards = [], %% 召唤击杀奖励
|
|
help_rewards = [] %% 击杀协助奖励
|
|
}).
|
|
|
|
%% 社团采集协助数据
|
|
-record(guild_collect_support_info, {
|
|
guild_id = 0,
|
|
support_maps = #{}, %% sid => #support_instance{}
|
|
role_maps = #{} %% role_id => {[发起协助id], 前往协助id}
|
|
}).
|
|
|
|
%% 管理进程
|
|
-record(guild_collect_state, {
|
|
status = 0, %% 当前状态
|
|
start_time = 0, %% 当前状态开始时间
|
|
end_time = 0, %% 当前状态结束时间
|
|
season = 0, %% 场次
|
|
guild_scene = 0, %% 本次场景
|
|
guild_list = [], %% 帮派列表
|
|
collect_status = #{}, %%
|
|
wave = 0, %% 每场刷怪波次
|
|
index = 1, %% 怪物序号
|
|
ref = undefined, %% 刷怪定时器
|
|
guild_mon_data = [], %% 社团怪物列表
|
|
support_hurt_data = [], %% 协助者信息 [{被协助者, [{协助者, hurt}]}]
|
|
support_mon_data = [] %% 协助者怪物信息
|
|
% guild_support_info = [] %% [#guild_collect_support_info{}]
|
|
}).
|
|
|
|
|
|
%% 个人信息
|
|
-record(role_guild_collect, {
|
|
last_collect_time = 0, %% 最近一次菜鸡时间
|
|
last_enter_time = 0, %% 最近一次参与活动时间
|
|
collect_count = 0 %% 本场活动采集次数
|
|
}).
|
|
|
|
%% 一个协助的数据
|
|
-record (support_instance, {
|
|
sid = 0, %% 协助唯一id
|
|
req_role = 0, %% 请求协助者
|
|
boss_id = 0, %% 需要协助的怪物唯一id
|
|
res_roles = [], %% 响应协助者
|
|
create_time = 0 %% 创建时间
|
|
}).
|
|
|
|
-define(GUILD_COLLECT_CLOSED, 0).
|
|
-define(GUILD_COLLECT_OPEN, 1).
|
|
|
|
%% collect_status主键
|
|
-define(GUILD_INIT_REF, guild_init_ref).
|
|
-define(GUILD_COLLECT_ACT_REF, guild_collect_act_ref).
|
|
-define(GUILD_INVADE_MON_HURT, guild_invade_mon_hurt).
|
|
|
|
|
|
%% 计数器次数主键
|
|
-define(GUILD_COLLECT_1, 1). %% 活动参与次数
|
|
-define(GUILD_COLLECT_2, 2). %% 个人封印次数
|
|
|
|
%% 活动结束清除
|
|
-define(GUILD_COLLECT_3, 3). %% 单场采集次数
|
|
-define(GUILD_COLLECT_4, 4). %% 单场协助次数
|
|
|
|
-define(WEIGHT_MAX, 10000).
|
|
|
|
-define(GUILD_COLLECT_INVADE_MON, guild_collect_invade_mon).
|
|
|
|
-define(GUILD_COLLECT_GM, gm). %% gm开启
|
|
-define(GUILD_COLLECT_ACT, act). %% 活动日历开启
|
|
|
|
-define(INIT_MON_DELAY, 10000).
|
|
|
|
%% 社团采集协助数据ets主键
|
|
-define(ETS_GUILD_COLLECT_ASSIST, guild_collect_assist).
|
|
|
|
%% 数据库
|
|
-define(SELECT_COLLECT_INFO, <<"SELECT last_collect_time, last_enter_time, collect_count FROM role_guild_collect WHERE role_id = ~p">>).
|
|
-define(REPLACE_COLLECT_INFO, <<"REPLACE INTO role_guild_collect SET role_id = ~p, last_collect_time = ~p, last_enter_time = ~p, collect_count = ~p">>).
|