源战役
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

90 lines
3.9 KiB

%%%-------------------------------------------------------------------
%%% @author liushl
%%% @doc
%%% 本服公会战
%%% @end
%%%-------------------------------------------------------------------
%% 公会战场景
-define(GUILD_WAR_SCENE, 4100).
%% 公会战房间号
-define(GUILD_WAR_ROOM, 0).
%% 公会战循环加积分-循环时间
-define(GUILD_WAR_CYCLE_ADD_SCORE_TIME, data_guild_war:get_guild_war_kv(heart_beat_time)).
%% 公会战循环加积分-积分数
-define(GUILD_WAR_CYCLE_ADD_SCORE, data_guild_war:get_guild_war_kv(heart_beat_score)).
%% 高品质物资id
-define(GUILD_WAR_HIGH_QUALITY_MATERIALS, data_guild_war:get_guild_war_kv(high_quality_materials_id)).
%% 低品质物资id
-define(GUILD_WAR_LOW_QUALITY_MATERIALS, data_guild_war:get_guild_war_kv(low_quality_materials_id)).
%% 公会战循环重生BOSS-循环时间
-define(GUILD_WAR_CYCLE_BOSS_REBORN_TIME, data_guild_war:get_guild_war_kv(refresh_boss)).
%% 公会战循环重生BOSS-怪物id
-define(GUILD_WAR_CYCLE_BOSS_ID, data_guild_war:get_guild_war_kv(boss_id)).
%% 公会战循环重生BOSS-怪物坐标
-define(GUILD_WAR_CYCLE_BOSS_REBORN_XY, data_guild_war:get_guild_war_kv(boss_position)).
%% 公会战BOSS-首刀积分
-define(GUILD_WAR_BOSS_FIRST_ATTACK_SCORE, data_guild_war:get_guild_war_kv(first_hit_score)).
%% 公会战BOSS-最后一刀积分
-define(GUILD_WAR_BOSS_LAST_ATTACK_SCORE, data_guild_war:get_guild_war_kv(last_hit_score)).
%% 公会战BOSS-每X刀加Y分
-define(GUILD_WAR_BOSS_NORMAL_ATTACK_SCORE, data_guild_war:get_guild_war_kv(each_hit_score)).
%% 公会战杀人基础积分
-define(GUILD_WAR_KILL_BASE_SCORE, data_guild_war:get_guild_war_kv(kill_base_score)).
%% 公会战采集提交坐标
-define(GUILD_WAR_COLLECT_COMMIT_XY, data_guild_war:get_guild_war_kv(send_position)).
%% 公会战采集提交积分
-define(GUILD_WAR_COLLECT_COMMIT_SCORE, data_guild_war:get_guild_war_kv(send_score)).
%% 公会战结算-第一名会长额外奖励
-define(GUILD_WAR_SETTLEMENT_TOP_GUILD_REWARD, data_guild_war:get_guild_war_kv(star_org_award)).
%% 积分时间广播CD
-define(GUILD_WAR_BROADCAST_CD, 1).
%% 技能CD
-define(GUILD_WAR_SKILL_CD, data_guild_war:get_guild_war_kv(skill_cd)).
%% 公会战总体数据
-record(guild_war, {
begin_time = 0
, end_time = 0 %% 活动结束时间:为0表示活动未开
, guild_war_pool = [] %% #guild_war_pool{}
, role_grade = dict:new() %% 玩家成绩 #guild_war_rank{}
, guild_grade = [] %% 公会成绩 [#guild_war_rank{}]
, ref_cycle_add_score %% 每经过10s给场景内所有玩家发5积分
, boss_reborn_time = [] %% 读取配置的时间
, ref_boss_reborn %% boss重生定时器
, pull_host_pid %% 拉托管的进程
, broadcast_event_time = 0 %% 积分广播时间:2秒CD
}).
%% 公会战分线,每一个场景分线是一个房间
-record(guild_war_pool, {
pool_id = 0 %% 分线id
, boss_alive = false %% BOSS状态
, role_num = 0 %% 玩家人数
}).
%% 公会战积分数据-玩家
-record(guild_war_role, {
role_id = 0 %% 玩家id
, guild_name = <<>> %% 公会名字
, guild_id = 0 %% 公会id
, guild_flag = 0
, picture = undefined
, score = 0 %% 积分
, time = 0 %% 刷新时间
, continue_kill = 0 %% 当前连杀数
, max_kill = 0 %% 击杀数
, kill_rank = 0 %% 击杀排名
, kill_time = 0 %% 击杀更新时间
}).
%% 公会战积分数据-公会
-record(guild_war_guild, {
guild_id = 0 %% 公会id
, guild_name = <<>> %% 公会名字
, guild_flag = 0
, guild_power = 0
, chief_id = 0
, chief_name = <<>>
, chief_power = 0
, score = 0 %% 积分
, rank = 0 %% 排名
, time = 0 %% 刷新时间
}).