Ir para conteúdo

Featured Replies

Postado

Estou com o seguinte erro: 

Lua Script Error: [Spell Interface]
in callback: data/spells/scripts/monster/betrayed_wraith_skill_reducer.lua:onTargetCreature
(Unknown scriptfile)
...spells/scripts/monster/betrayed_wraith_skill_reducer.lua:11: attempt to call method 'addAttributeCondition' (a nil value)

Já revirei a internet buscando a solução mas não encontrei. Uso TFS 1.2 (forgottenserver by Marksamman).

 

O código do spell é esse:

local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_YELLOW_RINGS)
combat:setArea(createCombatArea(AREA_SQUAREWAVE5))

local parameters = {
	{key = CONDITION_PARAM_TICKS, value = 5 * 1000},
	{key = CONDITION_PARAM_SKILL_DISTANCEPERCENT, value = 80}
}

function onTargetCreature(creature, target)
	target:addAttributeCondition(parameters)
end

combat:setCallback(CALLBACK_PARAM_TARGETCREATURE, "onTargetCreature")

function onCastSpell(creature, variant)
	return combat:execute(creature, variant)
end

E o do monster não tem nada de mais, apenas a chamada da função:

<attacks>
		<attack name="melee" interval="2000" min="0" max="-450" />
		<attack name="betrayed wraith skill reducer" chance="10" />
		<attack name="speed" interval="2000" chance="20" range="7" target="1" speedchange="-600" duration="3000">
			<attribute key="shootEffect" value="suddendeath" />
			<attribute key="areaEffect" value="mortarea" />
			<attribute key="areaEffect" value="smallclouds" />
		</attack>
</attacks>

Imagino que seja falta de alguma lib, mas não sei qual, alguém poderia ajudar?

Resolvido por Bruno Carvalho

Ir para solução
Postado

Esse erro aconteceu quando você tentou baixar via TFS ou você tentou pegar e adicionar ao seu servidor? Pois se eu não me engano este é um código de TFS 1.3... (Tanto que a função addAttributeCondition não existe)

 

A versão 1.2 seria a:

local condition = Condition(CONDITION_ATTRIBUTES)
condition:setParameter(CONDITION_PARAM_TICKS, 5000)
condition:setParameter(CONDITION_PARAM_SKILL_DISTANCEPERCENT, 80)

local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_YELLOW_RINGS)
combat:setArea(createCombatArea(AREA_SQUAREWAVE5))
combat:addCondition(condition)

function onCastSpell(creature, variant)
	return combat:execute(creature, variant)
end

 

Bruno Carvalho / Ex-Administrador TibiaKing

[email protected]

 

Em 26/12/2016 em 03:47, Spraypaint disse:

A força da alienação vem dessa fragilidade dos indivíduos, quando apenas conseguem identificar o que os separa e não o que os une.

-miltinho

 

wMwSJFE.png?1

 

Postado
  • Autor

Oi Bruno, posso ter me confundido na versão, creio que seja 1.3 mesmo, eu peguei do Git oficial do forgottenserver. O tfs foi compilado ontem, e não foi feita nenhuma alteração nos arquivos que postei. Mas vou testar esse que vc passou e posto o resultado.

Postado
  • Solução

Muito estranho, estou olhando o código da TFS e parece não apresentar nenhum erro... 

Verifique se esta sua função está adicionada: https://github.com/otland/forgottenserver/blob/master/data/spells/lib/spells.lua#L344

Bruno Carvalho / Ex-Administrador TibiaKing

[email protected]

 

Em 26/12/2016 em 03:47, Spraypaint disse:

A força da alienação vem dessa fragilidade dos indivíduos, quando apenas conseguem identificar o que os separa e não o que os une.

-miltinho

 

wMwSJFE.png?1

 

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.7k

Informação Importante

Confirmação de Termo