mirror of
https://github.com/edubart/otclient.git
synced 2025-10-14 19:44:54 +02:00
Fix issue #109
This commit is contained in:
@@ -41,6 +41,7 @@ function init()
|
||||
connect(Creature, {
|
||||
onSkullChange = updateCreatureSkull,
|
||||
onEmblemChange = updateCreatureEmblem,
|
||||
onOutfitChange = onCreatureOutfitChange,
|
||||
onHealthPercentChange = onCreatureHealthPercentChange,
|
||||
onPositionChange = onCreaturePositionChange,
|
||||
onAppear = onCreatureAppear,
|
||||
@@ -67,6 +68,7 @@ function terminate()
|
||||
disconnect(Creature, {
|
||||
onSkullChange = updateCreatureSkull,
|
||||
onEmblemChange = updateCreatureEmblem,
|
||||
onOutfitChange = onCreatureOutfitChange,
|
||||
onHealthPercentChange = onCreatureHealthPercentChange,
|
||||
onPositionChange = onCreaturePositionChange,
|
||||
onAppear = onCreatureAppear,
|
||||
@@ -126,6 +128,8 @@ function doCreatureFitFilters(creature)
|
||||
return false
|
||||
end
|
||||
|
||||
if not creature:canBeSeen() then return false end
|
||||
|
||||
local hidePlayers = hidePlayersButton:isChecked()
|
||||
local hideNPCs = hideNPCsButton:isChecked()
|
||||
local hideMonsters = hideMonstersButton:isChecked()
|
||||
@@ -168,9 +172,17 @@ function onCreaturePositionChange(creature, newPos, oldPos)
|
||||
end
|
||||
end
|
||||
|
||||
function onCreatureOutfitChange(creature, outfit, oldOutfit)
|
||||
if not creature:canBeSeen() then
|
||||
removeCreature(creature)
|
||||
elseif doCreatureFitFilters(creature) then
|
||||
removeCreature(creature)
|
||||
addCreature(creature)
|
||||
end
|
||||
end
|
||||
|
||||
function onCreatureAppear(creature)
|
||||
local player = g_game.getLocalPlayer()
|
||||
if creature ~= player and creature:getPosition().z == player:getPosition().z and doCreatureFitFilters(creature) then
|
||||
if doCreatureFitFilters(creature) then
|
||||
addCreature(creature)
|
||||
end
|
||||
end
|
||||
|
Reference in New Issue
Block a user