Ir para conteúdo

Featured Replies

Postado

4uaVzmM.png

 

 

Tirei o dia para ver os logs, estou vendo alguns erros.

Alguém sabe o que pode ser esse erro acima?

 

Todas as respostas ganharão REP.

Obrigado a todos

Postado

bom, vc sabe inglês? saber ingles é crucial pra entender os erros do console:

O erro apresentado é o seguinte>
no callback do script data/spells/scripts/monster/mohawk ue.lua (o callback é onTargetTile)
não consegue direcionar o arquivo do script
A função luaDoTargetCombatHealth(). não conseguiu definir a criatura que você passou como parâmetro da função, perceba que o nome da função apresentado aqui é o nome que ela é registrada na source.
Mais abaixo ele avisa a linha que está o possível erro mahawk ue.lua:54 <- linha 54 e esse erro pertence a uma função que começa na linha 30.

Isso tudo afeta um combat da linha 67 que está dentro de uma função da linha 65.

Sem nem ver o seu script eu sei dizer que a linha 65 é o callback function onCastSpell(cid, var) e já consigo imaginar como o script funciona;

Ele solta uma magia em area e executa o callback onTargetTile para dar dano nas criaturas que estão nessa area. O problema é justamente uma falha de comunicação entre pegar as criaturas e dar o dano. Posta o script que fica mais fácil pra gente te ajudar.

Postado
  • Autor

bom, vc sabe inglês? saber ingles é crucial pra entender os erros do console:

O erro apresentado é o seguinte>

no callback do script data/spells/scripts/monster/mohawk ue.lua (o callback é onTargetTile)

não consegue direcionar o arquivo do script

A função luaDoTargetCombatHealth(). não conseguiu definir a criatura que você passou como parâmetro da função, perceba que o nome da função apresentado aqui é o nome que ela é registrada na source.

Mais abaixo ele avisa a linha que está o possível erro mahawk ue.lua:54 <- linha 54 e esse erro pertence a uma função que começa na linha 30.

Isso tudo afeta um combat da linha 67 que está dentro de uma função da linha 65.

Sem nem ver o seu script eu sei dizer que a linha 65 é o callback function onCastSpell(cid, var) e já consigo imaginar como o script funciona;

Ele solta uma magia em area e executa o callback onTargetTile para dar dano nas criaturas que estão nessa area. O problema é justamente uma falha de comunicação entre pegar as criaturas e dar o dano. Posta o script que fica mais fácil pra gente te ajudar.

local voc = {1, 2, 3, 4, 5, 6, 7, 8}

local condition = createConditionObject(CONDITION_REGENERATION)
setConditionParam(condition, CONDITION_PARAM_SUBID, 88888)
setConditionParam(condition, CONDITION_PARAM_TICKS, 10 * 60 * 1000)
setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, 0.01)
setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 10 * 60 * 1000)

	arr = {
	{0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0},
	{0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0},
	{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
	{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
	{1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1},
	{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
	{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
	{0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0},
	{0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0},
	}

local area = createCombatArea(arr)

local combat = createCombatObject()
setCombatArea(combat, area)

function onTargetTile(cid, pos)
    local creatureTable = {}
    local n, i = getTileInfo({x=pos.x, y=pos.y, z=pos.z}).creatures, 1
    if n ~= 0 then
        local v = getThingfromPos({x=pos.x, y=pos.y, z=pos.z, stackpos=i}).uid
        while v ~= 0 do
            if isCreature(v) == true then
                table.insert(creatureTable, v)
                if n == #creatureTable then
                    break
                end
            end
            i = i + 1
            v = getThingfromPos({x=pos.x, y=pos.y, z=pos.z, stackpos=i}).uid
        end
    end
    if #creatureTable ~= nil and #creatureTable > 0 then
        for r = 1, #creatureTable do
            if creatureTable[r] ~= cid then
                local min = 1500
                local max = 1700
                if isPlayer(creatureTable[r]) == true and isInArray(voc, getPlayerVocation(creatureTable[r])) == true then
                    doTargetCombatHealth(cid, creatureTable[r], COMBAT_FIREDAMAGE, -min, -max, CONST_ME_NONE)
                elseif isMonster(creatureTable[r]) == true then
                    doTargetCombatHealth(cid, creatureTable[r], COMBAT_FIREDAMAGE, -min, -max, CONST_ME_NONE)
                end
            end
        end
    end
    doSendMagicEffect(pos, CONST_ME_FIREAREA)
    return true
end

setCombatCallback(combat, CALLBACK_PARAM_TARGETTILE, "onTargetTile")

local function delayedCastSpell(cid, var)
    if isCreature(cid) == true then
        doCombat(cid, combat, positionToVariant(getCreaturePosition(cid)))
    end
end

function onCastSpell(cid, var)
    if isCreature(cid) == true then
        if getCreatureHealth(cid) < getCreatureMaxHealth(cid) * 0.1 and getCreatureCondition(cid, CONDITION_REGENERATION, 88888) == false then
            doAddCondition(cid, condition)
			addEvent(delayedCastSpell, 5000, cid, var)
			doCreatureSay(cid, "Better flee now.", TALKTYPE_ORANGE_1)
        else
            return false
        end
    else
        return false
    end
    return true
end

Ai o script... eu sei inglês, só não entendo de scripts mesmo ^^

Eu acho que são esses símbolos "~="

Obs. Já removi essa magia, ele solta essa magia assim que é morto, ai da o erro. Por enquanto eu removi ela

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

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