potinho
Advanced OT User
Hello guys,
Can u point me what is wrong in my function? When a player get pk in another, if player fight back he is getting yellow skull (player who has been attacked by pk), and must dont. I've already applied this fix:
It was working ok at some point, but bug is back. My actual code:
In config.lua i have
Can u point me what is wrong in my function? When a player get pk in another, if player fight back he is getting yellow skull (player who has been attacked by pk), and must dont. I've already applied this fix:
Merge pull request #54 from brewsterl/patch-2 · mattyx14/otxserver@eaf4709
Fix yellow skull
github.com
It was working ok at some point, but bug is back. My actual code:
C++:
void Player::onTarget(Creature* target)
{
Creature::onTarget(target);
if(target == this)
{
addInFightTicks(false);
return;
}
if(hasFlag(PlayerFlag_NotGainInFight))
return;
Player* targetPlayer = target->getPlayer();
if(targetPlayer && !isPartner(targetPlayer) && !isAlly(targetPlayer))
{
if(!pzLocked && g_game.getWorldType() == WORLDTYPE_HARDCORE)
{
pzLocked = true;
sendIcons();
}
if(getSkull() == SKULL_NONE && getSkullType(targetPlayer) == SKULL_YELLOW)
{
addAttacked(targetPlayer);
targetPlayer->sendCreatureSkull(this);
}
else
{
if(!pzLocked)
{
pzLocked = true;
sendIcons();
}
if(!Combat::isInPvpZone(this, targetPlayer) && !isEnemy(this))
{
addAttacked(targetPlayer);
if(targetPlayer->getSkull() == SKULL_NONE && getSkull() == SKULL_NONE && (!guildId || !targetPlayer->getGuildId()))
{
setSkull(SKULL_WHITE);
g_game.updateCreatureSkull(this);
}
if(getSkull() == SKULL_NONE)
targetPlayer->sendCreatureSkull(this);
}
}
}
addInFightTicks(false);
}
In config.lua i have
Lua:
allowFightback = false