Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Ola galera boa tarde, estou precisando de uma ajudinha em alguns scripts do meu servidor 8,60 TFS 0,4

Bom os scripts estão funcionando porem da um erro no TFS quando são usados. gostaria de arrumar pois pode vir a se tornar bug, sei la.

 

1º script 

 

Spell: Exori Stun >> quando um personagem usa essa spell o player que a recebe fica imóvel  por alguns segundos.

ela esta funcionando porem da esse ero no TFS

 

script



local combat = createCombatObject()
    setCombatParam(combat, COMBAT_PARAM_TARGETCASTERORTOPMOST, true)
    setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 1)
    setCombatParam(combat, COMBAT_PARAM_BLOCKSHIELD, 1)
    setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
    setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_STUN)
    setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, 1.0, 0)
 
function onCastSpell(cid, var)
local storage = 302020

if getPlayerStorageValue(cid, storage) < 1 then
doPlayerSendCancel(cid, "Desculpe, Você tem que Fazer a [The Destyne Quest] para usar está magia.")
return false
end
    
    local target = variantToNumber(var)    
    doTargetCombatCondition(0, target, exhausted, CONST_ME_MAGIC_RED)
    local exhausted = createConditionObject(CONDITION_EXHAUST)
    setConditionParam(exhausted, CONDITION_PARAM_TICKS,6000)
    
    doCreatureSetNoMove(target, true) 
    addEvent(doCreatureSetNoMove, 6000, target, false)
    
    return doCombat(cid, combat, var)
end

 

    <instant name="stun rox" words="exori stun" lvl="270" mana="1700" prem="1" range="4" needtarget="1" exhaustion="4500" blockwalls="1" needlearn="0" event="script" value="pbot/exori stun.lua">
        <vocation id="3"/>
        <vocation id="7"/>
        <vocation id="11"/>
    </instant>

 

erro



[17:57:36.414] [Error - Spell Interface]
[17:57:36.415] data/spells/scripts/stun/exori stun.lua:onCastSpel
[17:57:36.421] Description:
[17:57:36.423] (luaDoTargetCombatCondition) Condition not found

 

2º Monster Revive >> criei uma spell que sumona um monster (Teen Wolf), quando alguém mata esse meu SUMON nasce outro mais forte (Werewoolf)

estou usando um script hamado Monster Revive pra que o sumon reviva sobre meu comando assim como o 1º que morreu. O script funciona porem da esse erro no TFS

 

script



function onPrepareDeath(cid, lastHitKiller, mostDamageKiller)
local area = 18 ------- A area que o efeito vai alcançar----
local effect = 23 --- Id do efeito de área para deixar mais bonito escolha um vibrante e colorido--------
local creature = "werewoolf" -- Monstro que revive ---
function doSendDistanceEffectAround(cid, position, AreaNumber, type)  
local numberInArea = tonumber(AreaNumber)
local distance0 = {x=position.x, y=position.y-numberInArea, z=position.z}
local distance1 = {x=position.x+numberInArea, y=position.y, z=position.z}
local distance2 = {x=position.x, y=position.y+numberInArea, z=position.z}
local distance3 = {x=position.x-numberInArea, y=position.y, z=position.z}
return doSendDistanceShoot(position, distance0, type) and doSendDistanceShoot(position, distance1, type) and doSendDistanceShoot(position, distance2, type) and doSendDistanceShoot(position, distance3, type)
end

doSendDistanceEffectAround(cid, getCreaturePosition(cid), area, effect)
doConvinceCreature(getCreatureMaster(cid), doCreateMonster(creature, getCreaturePosition(cid)))
return doRemoveCreature(cid)
end

 

  <event type="preparedeath" name= "revive" event="script" value="monsterevive.lua"/>

 

erro



[18:11:47.996] [Error - CreatureScript Interface]
[18:11:47.997] data/creaturescripts/scripts/killinginthenameof.lua:onKill
[18:11:47.999] Description:
[18:11:48.001] (luaGetCreatureMaster) Creature not found

[18:11:48.003] [Error - CreatureScript Interface]
[18:11:48.005] function onKill(cid, target, lastHit)
[18:11:48.007]     if(getCreatureName(target) == 'Shard Of Corruption') the
[18:11:48.008]         doPlayerSetStorageValue(cid, 7343, 11)
[18:11:48.010]         doCreatureSay(cid, "Done", TALKTYPE_ORANGE_1)
[18:11:48.012]     end
[18:11:48.013]     return TRUE
[18:11:48.015] end:onKill
[18:11:48.026] Description:
[18:11:48.028] (luaGetCreatureName) Creature not found

 

