void Creature::drainHealth(Creature* attacker, CombatType_t combatType, int32_t damage)
{
lastDamageSource = combatType;
onAttacked();
if(attacker && attacker->getPlayer())
{
if(attacker->getPlayer()->getExtraMagicDamage() > 1)
{
int16_t color = g_config.getNumber(ConfigManager::EXTRA_DAMAGE_COLOR);
if(color < 0)
color = random_range(0, 255);
int realDamage = damage;
damage = damage * attacker->getPlayer()->getExtraMagicDamage();
std::stringstream ss;
ss << "+" << damage - realDamage...
Have you tried different source?
Is it field created after killing monster?
Please remove the swearing word from your post![]()
No i dont have any itemdo you have any gear with reflection on?
void Creature::drainHealth(Creature* attacker, CombatType_t combatType, int32_t damage)
{
lastDamageSource = combatType;
onAttacked();
if(attacker && attacker->getPlayer())
{
if(attacker->getPlayer()->getExtraMagicDamage() > 1)
{
int16_t color = g_config.getNumber(ConfigManager::EXTRA_DAMAGE_COLOR);
if(color < 0)
color = random_range(0, 255);
int realDamage = damage;
damage = damage * attacker->getPlayer()->getExtraMagicDamage();
std::stringstream ss;
ss << "+" << damage - realDamage;
g_game.addAnimatedText(attacker->getPosition(), (uint8_t)color, ss.str());
}
}
changeHealth(-damage);
if(attacker)
attacker->onAttackedCreatureDrainHealth(this, damage);
}
it's probably the second system
try to replace drainHealth with this
C++:void Creature::drainHealth(Creature* attacker, CombatType_t combatType, int32_t damage) { lastDamageSource = combatType; onAttacked(); if(attacker && attacker->getPlayer()) { if(attacker->getPlayer()->getExtraMagicDamage() > 1) { int16_t color = g_config.getNumber(ConfigManager::EXTRA_DAMAGE_COLOR); if(color < 0) color = random_range(0, 255); int realDamage = damage; damage = damage * attacker->getPlayer()->getExtraMagicDamage(); std::stringstream ss; ss << "+" << damage - realDamage; g_game.addAnimatedText(attacker->getPosition(), (uint8_t)color, ss.str()); } } changeHealth(-damage); if(attacker) attacker->onAttackedCreatureDrainHealth(this, damage); }