%%%------------------------------------
|
|
%%% @Module : rush_rank.hrl
|
|
%%% @Author : hejiahua
|
|
%%% @Created : 2015-12-18
|
|
%%% @Description: 开服冲榜
|
|
%%%------------------------------------
|
|
|
|
-define(OFFSET_TYPE,20). %%战力和对应进阶的类型偏差
|
|
|
|
%%(冲榜)
|
|
%% --------------------#common_rank_role.rank_type 类型---------------------
|
|
-define(RANK_TYPE_RUSH_HORSE, 1). %% 坐骑
|
|
-define(RANK_TYPE_RUSH_WING, 2). %% 炫翼
|
|
-define(RANK_TYPE_RUSH_PEARL, 3). %% 宝具
|
|
-define(RANK_TYPE_RUSH_WEAPON, 4). %% 武器
|
|
|
|
-define(RANK_TYPE_RUSH_JARVIS, 5). %% AI娘
|
|
-define(RANK_TYPE_RUSH_GUN, 6). %% 磁炮
|
|
-define(RANK_TYPE_RUSH_CLOUD, 7). %% 星翼
|
|
-define(RANK_TYPE_RUSH_ARMOUR, 8). %% 幻甲
|
|
|
|
-define(RANK_TYPE_RUSH_COMBAT, 9). %% 战力
|
|
|
|
-define(RANK_TYPE_RUSH_GRADE_HORSE, 21). %% 坐骑进阶
|
|
-define(RANK_TYPE_RUSH_GRADE_WING, 22). %% 炫翼进阶
|
|
-define(RANK_TYPE_RUSH_GRADE_PEARL, 23). %% 宝具进阶
|
|
-define(RANK_TYPE_RUSH_GRADE_WEAPON, 24). %% 武器进阶
|
|
|
|
-define(RANK_TYPE_RUSH_GRADE_JARVIS, 25). %% AI娘进阶
|
|
-define(RANK_TYPE_RUSH_GRADE_GUN, 26). %% 磁炮进阶
|
|
-define(RANK_TYPE_RUSH_GRADE_CLOUD, 27). %% 星翼进阶
|
|
-define(RANK_TYPE_RUSH_GRADE_ARMOUR, 28). %% 幻甲进阶
|
|
|
|
-define(RANK_TYPE_RUSH_WARSOUL, 31). %% 战魂战力
|
|
-define(RANK_TYPE_RUSH_RED_EQUIP, 32). %% 红装战力
|
|
|
|
-define(RANK_TYPE_LIST, [
|
|
?RANK_TYPE_RUSH_HORSE
|
|
,?RANK_TYPE_RUSH_WING
|
|
,?RANK_TYPE_RUSH_WEAPON
|
|
,?RANK_TYPE_RUSH_JARVIS
|
|
,?RANK_TYPE_RUSH_PEARL
|
|
,?RANK_TYPE_RUSH_GUN
|
|
,?RANK_TYPE_RUSH_CLOUD
|
|
,?RANK_TYPE_RUSH_ARMOUR
|
|
,?RANK_TYPE_RUSH_COMBAT
|
|
,?RANK_TYPE_RUSH_GRADE_HORSE
|
|
,?RANK_TYPE_RUSH_GRADE_WING
|
|
,?RANK_TYPE_RUSH_GRADE_WEAPON
|
|
,?RANK_TYPE_RUSH_GRADE_JARVIS
|
|
,?RANK_TYPE_RUSH_GRADE_PEARL
|
|
,?RANK_TYPE_RUSH_GRADE_GUN
|
|
,?RANK_TYPE_RUSH_GRADE_CLOUD
|
|
,?RANK_TYPE_RUSH_GRADE_ARMOUR
|
|
,?RANK_TYPE_RUSH_WARSOUL
|
|
,?RANK_TYPE_RUSH_RED_EQUIP
|
|
]).
|
|
|
|
%%进阶榜单列表
|
|
-define(RANK_TYPE_FOSTER_GRADE_LIST, [
|
|
?RANK_TYPE_RUSH_GRADE_HORSE
|
|
,?RANK_TYPE_RUSH_GRADE_WING
|
|
,?RANK_TYPE_RUSH_GRADE_WEAPON
|
|
,?RANK_TYPE_RUSH_GRADE_JARVIS
|
|
,?RANK_TYPE_RUSH_GRADE_PEARL
|
|
,?RANK_TYPE_RUSH_GRADE_GUN
|
|
,?RANK_TYPE_RUSH_GRADE_CLOUD
|
|
,?RANK_TYPE_RUSH_GRADE_ARMOUR
|
|
]).
|
|
|
|
%%战力榜单列表
|
|
-define(RANK_TYPE_COMBAT_GRADE_LIST, [
|
|
?RANK_TYPE_RUSH_WARSOUL
|
|
,?RANK_TYPE_RUSH_RED_EQUIP
|
|
,?RANK_TYPE_RUSH_COMBAT
|
|
]).
|
|
|
|
|
|
-define(NOT_REWARD, 0). %% 不可领状态
|
|
-define(HAVE_REWARD, 1). %% 可领奖励状态
|
|
-define(FINISH, 2). %% 完成状态
|
|
|
|
|
|
-define(REFRESH_LV_EXP_RANK_TIME, 10 * 60). %% 等级榜刷新时间
|
|
|
|
|
|
%% 冲榜活动配置
|
|
-record(base_rush_rank, {
|
|
id = 0, % 活动id
|
|
name = "", % 活动名称
|
|
start_day = 0, % 开服第几天开始
|
|
clear_day = 0, % 开服第几天结算
|
|
max_len = 0, % 榜单长度
|
|
limit = [], % 上榜阈值
|
|
figure_id = [] % 形象列表
|
|
}).
|
|
|
|
%% 冲榜排行奖励配置
|
|
-record(base_rush_rank_reward, {
|
|
id = 0, % 活动id
|
|
reward_id = 0, % 奖励Id
|
|
rank_min = 0, % 排名上限
|
|
rank_max = 0, % 排名下限
|
|
rank_limit = [], % 排名限制
|
|
reward = [], % 奖励
|
|
about = "" % 描述
|
|
}).
|
|
|
|
%% 冲榜目标奖励配置
|
|
-record(base_rush_goal_reward, {
|
|
id = 0, % 活动id
|
|
reward_id = 0, % 奖励Id
|
|
goal_value = [], % 目标值
|
|
reward = [], % 奖励
|
|
about = "" % 描述
|
|
}).
|
|
|
|
%% 冲榜榜单的角色信息
|
|
-record(rush_rank_role, {
|
|
role_key = undefined, % 玩家的唯一键 {RankType,id}
|
|
rank_type = 0, % 榜单类型
|
|
sub_type = 0,
|
|
role_id = 0, % 角色Id
|
|
value = 0, % 值
|
|
value2 = 0, %
|
|
value3 = 0, %
|
|
value4 = 0,
|
|
value5 = 0,
|
|
time = 0, % 时间
|
|
rank = 0 % 名次
|
|
}).
|
|
|
|
%% 通用榜单的进程状态
|
|
-record(rush_rank_state, {
|
|
rank_maps = maps:new(), % Key:{RankType,SubType} Value:[#rush_rank_role{}|...]
|
|
rank_limit = maps:new(), % {RankType, SubType} => Limit
|
|
goal_maps = maps:new() %% 目标奖励信息 {RankType, SubType, RoleId} => [{GoalId, RewardState}]
|
|
}).
|
|
|
|
-record(status_rush_rank, {
|
|
lv_rank_ref = undefined, %% 等级榜刷新定时器
|
|
lv_rank_cl_ref = undefined %% 等级榜结算刷新定时器
|
|
}).
|
|
|
|
|
|
-define(sql_rush_rank_role_select, <<"
|
|
SELECT
|
|
rank_type, sub_type, player_id, value, value2, value3,value4,value5, time
|
|
FROM rush_rank_role">>).
|
|
|
|
-define(sql_rush_rank_goal_select, <<"
|
|
SELECT
|
|
rank_type, sub_type, player_id, goal_id, state
|
|
FROM rush_rank_goal">>).
|
|
|
|
-define(sql_rush_rank_role_save, <<"
|
|
replace into rush_rank_role(
|
|
rank_type, sub_type, player_id, value, value2, value3,value4,value5, time
|
|
) values(~p, ~p, ~p, ~p, ~p, ~p, ~p,~p,~p)">>).
|
|
|
|
-define(sql_rush_rank_goal_save, <<"
|
|
replace into rush_rank_goal(
|
|
rank_type, sub_type, player_id, goal_id, state
|
|
) values(~p, ~p, ~p, ~p, ~p)">>).
|
|
|
|
-define(sql_rush_rank_role_delete_by_role_id, <<"delete from rush_rank_role
|
|
where rank_type = ~p and sub_type = ~p and player_id = ~p">>).
|
|
|
|
-define(sql_rush_rank_role_delete_by_value, <<"delete from rush_rank_role
|
|
where rank_type = ~p and sub_type = ~p and value < ~p ">>).
|