3º Sacre Annihilator >> e uma anihilator de 4 players, so pode 1 vocação de cada, cada player tem seu SQM especifico e cada player tem que levar um sacrifício (ITEM) que é colocado

logo ao lado, o script funciona porem esta dando erro no TFS quando : apenas 1 player puxar a alavanca sem mais ninguém encima. 

 

zmoEAi.png

 

script



function onUse(cid, item, frompos, item2, topos)
    -- Item ID and Uniqueid --
    switchUniqueID = 1913
    switchID = 1945
    switch2ID = 1946
    axeID    = 7434
    bowID = 8855
    rodID    = 8910
    wandID    = 8922
 
 
    -- Level to do the quest --
    questlevel = 30
 
 
    piece1pos = {x=33225, y=31681, z=13, stackpos=1} -- Where the first piece will be placed
    getpiece1 = getThingfromPos(piece1pos)
 
    piece2pos = {x=33224, y=31681, z=13, stackpos=1} -- Where the second piece will be placed
    getpiece2 = getThingfromPos(piece2pos)
 
    piece3pos = {x=33223, y=31681, z=13, stackpos=1} -- Where the third piece will be placed
    getpiece3 = getThingfromPos(piece3pos)
 
    piece4pos = {x=33222, y=31681, z=13, stackpos=1} -- Where the fourth piece will be placed
    getpiece4 = getThingfromPos(piece4pos)
 
    player1pos = {x=33225, y=31682, z=13, stackpos=253} -- Where player1 will stand before pressing lever
    player1 = getThingfromPos(player1pos)
    player2pos = {x=33224, y=31682, z=13, stackpos=253} -- Where player2 will stand before pressing lever
    player2 = getThingfromPos(player2pos)
    player3pos = {x=33223, y=31682, z=13, stackpos=253} -- Where player3 will stand before pressing lever
    player3 = getThingfromPos(player3pos)
    player4pos = {x=33222, y=31682, z=13, stackpos=253} -- Where player4 will stand before pressing lever
    player4 = getThingfromPos(player4pos)
 
    knightvoc = getPlayerVocation(player1.uid)   -- The vocation of player1
    paladinvoc = getPlayerVocation(player2.uid)  -- The vocation of player2
    druidvoc = getPlayerVocation(player3.uid)    -- The vocation of player3
    sorcerervoc = getPlayerVocation(player4.uid) -- The vocation of player4
 
    nplayer1pos = {x=33239, y=31682, z=13} -- The new position of player1
    nplayer2pos = {x=33238, y=31682, z=13} -- The new position of player2
    nplayer3pos = {x=33237, y=31682, z=13} -- The new position of player3
    nplayer4pos = {x=33236, y=31682, z=13} -- The new position of player4
 
 
    player1level = getPlayerLevel(player1.uid) -- Checking the level of player1
    player2level = getPlayerLevel(player2.uid) -- Checking the level of player2
    player3level = getPlayerLevel(player3.uid) -- Checking the level of player3
    player4level = getPlayerLevel(player4.uid) -- Checking the level of player4
 
 
    -- Check if all players has the correct vocation
    if knightvoc == 4 or knightvoc == 8 or knightvoc == 12 and
    paladinvoc == 3 or paladinvoc == 7 or paladinvoc == 11 and
    druidvoc == 2 or druidvoc == 6 or druidvoc == 10 and
    sorcerervoc == 1 or sorcerervoc == 5 or sorcerervoc == 9 then    
 
 
    -- Check if all players are standing on the correct positions
    if player1.itemid > 0 and player2.itemid > 0 and player3.itemid > 0 and player4.itemid > 0 then
        if player1level >= questlevel and player2level >= questlevel and player3level >= questlevel and    player4level >= questlevel then
            if item.uid == switchUniqueID and item.itemid == switchID and getpiece1.itemid == axeID and getpiece2.itemid == bowID and getpiece3.itemid == rodID and getpiece4.itemid == wandID then
                doSendMagicEffect(player1pos,2)
                doTeleportThing(player1.uid,nplayer1pos)
                doSendMagicEffect(nplayer1pos,10)
                doRemoveItem(getpiece1.uid,1)
 
                doSendMagicEffect(player2pos,2)
                doTeleportThing(player2.uid,nplayer2pos)
                doSendMagicEffect(nplayer2pos,10)
                doRemoveItem(getpiece2.uid,1)
 
                doSendMagicEffect(player3pos,2)
                doTeleportThing(player3.uid,nplayer3pos)
                doSendMagicEffect(nplayer3pos,10)
                doRemoveItem(getpiece3.uid,1)
 
                doSendMagicEffect(player4pos,2)
                doTeleportThing(player4.uid,nplayer4pos)    
                doSendMagicEffect(nplayer4pos,10)
                doRemoveItem(getpiece4.uid,1)
 
                doTransformItem(item.uid,item.itemid+1)
            elseif item.uid == switchUniqueID and item.itemid == switch2ID then
                doTransformItem(item.uid,item.itemid-1)
            else
                doPlayerSendCancel(cid,"Desculpe, você precisa colocar os itens corretos nos locais corretos.")
            end
            else
            return 0
            end
        else
            doPlayerSendCancel(cid,"Desculpe, todos os jogadores na sua equipe devem ser de nível " .. questlevel .. ".")
        end
    else
        doPlayerSendCancel(cid,"Desculpe, todos os 4 jogadores devem estar nas posições de corretas.")
    end
    return 1
