Ir para conteúdo

Featured Replies

Postado

Olá! Estou fazendo um OT, e encontrei alguns problemas sem resposta. Pelo menos não vi nenhum tópico relacionado, então resolvi perguntar.

 

Um dos problemas é no Dead Human. No pvp, quando um player mata o outro, ele simplesmente desaparece, e não cai o Dead Human. Ou seja, se dropar algum loot dele eu não vou saber.

Como não encontrei ajuda, tentei trocar a distro e o problema persistiu. Uso um TSF 0.4 , OTserv 8.60. Espero que alguém possa me ajudar!!

 

 

Resolvido por Henrique Rezende

Ir para solução
  • Respostas 6
  • Visualizações 770
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • @Henrique Rezende Verificou se não há nenhum arquivo do creaturescript bugando as mortes? Muitos dos erros relacionados à isso são corrigidos trocando por um creaturescript limpo ou verificando q

  • Henrique Rezende
    Henrique Rezende

    @Azhaurn   Consegui! Troquei o Creaturescripts inteiro pelo creaturescripts de um outro OT, e agora está aparecendo o dead normalmente.   Valeu pela ajuda! Rep +

Postado

@Henrique Rezende

Verificou se não há nenhum arquivo do creaturescript bugando as mortes? Muitos dos erros relacionados à isso são corrigidos trocando por um creaturescript limpo ou verificando qual é o script que está causando esse problema. Na maioria das vezes é uma quest.

Postado
  • Autor
2 horas atrás, Azhaurn disse:

@Henrique Rezende

Verificou se não há nenhum arquivo do creaturescript bugando as mortes? Muitos dos erros relacionados à isso são corrigidos trocando por um creaturescript limpo ou verificando qual é o script que está causando esse problema. Na maioria das vezes é uma quest.

 

@Azhaurn

 

Eu tirei todos os creaturescripts relacionados a quests e não resolveu.

 

Tem um creaturescript chamado Playerdeath.lua. Será q pode ser nele o problema?

 

Citar

local config = {
    deathListEnabled = getBooleanFromString(getConfigInfo('deathListEnabled')),
    sqlType = getConfigInfo('sqlType'),
    maxDeathRecords = getConfigInfo('maxDeathRecords')
}

config.sqlType = config.sqlType == "sqlite" and DATABASE_ENGINE_SQLITE or DATABASE_ENGINE_MYSQL

function onDeath(cid, corpse, lastHitKiller, mostDamageKiller)
    if(config.deathListEnabled ~= TRUE) then
        return
    end

    local hitKillerName = "field item"
    local damageKillerName = ""
    if(lastHitKiller ~= FALSE) then
        if(isPlayer(lastHitKiller) == TRUE) then
            hitKillerName = getPlayerGUID(lastHitKiller)
        else
            hitKillerName = getCreatureName(lastHitKiller)
        end

        if(mostDamageKiller ~= FALSE and mostDamageKiller ~= lastHitKiller and getCreatureName(mostDamageKiller) ~= getCreatureName(lastHitKiller)) then
            if(isPlayer(mostDamageKiller) == TRUE) then
                damageKillerName = getPlayerGUID(mostDamageKiller)
            else
                damageKillerName = getCreatureName(mostDamageKiller)
            end
        end
    end

    db.executeQuery("INSERT INTO `player_deaths` (`player_id`, `time`, `level`, `killed_by`, `altkilled_by`) VALUES (" .. getPlayerGUID(cid) .. ", " .. os.time() .. ", " .. getPlayerLevel(cid) .. ", " .. db.escapeString(hitKillerName) .. ", " .. db.escapeString(damageKillerName) .. ");")
    local rows = db.getResult("SELECT `player_id` FROM `player_deaths` WHERE `player_id` = " .. getPlayerGUID(cid) .. ";")
    if(rows:getID() ~= -1) then
        local amount = rows:getRows(true) - config.maxDeathRecords
        if(amount > 0) then
            if(config.sqlType == DATABASE_ENGINE_SQLITE) then
                for i = 1, amount do
                    db.executeQuery("DELETE FROM `player_deaths` WHERE `rowid` = (SELECT `rowid` FROM `player_deaths` WHERE `player_id` = " .. getPlayerGUID(cid) .. " ORDER BY `time` LIMIT 1);")
                end
            else
                db.executeQuery("DELETE FROM `player_deaths` WHERE `player_id` = " .. getPlayerGUID(cid) .. " ORDER BY `time` LIMIT " .. amount .. ";")
            end
        end
    end
end
 

 

Editado por Henrique Rezende (veja o histórico de edições)

Postado
  • Autor
17 horas atrás, Azhaurn disse:

@Henrique Rezende

Verificou se não há nenhum arquivo do creaturescript bugando as mortes? Muitos dos erros relacionados à isso são corrigidos trocando por um creaturescript limpo ou verificando qual é o script que está causando esse problema. Na maioria das vezes é uma quest.

@Azhaurn

 

Consegui! Troquei o Creaturescripts inteiro pelo creaturescripts de um outro OT, e agora está aparecendo o dead normalmente.

 

Valeu pela ajuda! Rep +

Postado
15 minutos atrás, Henrique Rezende disse:

@Azhaurn

 

Consegui! Troquei o Creaturescripts inteiro pelo creaturescripts de um outro OT, e agora está aparecendo o dead normalmente.

 

Valeu pela ajuda! Rep +

Disponha! Mas evite double post pra não levar bronca, ok? :tongue:

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo