%%-----------------------------------------------------------------------------
|
|
%% @Module : limit_goal.hrl
|
|
%% @Author : WJQ
|
|
%% @Created : 2019-03-29
|
|
%% @Description: 限时目标头文件
|
|
%%-----------------------------------------------------------------------------
|
|
|
|
%% 活动开启等级
|
|
-define(LIMIT_GOAL_LV, 120).
|
|
|
|
%% 激活目标类型
|
|
-define(GOAL_ID_ONE, 1). %% 第一轮限时目标
|
|
-define(GOAL_ID_TWO, 2). %% 第二轮限时目标
|
|
|
|
%% 任务完成状态
|
|
-define(UNFINISH, 0). %% 未完成
|
|
-define(FINISH, 1). %% 已完成未领取
|
|
-define(HAS_RECEIVE, 2). %% 已领取
|
|
|
|
%% 数据库写入状态
|
|
-define(WSTATUS_SUCCESS, 1). %% 写入成功
|
|
-define(WSTATUS_WAIT, 2). %% 待写入
|
|
|
|
-define(SAVE_DB_CD, 10). %% 写入数据库CD时间(秒)
|
|
|
|
%% 目标配置
|
|
-record(limit_goal_main, {
|
|
goal_id = 0, %% 目标id
|
|
model_name = "", %% 展示模型名称
|
|
model_id = 0, %% 展示模型id
|
|
jump_cfg = [], %% 跳转配置
|
|
skill_id = 0, %% 展示技能id
|
|
skill_desc = "", %% 展示技能描述
|
|
precondition = [], %% 解锁条件
|
|
activate = [], %% 激活条件
|
|
countdown = 0 %% 倒计时
|
|
}).
|
|
|
|
%% 任务配置
|
|
-record(limit_goal_task, {
|
|
goal_id = 0, %% 目标id
|
|
task_id = 0, %% 任务id
|
|
task_desc = "", %% 任务描述
|
|
finish_condition = [], %% 完成条件
|
|
reward = [], %% 任务奖励
|
|
click_jump = [] %% 点击前往配置
|
|
}).
|
|
|
|
%% 星魂配置
|
|
-record(limit_goal_soul, {
|
|
goal_id = 0, %% 目标id
|
|
soul_id = 0, %% 星魂id
|
|
soul_name = "", %% 星魂名字
|
|
need_finish = 0, %% 所需完成任务数量
|
|
attr = [] %% 星魂属性
|
|
}).
|
|
|
|
%% 目标完成状态
|
|
-record(main_status, {
|
|
goal_id = 0, %% 目标id
|
|
status = 0, %% 完成状态 0:未完成 1:已完成未领取 2:已领取
|
|
task_list = [], %% 本目标任务完成列表 [#task_status{},...]
|
|
open_time = 0 %% 目标开放时间
|
|
}).
|
|
|
|
%% 任务完成状态
|
|
-record(task_status, {
|
|
goal_id = 0, %% 目标id
|
|
task_id = 0, %% 任务id
|
|
progress = 0, %% 当前进度
|
|
status = 0, %% 完成状态 0:未完成 1:已完成未领取 2:已领取
|
|
extra = [], %% 额外数据
|
|
write_time = 0, %% 最近一次更新写入数据库的时间
|
|
write_status = 0 %% 写入状态 1:写入成功 2:待写入
|
|
}).
|
|
|
|
%% 星魂状态
|
|
-record(limit_goal_soul_status, {
|
|
sum_attr = 0, %% 总属性
|
|
soul_list = [] %% 星魂列表 #limit_goal_soul_list{}
|
|
}).
|
|
|
|
%% 星魂列表
|
|
-record(limit_goal_soul_list, {
|
|
goal_id = 0, %% 目标id
|
|
soul_attr = [] %% 星魂属性列表
|
|
}).
|
|
|
|
%% 星魂属性
|
|
-record(limit_goal_soul_attr, {
|
|
soul_id = 0, %% 星魂id
|
|
attr = [] %% 星魂属性
|
|
}).
|
|
|
|
%% ========================================================== SQL ==========================================================
|
|
-define(SELECT_LIMIT_GOAL_MAIN, <<"SELECT `goal_id`, `status`, `open_time` FROM `limit_goal_main` WHERE `role_id` = ~p">>).
|
|
-define(SELECT_LIMIT_GOAL_TASK, <<"SELECT `goal_id`, `task_id`, `progress`, `status`, `extra` FROM `limit_goal_task` WHERE `role_id` = ~p">>).
|
|
|
|
-define(INSERT_LIMIT_GOAL_TASK, <<"INSERT INTO `limit_goal_task` (`role_id`, `goal_id`, `task_id`, `progress`, `status`, `extra`) VALUES (~p, ~p, ~p, ~p, ~p, '~s')">>).
|
|
-define(REPLACE_LIMIT_GOAL_MAIN, <<"REPLACE INTO `limit_goal_main` (`role_id`, `goal_id`, `status`, `open_time`) VALUES (~p, ~p, ~p, ~p)">>).
|
|
|
|
-define(UPDATE_LIMIT_GOAL_TASK, <<"UPDATE `limit_goal_task` SET `progress` = ~p, `status` = ~p, `extra` = '~s' WHERE `role_id` = ~p AND `goal_id` = ~p AND `task_id` = ~p">>).
|
|
-define(UPDATE_LIMIT_GOAL_TASK_STATUS, <<"UPDATE `limit_goal_task` SET `status` = ~p WHERE `role_id` = ~p AND `goal_id` = ~p AND `task_id` = ~p">>).
|