end
 

 

erro



[18:22:11.891] [Error - Action Interface]
[18:22:11.892] data/actions/scripts/quests/superanih.lua:onUse
[18:22:11.892] Description:
[18:22:11.893] (internalGetPlayerInfo) Player not found when requesting player i
nfo #6

[18:22:11.894] [Error - Action Interface]
[18:22:11.894] data/actions/scripts/quests/superanih.lua:onUse
[18:22:11.895] Description:
[18:22:11.896] (internalGetPlayerInfo) Player not found when requesting player i
nfo #6

[18:22:11.897] [Error - Action Interface]
[18:22:11.898] data/actions/scripts/quests/superanih.lua:onUse
[18:22:11.898] Description:
[18:22:11.899] (internalGetPlayerInfo) Player not found when requesting player i
nfo #6

[18:22:11.900] [Error - Action Interface]
[18:22:11.904] data/actions/scripts/quests/superanih.lua:onUse
[18:22:11.906] Description:
[18:22:11.908] (internalGetPlayerInfo) Player not found when requesting player i
nfo #6

[18:22:11.910] [Error - Action Interface]
[18:22:11.913] data/actions/scripts/quests/superanih.lua:onUse
[18:22:11.915] Description:
[18:22:11.917] (internalGetPlayerInfo) Player not found when requesting player i
nfo #3

[18:22:11.919] [Error - Action Interface]
[18:22:11.921] data/actions/scripts/quests/superanih.lua:onUse
[18:22:11.923] Description:
[18:22:11.926] (internalGetPlayerInfo) Player not found when requesting player i
nfo #3

[18:22:11.929] [Error - Action Interface]
[18:22:11.931] data/actions/scripts/quests/superanih.lua:onUse
[18:22:11.932] Description:
[18:22:11.933] (internalGetPlayerInfo) Player not found when requesting player i
nfo #3

[18:22:11.936] [Error - Action Interface]
[18:22:11.938] data/actions/scripts/quests/superanih.lua:onUse
[18:22:11.940] Description:
[18:22:11.942] (internalGetPlayerInfo) Player not found when requesting player i
nfo #3

 

Desde já agradeço a quem puder ajudar.

 

Link para o post
Compartilhar em outros sites

Mano isso aí já acontecue comigo, só resolvi trocando o server kkkkkkk

Editado por Support Melo (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • 2 weeks later...

pro primeiro, troca seu script por esse aqui:

 

Spoiler

local combat = createCombatObject()
	setCombatParam(combat, COMBAT_PARAM_TARGETCASTERORTOPMOST, true)
	setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 1)
	setCombatParam(combat, COMBAT_PARAM_BLOCKSHIELD, 1)
	setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
	setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_STUN)
	setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, 1.0, 0)
	
local exhausted = createConditionObject(CONDITION_EXHAUST)
	setConditionParam(exhausted, CONDITION_PARAM_TICKS,6000) 
	
function onCastSpell(cid, var)
	local storage = 302020 
	if getPlayerStorageValue(cid, storage) < 1 then
		doPlayerSendCancel(cid, "Desculpe, Você tem que Fazer a [The Destyne Quest] para usar está magia.")
		return false
	end
	
	local target = variantToNumber(var)    
	doTargetCombatCondition(cid, target, exhausted, CONST_ME_MAGIC_RED)
	doCreatureSetNoMove(target, true) 
	addEvent(doCreatureSetNoMove, 6000, target, false)
	return doCombat(cid, combat, var)
