Skip to content

Instantly share code, notes, and snippets.

@ranisalt
Last active April 1, 2020 14:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save ranisalt/8d638c3c54551c6561ce to your computer and use it in GitHub Desktop.
Save ranisalt/8d638c3c54551c6561ce to your computer and use it in GitHub Desktop.
Fix offline traning rate
From 9063dccc1a8a730c6ffce6e78567e191e217be6e Mon Sep 17 00:00:00 2001
From: Ranieri Althoff <ranisalt@gmail.com>
Date: Mon, 1 Jun 2015 02:52:35 -0300
Subject: [PATCH] Fix offline traning ignoring skill/magic rate
---
src/player.cpp | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/player.cpp b/src/player.cpp
index 82425d7..0b3c543 100644
--- a/src/player.cpp
+++ b/src/player.cpp
@@ -1236,20 +1236,20 @@ void Player::onCreatureAppear(Creature* creature, bool isLogin)
bool sendUpdateSkills = false;
if (offlineTrainingSkill == SKILL_CLUB || offlineTrainingSkill == SKILL_SWORD || offlineTrainingSkill == SKILL_AXE) {
float modifier = topVocation->getAttackSpeed() / 1000.f;
- sendUpdateSkills = addOfflineTrainingTries(static_cast<skills_t>(offlineTrainingSkill), (trainingTime / modifier) / 2);
+ sendUpdateSkills = addOfflineTrainingTries(static_cast<skills_t>(offlineTrainingSkill), g_config.getNumber(ConfigManager::RATE_SKILL) * (trainingTime / modifier) / 2);
} else if (offlineTrainingSkill == SKILL_DISTANCE) {
float modifier = topVocation->getAttackSpeed() / 1000.f;
- sendUpdateSkills = addOfflineTrainingTries(static_cast<skills_t>(offlineTrainingSkill), (trainingTime / modifier) / 4);
+ sendUpdateSkills = addOfflineTrainingTries(static_cast<skills_t>(offlineTrainingSkill), g_config.getNumber(ConfigManager::RATE_SKILL) * (trainingTime / modifier) / 4);
} else if (offlineTrainingSkill == SKILL_MAGLEVEL) {
int32_t gainTicks = topVocation->getManaGainTicks() * 2;
if (gainTicks == 0) {
gainTicks = 1;
}
- addOfflineTrainingTries(SKILL_MAGLEVEL, trainingTime * (static_cast<double>(vocation->getManaGainAmount()) / gainTicks));
+ addOfflineTrainingTries(SKILL_MAGLEVEL, g_config.getNumber(ConfigManager::RATE_MAGIC) * trainingTime * (static_cast<double>(vocation->getManaGainAmount()) / gainTicks));
}
- if (addOfflineTrainingTries(SKILL_SHIELD, trainingTime / 4) || sendUpdateSkills) {
+ if (addOfflineTrainingTries(SKILL_SHIELD, g_config.getNumber(ConfigManager::RATE_SKILL) * trainingTime / 4) || sendUpdateSkills) {
sendSkills();
}
}
--
2.4.2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment