2025-01-04 23:00:19 +08:00

134 lines
3.5 KiB
Lua

GlobalConfigs = GlobalConfigs or {}
GlobalConfigs.DsDoOnce = true;
GlobalConfigs.IsDebug = false;
--- 游戏模式设置
GlobalConfigs.GameModeSetting = {
--- 队伍模式
TeamModeType = CustomEnum.ETeamMode.TurnBase;
--- 队伍所需玩家数
TeamNeedPlayerNum = 4;
--- 队伍数量
TeamNum = 2;
--- 最大玩家数量
MaxPlayerNum = 8;
--- 是否为第一人称
bIsFPP = false;
--- 回合时间
RoundTime = 150;
--- 回合准备时间
RoundReadyTime = 5;
--- 等待玩家加入的时间
MaxWaitPlayerJoinTime = 30;
--- 启用队伍出生点切换
bEnableSwapBornPoint = true;
}
--- 游戏设置
GlobalConfigs.GameSetting = {
--- 启用补人
EnablePlayerJoin = false,
--- 观战所有玩家
SpectateAllPlayer = true;
--- 游戏时长
GameTime = 480;
--- 最大回合数
MaxRound = 7;
--- 玩家重生时间
RespawnTime = 3.;
--- 无敌时间
InvincibleTime = 3.;
--- 助攻最少伤害
AssistDamage = 50;
--- 初始金币
BeginCoin = 2500;
--- MVP玩家额外增加的金币
MVPPlayerAddCoin = 1000;
--- 持有钥匙的时间转为积分倍率
HoldsTheKeyTimeToScore = 1./10;
--- 队伍获胜条件,维持队友的钥匙时长超过此时长
TeamNeedHoldsTheKeyTime = 45;
--- Mechabusm
--- 玩家初始拥有的能量
InitEnergy = 200;
--- 玩家每秒恢复的能量
EnergyRecovery = 3;
--- 玩家完成梯度增加的得分
FullGradientAddScore = 3;
--- 技术分占得分比重
TechnicalScoreProportion = 0.004;
--- 玩家默认选择的近战武器
DefaultMeleeWeapon = 108004;
--- 自动返回大厅的时间
DelayReturnToLobbyTime = 20.;
--- 玩家重生延迟给玩家发放默认武器
DelayTimeAddDefault = 3.;
--- 夺取的能量上限
SeizeEnergyMax = 300;
--- 友伤比例
FriendlyInjuryRatio = 0.;
--- 启用自己的伤害如手雷、火箭筒
bEnableSelfHarm = false;
--- 对自己的伤害比例
SelfHarmInjuryRatio = 1.;
--- 启用掉落伤害
bEnableDropDamage = false;
--- 启用死亡视角
EnableLerpCamera = false;
--- 等待客户端地图加载时间
ClientLoadMapTime = 2.;
--- 出生默认装备
BeBornItems = {{ItemID = 502002, Count = 1}, {ItemID = 503002, Count = 1}, {ItemID = 602004, Count = 1}, {ItemID = 108004, Count = 1}, {ItemID = 601001, Count = 1}, {ItemID = 601005, Count = 1}};
--- 玩家钩锁是否为双钩
bIsTwoHook = false;
--- 准备阶段不可移动
ReadyCanNotMove = true;
--- 地图结束投票时随机滚动选择投票地图是时间
RollMapTime = 4.;
}
function GlobalConfigs.GetAddScore(WeaponID)
return ((WeaponID > 0 and WeaponID < 108001) and 1 or 2)
end
--- 保存信息类型
GlobalConfigs.EArchive = {
--- 游玩次数
NumberOfVisits = 1,
--- 保存的快捷选择武器
SaveSelectWeapon = 2,
}
--- 获取悬赏分对应的金币
---@param RewardScore uint
GlobalConfigs.RewardScoreToGoldCoin = function(RewardScore)
return RewardScore * 100
end
--- 获取悬赏分对应的击杀得分
---@param RewardScore uint
GlobalConfigs.GetPlayerAddScoreFromRewardScore = function(DeadPlayerRewardScore)
return 3 + DeadPlayerRewardScore
end
function GlobalConfigs.RoundFinishAddCoin(Round, IsWinner)
if IsWinner then
return 4000
else
return math.clamp(Round * 500 + 2000, 0, 4000)
end
end
return GlobalConfigs