end

 

a condition só pode ser criada fora do function onCastSpell, na hora de aplicar ela dava erro. Também modifiquei a função doTargetCombatCondition pra adicionar o exhausted corretamente no target.

No segundo você tá tentando checar o nome de um monstro que morreu, troca onKill pra onPrepareDeath tanto no callback quanto no xml de creaturescripts que deve resolver.

Pro terceiro:

 

Spoiler

function onUse(cid, item, frompos, item2, topos)
    -- Item ID and Uniqueid --
    switchUniqueID = 1913
    switchID = 1945
    switch2ID = 1946
    axeID    = 7434
    bowID = 8855
    rodID    = 8910
    wandID    = 8922
 
 
    -- Level to do the quest --
    questlevel = 30
 
 
    piece1pos = {x=33225, y=31681, z=13, stackpos=1} -- Where the first piece will be placed
    getpiece1 = getThingfromPos(piece1pos)
 
    piece2pos = {x=33224, y=31681, z=13, stackpos=1} -- Where the second piece will be placed
    getpiece2 = getThingfromPos(piece2pos)
 
    piece3pos = {x=33223, y=31681, z=13, stackpos=1} -- Where the third piece will be placed
    getpiece3 = getThingfromPos(piece3pos)
 
    piece4pos = {x=33222, y=31681, z=13, stackpos=1} -- Where the fourth piece will be placed
    getpiece4 = getThingfromPos(piece4pos)
 
    player1pos = {x=33225, y=31682, z=13, stackpos=253} -- Where player1 will stand before pressing lever
    player1 = getThingfromPos(player1pos)
    player2pos = {x=33224, y=31682, z=13, stackpos=253} -- Where player2 will stand before pressing lever
    player2 = getThingfromPos(player2pos)
    player3pos = {x=33223, y=31682, z=13, stackpos=253} -- Where player3 will stand before pressing lever
    player3 = getThingfromPos(player3pos)
    player4pos = {x=33222, y=31682, z=13, stackpos=253} -- Where player4 will stand before pressing lever
    player4 = getThingfromPos(player4pos)
	
	if not((player1.uid and player1.uid > 0) and (player2.uid and player2.uid > 0) and (player3.uid and player3.uid > 0) and (player4.uid and player4.uid > 0))
		return doPlayerSendCancel(cid,"Desculpe, você precisa de no mínimo 4 pessoas para fazer essa quest.")
	end		
 
    knightvoc = getPlayerVocation(player1.uid)   -- The vocation of player1
    paladinvoc = getPlayerVocation(player2.uid)  -- The vocation of player2
    druidvoc = getPlayerVocation(player3.uid)    -- The vocation of player3
    sorcerervoc = getPlayerVocation(player4.uid) -- The vocation of player4
 
    nplayer1pos = {x=33239, y=31682, z=13} -- The new position of player1
    nplayer2pos = {x=33238, y=31682, z=13} -- The new position of player2
    nplayer3pos = {x=33237, y=31682, z=13} -- The new position of player3
    nplayer4pos = {x=33236, y=31682, z=13} -- The new position of player4
 
 
    player1level = getPlayerLevel(player1.uid) -- Checking the level of player1
    player2level = getPlayerLevel(player2.uid) -- Checking the level of player2
    player3level = getPlayerLevel(player3.uid) -- Checking the level of player3
    player4level = getPlayerLevel(player4.uid) -- Checking the level of player4
 
 
    -- Check if all players has the correct vocation
    if knightvoc == 4 or knightvoc == 8 or knightvoc == 12 and
    paladinvoc == 3 or paladinvoc == 7 or paladinvoc == 11 and
    druidvoc == 2 or druidvoc == 6 or druidvoc == 10 and
    sorcerervoc == 1 or sorcerervoc == 5 or sorcerervoc == 9 then    
 
 
    -- Check if all players are standing on the correct positions
    if player1.itemid > 0 and player2.itemid > 0 and player3.itemid > 0 and player4.itemid > 0 then
        if player1level >= questlevel and player2level >= questlevel and player3level >= questlevel and    player4level >= questlevel then
            if item.uid == switchUniqueID and item.itemid == switchID and getpiece1.itemid == axeID and getpiece2.itemid == bowID and getpiece3.itemid == rodID and getpiece4.itemid == wandID then
                doSendMagicEffect(player1pos,2)
                doTeleportThing(player1.uid,nplayer1pos)
                doSendMagicEffect(nplayer1pos,10)
                doRemoveItem(getpiece1.uid,1)
 
                doSendMagicEffect(player2pos,2)
                doTeleportThing(player2.uid,nplayer2pos)
                doSendMagicEffect(nplayer2pos,10)
                doRemoveItem(getpiece2.uid,1)
 
                doSendMagicEffect(player3pos,2)
                doTeleportThing(player3.uid,nplayer3pos)
                doSendMagicEffect(nplayer3pos,10)
                doRemoveItem(getpiece3.uid,1)
 
                doSendMagicEffect(player4pos,2)
                doTeleportThing(player4.uid,nplayer4pos)    
                doSendMagicEffect(nplayer4pos,10)
                doRemoveItem(getpiece4.uid,1)
 
                doTransformItem(item.uid,item.itemid+1)
            elseif item.uid == switchUniqueID and item.itemid == switch2ID then
                doTransformItem(item.uid,item.itemid-1)
            else
                doPlayerSendCancel(cid,"Desculpe, você precisa colocar os itens corretos nos locais corretos.")
            end
            else
            return 0
            end
        else
            doPlayerSendCancel(cid,"Desculpe, todos os jogadores na sua equipe devem ser de nível " .. questlevel .. ".")
        end
    else
        doPlayerSendCancel(cid,"Desculpe, todos os 4 jogadores devem estar nas posições de corretas.")
    end
    return 1
