introduce paladinRangeAttackDamageIncreasePercent and knightCloseAttackDamageIncreasePercent in config.lua

This commit is contained in:
ErikasKontenis 2020-10-12 22:16:50 +03:00
parent 1d16e69dee
commit fca52ab202
5 changed files with 22 additions and 6 deletions

View File

@ -1,3 +1,7 @@
-- Custom
knightCloseAttackDamageIncreasePercent = 50
paladinRangeAttackDamageIncreasePercent = 40
-- Combat settings
-- NOTE: valid values for worldType are: "pvp", "no-pvp" and "pvp-enforced"
worldType = "pvp"

View File

@ -896,9 +896,12 @@ bool Combat::closeAttack(Creature* attacker, Creature* target, fightMode_t fight
combatDamage.value = totalDamage;
combatDamage.origin = ORIGIN_MELEE;
int32_t knightCloseAttackDamageIncreasePercent = g_config.getNumber(ConfigManager::KNIGHT_CLOSE_ATTACK_DAMAGE_INCREASE_PERCENT);
if (knightCloseAttackDamageIncreasePercent != -1) {
if (Player* player = attacker->getPlayer()) {
if (player->getVocationId() == 4 || player->getVocationId() == 8) {
combatDamage.value += combatDamage.value * 0.20;
combatDamage.value += combatDamage.value * knightCloseAttackDamageIncreasePercent / 100;
}
}
}
@ -1018,9 +1021,12 @@ bool Combat::rangeAttack(Creature* attacker, Creature* target, fightMode_t fight
combatDamage.value = Combat::getTotalDamage(skillValue, attackValue, fightMode);
combatDamage.origin = ORIGIN_RANGED;
int32_t paladinRangeAttackDamageIncreasePercent = g_config.getNumber(ConfigManager::PALADIN_RANGE_ATTACK_DAMAGE_INCREASE_PERCENT);
if (paladinRangeAttackDamageIncreasePercent != -1) {
if (Player* player = attacker->getPlayer()) {
if (player->getVocationId() == 3 || player->getVocationId() == 7) {
combatDamage.value += combatDamage.value * 0.15;
combatDamage.value += combatDamage.value * paladinRangeAttackDamageIncreasePercent / 100;
}
}
}

View File

@ -108,6 +108,8 @@ bool ConfigManager::load()
integer[KICK_AFTER_MINUTES] = getGlobalNumber(L, "kickIdlePlayerAfterMinutes", 15);
integer[PROTECTION_LEVEL] = getGlobalNumber(L, "protectionLevel", 1);
integer[DEATH_LOSE_PERCENT] = getGlobalNumber(L, "deathLosePercent", -1);
integer[KNIGHT_CLOSE_ATTACK_DAMAGE_INCREASE_PERCENT] = getGlobalNumber(L, "knightCloseAttackDamageIncreasePercent", -1);
integer[PALADIN_RANGE_ATTACK_DAMAGE_INCREASE_PERCENT] = getGlobalNumber(L, "paladinRangeAttackDamageIncreasePercent", -1);
integer[STATUSQUERY_TIMEOUT] = getGlobalNumber(L, "statusTimeout", 5000);
integer[WHITE_SKULL_TIME] = getGlobalNumber(L, "whiteSkullTime", 15 * 60);
integer[RED_SKULL_TIME] = getGlobalNumber(L, "redSkullTime", 30 * 24 * 60 * 60);

View File

@ -94,6 +94,8 @@ class ConfigManager
KICK_AFTER_MINUTES,
PROTECTION_LEVEL,
DEATH_LOSE_PERCENT,
KNIGHT_CLOSE_ATTACK_DAMAGE_INCREASE_PERCENT,
PALADIN_RANGE_ATTACK_DAMAGE_INCREASE_PERCENT,
STATUSQUERY_TIMEOUT,
WHITE_SKULL_TIME,
RED_SKULL_TIME,

View File

@ -1662,6 +1662,8 @@ void LuaScriptInterface::registerFunctions()
registerEnumIn("configKeys", ConfigManager::KICK_AFTER_MINUTES)
registerEnumIn("configKeys", ConfigManager::PROTECTION_LEVEL)
registerEnumIn("configKeys", ConfigManager::DEATH_LOSE_PERCENT)
registerEnumIn("configKeys", ConfigManager::KNIGHT_CLOSE_ATTACK_DAMAGE_INCREASE_PERCENT)
registerEnumIn("configKeys", ConfigManager::PALADIN_RANGE_ATTACK_DAMAGE_INCREASE_PERCENT)
registerEnumIn("configKeys", ConfigManager::STATUSQUERY_TIMEOUT)
registerEnumIn("configKeys", ConfigManager::WHITE_SKULL_TIME)
registerEnumIn("configKeys", ConfigManager::RED_SKULL_TIME)