%%%------------------------------------ %%% @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 ">>).