end

 

adicionei uma checagem:

if not((player1.uid and player1.uid > 0) and (player2.uid and player2.uid > 0) and (player3.uid and player3.uid > 0) and (player4.uid and player4.uid > 0))
        return doPlayerSendCancel(cid,"Desculpe, você precisa de no mínimo 4 pessoas para fazer essa quest.")
    end    

se não tiver os 4 players, retorna que não tem 4 players.. o erro tava sendo causado pq vc tentava pegar informações como vocação e level de players que não existiam.

Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá!

"Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

Link para o post
Compartilhar em outros sites

xWhiteWolf Obrigado por ajudar. o 1º script exori stun funcionou certinho. já o segundo problema não foi solucionado. você disse troca onKill pra onPrepareDeath tanto no callback quanto no xml de creaturescripts que deve resolver. mais no script que postei ali não encontrei isso de onkill e no creaturescripts .xml jã estava preparedeath, poderia explicar melhor esse.

 

Já no 3º problema aparece esse erro no TFS

 



[19:48:33.154] > Loading actions... [Error - LuaInterface::loadFile] data/action
s/scripts/quests/superanih.lua:38: 'then' expected near 'return'
[19:48:33.155] [Error - Event::checkScript] Cannot load script (data/actions/scr
ipts/quests/superanih.lua)
[19:48:33.156] data/actions/scripts/quests/superanih.lua:38: 'then' expected nea
r 'return'
[19:48:51.214] done.

Link para o post
Compartilhar em outros sites
1 hour ago, brufds said:

xWhiteWolf Obrigado por ajudar. o 1º script exori stun funcionou certinho. já o segundo problema não foi solucionado. você disse troca onKill pra onPrepareDeath tanto no callback quanto no xml de creaturescripts que deve resolver. mais no script que postei ali não encontrei isso de onkill e no creaturescripts .xml jã estava preparedeath, poderia explicar melhor esse.

 

Já no 3º problema aparece esse erro no TFS

 

 

  Hide contents

 

 


[19:48:33.154] > Loading actions... [Error - LuaInterface::loadFile] data/action
s/scripts/quests/superanih.lua:38: 'then' expected near 'return'
[19:48:33.155] [Error - Event::checkScript] Cannot load script (data/actions/scr
ipts/quests/superanih.lua)
[19:48:33.156] data/actions/scripts/quests/superanih.lua:38: 'then' expected nea
r 'return'
[19:48:51.214] done.
 

 

 

pro terceiro, faltou um then no final da primeira linha

if not((player1.uid and player1.uid > 0) and (player2.uid and player2.uid > 0) and (player3.uid and player3.uid > 0) and (player4.uid and player4.uid > 0)) then

pro segundo: se esta preparedeath no xml o callback deveria ser onPrepareDeath e não onKill na função.

 

Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá!

"Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

Link para o post
Compartilhar em outros sites

Vc é foda Esse resolveu.

if not((player1.uid and player1.uid > 0) and (player2.uid and player2.uid > 0) and (player3.uid and player3.uid > 0) and (player4.uid and player4.uid > 0)) 

then

 

mais o 2º não pois estou usando apenas o script que postei esse aqui, 

e não tem onKill nele e nem em nenhum outro que faca parte dele, no Login.lua tem uma tag mais também esta onPrepareDeath. Ja não sei mais o que fazer. kkkkkkkk



function onPrepareDeath(cid, lastHitKiller, mostDamageKiller)
local area = 18 ------- A area que o efeito vai alcançar----
local effect = 23 --- Id do efeito de área para deixar mais bonito escolha um vibrante e colorido--------
local creature = "werewoolf" -- Monstro que revive ---
function doSendDistanceEffectAround(cid, position, AreaNumber, type)  
local numberInArea = tonumber(AreaNumber)
local distance0 = {x=position.x, y=position.y-numberInArea, z=position.z}
local distance1 = {x=position.x+numberInArea, y=position.y, z=position.z}
local distance2 = {x=position.x, y=position.y+numberInArea, z=position.z}
local distance3 = {x=position.x-numberInArea, y=position.y, z=position.z}
return doSendDistanceShoot(position, distance0, type) and doSendDistanceShoot(position, distance1, type) and doSendDistanceShoot(position, distance2, type) and doSendDistanceShoot(position, distance3, type)
end 

doSendDistanceEffectAround(cid, getCreaturePosition(cid), area, effect)
doConvinceCreature(getCreatureMaster(cid), doCreateMonster(creature, getCreaturePosition(cid)))
return doRemoveCreature(cid)
end 

 
  <event type="preparedeath" name= "revive" event="script" value="monsterevive.lua"/> 

 

tipo explicando novamente como funciona esse script. a 3ª vocação do meu server Force Archer tem uma spell que se chama. Utevo Rex, que quando usada sumona um monster chamado Teen Wolf, quando alguém matar Teen Wolf uma nova criatura renasce Werewoolf sobre meu comando da mesma forma que a que morreu. o erro que ta dando é quando o teen wolf morre e  Werewoolf nasce.

 

 

Link para o post
Compartilhar em outros sites
6 hours ago, brufds said:

Vc é foda Esse resolveu.

if not((player1.uid and player1.uid > 0) and (player2.uid and player2.uid > 0) and (player3.uid and player3.uid > 0) and (player4.uid and player4.uid > 0)) 

then

 

mais o 2º não pois estou usando apenas o script que postei esse aqui, 

e não tem onKill nele e nem em nenhum outro que faca parte dele, no Login.lua tem uma tag mais também esta onPrepareDeath. Ja não sei mais o que fazer. kkkkkkkk

 

  Hide contents

 

 


function onPrepareDeath(cid, lastHitKiller, mostDamageKiller)
local area = 18 ------- A area que o efeito vai alcançar----
local effect = 23 --- Id do efeito de área para deixar mais bonito escolha um vibrante e colorido--------
local creature = "werewoolf" -- Monstro que revive ---
function doSendDistanceEffectAround(cid, position, AreaNumber, type)  
local numberInArea = tonumber(AreaNumber)
local distance0 = {x=position.x, y=position.y-numberInArea, z=position.z}
local distance1 = {x=position.x+numberInArea, y=position.y, z=position.z}
local distance2 = {x=position.x, y=position.y+numberInArea, z=position.z}
local distance3 = {x=position.x-numberInArea, y=position.y, z=position.z}
return doSendDistanceShoot(position, distance0, type) and doSendDistanceShoot(position, distance1, type) and doSendDistanceShoot(position, distance2, type) and doSendDistanceShoot(position, distance3, type)
end 

doSendDistanceEffectAround(cid, getCreaturePosition(cid), area, effect)
doConvinceCreature(getCreatureMaster(cid), doCreateMonster(creature, getCreaturePosition(cid)))
return doRemoveCreature(cid)
end 

 
  <event type="preparedeath" name= "revive" event="script" value="monsterevive.lua"/> 
 

 

 

 

tipo explicando novamente como funciona esse script. a 3ª vocação do meu server Force Archer tem uma spell que se chama. Utevo Rex, que quando usada sumona um monster chamado Teen Wolf, quando alguém matar Teen Wolf uma nova criatura renasce Werewoolf sobre meu comando da mesma forma que a que morreu. o erro que ta dando é quando o teen wolf morre e  Werewoolf nasce.

 

 

http://prntscr.com/f8t2xx

no erro que você postou o problema é no onKill, não no script do preparedeath.

Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá!

"Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

Link para o post
Compartilhar em outros sites

entendi, mais acho que se eu mexer nele pode dar problema em outro script que faca o uso do mesmo não ?

 

olha só eu andei pesquisando e encontrei um outro script que funcione ate melhor do que esse meu ai, na verdade e do jeito que eu precisava. porem ele e em talkaction eu queria ele em spell, você poderia modifica-lo para spell para mim mano ? eu testei e ele funciona, porem tem um bug, quando o monster mais forte o Werewolf e sumonado ele vem CONTRA mim e não ao meu comando. Eu só queria que funcionasse como ta no script. de acordo com o level vem um Wolf mais forte. e se você puder incrementar para o monster vim com um speed maior igual da a life ai seria legal se puder ajudar. segue abaixo o post. Desculpe pela amolação. 

 

 

 

-- utevorex.lua

 

 

 

 

 

 

 

 

 

 

 


local configs = {
vocs = {3, 7}, -- vocações permitidas usar
limite = 2, -- limite de summons
m = {
["70-200"] = {monster = "Wolf", health = 1000, mana=500},
["201-300"] = {monster = "War Wolf", health = 1000, mana=500},
["301-400"] = {monster = "Werewolf", health = 1000, mana=500},
}
}
-- [dolevel-atéolevel] = {nome do monstros, vida dele, e mana usada pra sumonar}

function onSay(cid, words)
if isInArray(configs.vocs, getPlayerVocation(cid)) then
local tsummon = getTable(cid)
if tsummon ~= nil then
if getPlayerMana(cid) < tsummon.mana then
return doPlayerSendCancel(cid, "You dont have mana.")
end
if #getCreatureSummons(cid) == configs.limite then
return doPlayerSendCancel(cid, "You have reached the limit of summons.")
end
sm = doSummonCreature(tsummon.monster, getThingPosition(cid))
doConvinceCreature(cid, sm)
setCreatureMaxHealth(sm, tsummon.health)
doCreatureAddHealth(sm, tsummon.health)
doCreatureAddMana(cid, -tsummon.mana)
else
doPlayerSendCancel(cid, "You dont have level to use this spell.")
end
else
doPlayerSendCancel(cid, "Your vocation can not use this spell.")
end
return true
end

function getTable(cid)
for i, x in pairs(configs.m) do
local tb = string.explode(i)
if getPlayerLevel(cid) >= tonumber(tb[1]) and getPlayerLevel(cid) <= tonumber(tb[2]) then
tab = x
end
end
return tab
end

 

 

 

 

 

 

 

 

  •  
    -- utevorex.lua
  •  
    local
    configs
    =
     
    {
  •  
    vocs
    =
     
    {
    3
    ,
     
    7
    }
    ,
     
    -- vocações permitidas usar
  •  
    limite
    =
     
    2
    ,
     
    -- limite de summons
  •  
    m
    =
     
    {
  •  
    [
    "70-200"
    ]
     
    =
     
    {
    monster
    =
     
    "Wolf"
    ,
    health
    =
     
    1000
    ,
    mana
    =
    500
    }
    ,
  •  
    [
    "201-300"
    ]
     
    =
     
    {
    monster
    =
     
    "War Wolf"
    ,
    health
    =
     
    1000
    ,
    mana
    =
    500
    }
    ,
  •  
    [
    "301-400"
    ]
     
    =
     
    {
    monster
    =
     
    "Werewolf"
    ,
    health
    =
     
    1000
    ,
    mana
    =
    500
    }
    ,
  •  
    }
  •  
    }
  •  
    -- [dolevel-atéolevel] = {nome do monstros, vida dele, e mana usada pra sumonar}
  •  
    function
    onSay
    (
    cid
    ,
    words
    )
  •  
     
    if
    isInArray
    (
    configs
    .
    vocs
    ,
    getPlayerVocation
    (
    cid
    )
    )
     
    then
  •  
     
    local
    tsummon
    =
    getTable
    (
    cid
    )
  •  
     
    if
    tsummon
    ~=
     
    nil
     
    then
  •  
     
    if
    getPlayerMana
    (
    cid
    )
     
    <
    tsummon
    .
    mana
    then
  •  
     
    return
    doPlayerSendCancel
    (
    cid
    ,
     
    "You dont have mana."
    )
  •  
     
    end
  •  
     
    if
     
    #
    getCreatureSummons
    (
    cid
    )
     
    ==
    configs
    .
    limite
    then
  •  
     
    return
    doPlayerSendCancel
    (
    cid
    ,
     
    "You have reached the limit of summons."
    )
  •  
     
    end
  •  
    sm
    =
    doSummonCreature
    (
    tsummon
    .
    monster
    ,
    getThingPosition
    (
    cid
    )
    )
  •  
    doConvinceCreature
    (
    cid
    ,
    sm
    )
  •  
    setCreatureMaxHealth
    (
    sm
    ,
    tsummon
    .
    health
    )
  •  
    doCreatureAddHealth
    (
    sm
    ,
    tsummon
    .
    health
    )
  •  
    doCreatureAddMana
    (
    cid
    ,
     
    -
    tsummon
    .
    mana
    )
  •  
     
    else
  •  
    doPlayerSendCancel
    (
    cid
    ,
     
    "You dont have level to use this spell."
    )
  •  
     
    end
  •  
     
    else
  •  
    doPlayerSendCancel
    (
    cid
    ,
     
    "Your vocation can not use this spell."
    )
  •  
     
    end
  •  
     
    return
     
    true
  •  
    end
  •  
    function
    getTable
    (
    cid
    )
  •  
     
    for
    i
    ,
    x
    in
     
    pairs
    (
    configs
    .
    m
    )
     
    do
  •  
     
    local
    tb
    =
     
    string
    .
    explode
    (
    i
    )
  •  
     
    if
    getPlayerLevel
    (
    cid
    )
     
    >=
     
    tonumber
    (
    tb
    [
    1
    ]
    )
     
    and
    getPlayerLevel
    (
    cid
    )
     
    <=
     
    tonumber
    (
    tb
    [
    2
    ]
    )
    then
  •  
    tab
    =
    x
  •  
     
    end
  •  
     
    end
  •  
     
    return
    tab
  •  
    end
  •  
    -- tag: <talkaction words="utevo rex" filter="word-spaced" event="script" value="utevorex.lua"/>
 
Editado por brufds (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por Jaurez
      .
    • Por Cat
      Em alguns casos, o tibia 8.60 comum não abre de jeito nenhum no map editor, mesmo desmarcando check file signatures e configurando o path corretamente.
       
      Este é o client 8.60 adaptado para o Remere's Map Editor. Resolvi postar já que ele foi removido do site oficial do RME. (ficou apenas a versão para linux lá)
      Se estiver tendo problemas para abrir a versão 8.60, tente utilizar este.
                                                                                                                     
      Baixar o Tibia Client 8.60 que funciona no Remere’s Map Editor
      Essa versão do Tibia 8.60 client resolve o erro unsupported client version ou Could not locate tibia.dat and/or tibia.spr, please navigate to your tibia 8.60 installation folder.
       
      Downloads
      https://tibiaking.com/applications/core/interface/file/attachment.php?id=47333

      Scan: https://www.virustotal.com/gui/file/333e172ac49ba2028db9eb5889994509e7d2de28ebccfa428c04e86defbe15cc
       
    • Por danilo belato
      Fala Galera To Com um problema aki 
       
      quero exporta umas sprites de um server para colocar em outro 
       
      eu clico na sprites ai aparece tds a forma delas do lado de la >>
       
      ai eu clico nela e ponho a opiçao de export mais quando salvo a sprite ela n abri 
       
      aparece isso quando tento vê-la 
       
      visualização não disponível ( no formatos png e bitmap)
       
      Agora no formato idc fala que o paint n pode ler 
       
      me ajudem ae...
    • Por Vitor Bicaleto
      Galera to com o script do addon doll aqui, quando eu digito apenas "!addon" ele aparece assim: Digite novamente, algo está errado!"
      quando digito por exemplo: "!addon citizen" ele não funciona e não da nenhum erro
       
      mesma coisa acontece com o mount doll.. 
    • Por Ayron5
      Substitui uma stone no serve, deu tudo certo fora  esse  erro ajudem  Valendo  Rep+  Grato  

      Erro: data/actions/scripts/boost.lua:557: table index is nil
       [Warning - Event::loadScript] Cannot load script (data/actions/scripts/boost.lua)

      Script:
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo