Ir para conteúdo
  • 0

Maquina de scripter -- Derivados é Tibia


kttallan

Pergunta

Ola venho o motivo que criei esse topico é para ajudar é tentar treinar mais minha capacidade de scripter para fazer um pedido de scripter siga o protocolo abaixo para á ajuda de correção de erro tabem siga o protocolo entregarei o trabalho no maximo possivel.

 

Como Fazer Um Pedido De Scripter

 

 

 

Preecha o Seguinte Formulario

 

Função Do Scripter : Assim Ele Passarar Pelo Tile é Ganharar 5000 k.

Servidor utilizado: Tibia Derivados..

Contem Storage : Sim ou Não

 

 

 

 

Como Fazer Procurar A Solução De Tal Erro !

 

 

 

Preencha Seguinte Formulario

 

Qual Servidor Foi Testado : Alissow

Qual Erro Persinste : Poste o Erro Aki

Qual Version : 8.54

 

 

 

 

 

Observação : Seguinte Entregarei o Scripter quando der Caso Não consiga fazer aviso , Para akeles que querem ajudar aceitaria de bom grato a ajuda de algumas pessoas :)

 

Tem como tirar esse negocio de pedido pois tinha que usar um desses. é os scripter não estarar posivel fazer scripter de spell pois não cheguei a essa area.

Editado por kttallan
Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0

 

 

 

function onUse(cid, item, frompos, item2, topos)

if getTilePzInfo(getCreaturePosition(cid)) == TRUE then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce Nao Pode Usar Enquanto Estiver Em Protect Zone.")return true
end
if (getPlayerStorageValue(cid, 11548) >= os.time()) then
doPlayerSendTextMessage(cid, 6,"Por medidas de segurança você só pode utilizar este comando em " ..
(getPlayerStorageValue(cid, 11548)-os.time()+(0)) .. " segundos.")
return TRUE
end
storage = 4191
storsol = 1203
if #getCreatureSummons(cid) > 1 then
doPlayerSendCancel(cid,"Your Demonio is already summoned.")
end
if getPlayerStorageValue(cid,storsol) == 1 then
local z = getCreatureSummons(cid)[1]
addEvent(setPlayerStorageValue,100,cid,storsol,-1)
doPlayerSay(cid,"Back my summon!",TALKTYPE_ORANGE_1)
doSendMagicEffect(getCreaturePosition(z), 2)
doSendDistanceShoot(getCreaturePosition(z), getPlayerPosition(cid), 3)
doRemoveCreature(z)
end
local summons = getCreatureSummons(cid)
local pet = {
["Bug"] = {1,250},
["Death Blob"] = {251,1500},
["Worker golem"] = {1501,5000},
["werewolf"] = {5001,9999},
["Mercury Blob"] = {10000,15000},
["Flufly"] = {15001,23000},
["haunted treeling"] = {23001,30000},
["Vampire Bride"] = {30001,40000},
["Grim Reaper"] = {40001,55000},
["Zombie"] = {55001,80000},
["Azure Frog"] = {80001,400000}
}
for k,v in pairs(pet) do -- 1
if getPlayerStorageValue(cid,storsol) < 1 then
if getPlayerLevel(cid) >= v[1] and getPlayerLevel(cid) < v[2] then -- 2
if (table.maxn(summons) < 1)then -- 3
x = doSummonCreature(k, getCreaturePosition(cid))
doConvinceCreature(cid, x)
setPlayerStorageValue(cid,4194,1)
setPlayerStorageValue(cid,11548,os.time()+30)
setPlayerStorageValue(cid,storsol,1)
doCreatureSay(cid, k ..", go!", TALKTYPE_ORANGE_1)
doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 2)
end
end
end
return true
end

Kttallan o one shot fez o script primeiro que você, mais obrigado mesmo assim, vou te dar um rep+ quando puder

esse outro spoiler é um sistema de clone, ele é mods, sempre que eu mato o clone aparece 1 erro no distro na parte de remover, aparece um erro dizendo que o monstro nao esta vivo para remover.... teria como vc remover esse erro? ou tirar a funçao remover summon desse script? obrigado, agradeço desde ja!

e se possivel tambem colokar para só 1 classe especifica usar o script nossa ajudaria muitoooooooo muito mesmo! vlw *-*

 

 

<?xml version="1.0" encoding="iso-8859-1"?>
<mod name="Clone System" version="1.0" author="Draky Lucas" contact="XTibia" enabled="yes">
<config name="configuracao_clone"><![CDATA[
config = {
tempo = 5*60*1000, -- em milisegundos, pra remover o clone (está 2 minutos)
name = "Clone", -- nao mecha
mana = 2000000, -- mana que precisa pra sumonar
}
function sumonar(cid,name)
doPlayerAddMana(cid,-config.mana)
doPlayerSendTextMessage(cid,19,"Seu clone sera removido em 5 minutos")
local summon = doSummonCreature(name,getCreaturePosition(cid))
doSetCreatureOutfit(summon, getCreatureOutfit(cid), -1)
doChangeSpeed(summon,-getCreatureSpeed(summon) + getCreatureBaseSpeed(cid))
setCreatureMaxHealth(summon,getCreatureMaxHealth(cid))
doCreatureAddHealth(summon,-getCreatureHealth(summon) + getCreatureHealth(cid))
doConvinceCreature(cid,summon)
registerCreatureEvent(cid,"clone")
registerCreatureEvent(cid,"clonecombat")
registerCreatureEvent(cid,"cloneoutfit")
addEvent(removerclone,config.tempo,cid)
end
function removerclone(cid)
if not isCreature(cid) then return true end
if #getCreatureSummons(cid) > 0 then
if getCreatureName(getCreatureSummons(cid)[1]) == config.name then
doRemoveCreature(getCreatureSummons(cid)[1])
doPlayerSendTextMessage(cid,19,"Seu clone foi descansar!")
end
end
unregisterCreatureEvent(cid,"clone")
unregisterCreatureEvent(cid,"clonecombat")
unregisterCreatureEvent(cid,"cloneoutfit")
return true
end
]]></config>
<talkaction words="/clone" event="buffer"><![CDATA[
domodlib("configuracao_clone")
if #getCreatureSummons(cid) >= 1 then
return doPlayerSendCancel(cid,"voce nao pode ter summons para se clonar")
end
if getTilePzInfo(getCreaturePosition(cid)) then
return doPlayerSendCancel(cid,"Voce nao pode se clonar em protection zone!")
end
if getPlayerMana(cid) < config.mana then
return doPlayerSendCancel(cid,"Voce precisa de ".. config.mana .. " de mana para se clonar!")
end
sumonar(cid,config.name)
]]></talkaction>
<event type="statschange" name="clone" event="buffer"><![CDATA[
domodlib('configuracao_clone')
-- function onStatsChange(cid, attacker, type, combat, value)
if #getCreatureSummons(cid) < 1 or getCreatureName(getCreatureSummons(cid)[1]) ~= config.name then
unregisterCreatureEvent(cid,"clone")
unregisterCreatureEvent(cid,"clonecombat")
unregisterCreatureEvent(cid,"cloneoutfit")
return true
end
if type == STATSCHANGE_HEALTHGAIN then
doTargetCombatHealth(cid, getCreatureSummons(cid)[1], combat, value, value, 12)
end
-- return true
-- end
]]></event>
<event type="combat" name="clonecombat" event="buffer"><![CDATA[
domodlib('configuracao_clone')
-- function onCombat(cid,target)
if #getCreatureSummons(cid) < 1 or getCreatureName(getCreatureSummons(cid)[1]) ~= config.name then
unregisterCreatureEvent(cid,"clone")
unregisterCreatureEvent(cid,"clonecombat")
unregisterCreatureEvent(cid,"cloneoutfit")
return true
end
if target ~= cid then
registerCreatureEvent(target, "clonestats")
end
-- return true
-- end
]]></event>
<event type="statschange" name="clonestats" event="buffer"><![CDATA[
domodlib('configuracao_clone')
-- function onStatsChange(cid, attacker, type, combat, value)
if type == STATSCHANGE_HEALTHLOSS and #getCreatureSummons(attacker) > 0 and getCreatureName(getCreatureSummons(attacker)[1])== config.name then
return doTargetCombatHealth(getCreatureSummons(attacker)[1], cid, combat, -value, -value, 3)
end
-- return true
-- end
]]></event>
<event type="outfit" name="cloneoutfit" event="script"><![CDATA[
domodlib('configuracao_clone')
if #getCreatureSummons(cid) < 1 or getCreatureName(getCreatureSummons(cid)[1]) ~= config.name then
unregisterCreatureEvent(cid,"clone")
unregisterCreatureEvent(cid,"clonecombat")
unregisterCreatureEvent(cid,"cloneoutfit")
else
doSetCreatureOutfit(getCreatureSummons(cid)[1], current, -1)
end
return true
]]></event>
</mod>

 

eu fiz um novo akele sistema que vocé pediu via talkaction

 

vá em data/talkaction/scripter , crie um arquivo lua é coloque isso dentro

 

 

 

function onSay(cid, words, param)

 

local vocation = 1 -- id da vocation

 

pet = {

monster = "Demon", Level = 50,

monster = "NomePET", Level = LevelPlayer

}

if getCreatureSummons(cid) > os.time () then

doPlayerSendCancel(cid, "Espere Um Tempinho Para Resumonar o monster")

return TRUE

end

 

if isPlayerPzLocked(cid) then

doPlayerSendCancel(cid, "Vocé Estar Em Pez Zone Saia Dai Para Sumonar Seu Monster")

return TRUE

end

 

if not param or param == "" or #param < 1 then

doPlayerSendTextMessage(cid, 20, "[Pet Sistema] Pet Disponiveis são:")

 

for a, b in pairs(pet) do

doPlayerSendTextMessage(cid, 20, "- "..b.."")

end

 

return true

end

 

if param and not isInArray(cfg, param) then

doPlayerSendTextMessage(cid, 20, "[Pet Sistema] Não há esse pet aki")

return true

end

 

if getPlayerVocation(cid) == vocation then

doPlayerSendCancel(cid, "Vocé Não Tem a Vocation Correta")

return true

end

 

if getPlayerLevel(cid) >= pet.level then

doPlayerSendTextMessage(cid, 20, "Olhe o seu mascote é ["..param.."].")

doSummonMonster(pet.monster, getThingPos(cid), os.time () + 50)

end

return true

end

 

 

 

Configurando :

 

doSummonMonster(pet.monster, getThingPos(cid), os.time () + 50) aonde estar o 50 é o tempo em segundos que poderar sumonar entendeu

 

tenta aew é me meder resultado sobre o clone vou ver não sei mexer com mod.

 

Mod tenta esse mais não confirmo se pegou.

 

 

 

<?xml version="1.0" encoding="iso-8859-1"?>

<mod name="Clone System" version="1.0" author="Draky Lucas" contact="XTibia" enabled="yes">

 

<config name="configuracao_clone"><![CDATA[

 

config = {

name = "Clone", -- nao mecha

mana = 2000000, -- mana que precisa pra sumonar

}

 

function sumonar(cid,name)

doPlayerAddMana(cid,-config.mana)

doPlayerSendTextMessage(cid,19,"Seu clone sera removido em 5 minutos")

local summon = doSummonCreature(name,getCreaturePosition(cid))

doSetCreatureOutfit(summon, getCreatureOutfit(cid), -1)

doChangeSpeed(summon,-getCreatureSpeed(summon) + getCreatureBaseSpeed(cid))

setCreatureMaxHealth(summon,getCreatureMaxHealth(cid))

doCreatureAddHealth(summon,-getCreatureHealth(summon) + getCreatureHealth(cid))

doConvinceCreature(cid,summon)

registerCreatureEvent(cid,"clone")

registerCreatureEvent(cid,"clonecombat")

registerCreatureEvent(cid,"cloneoutfit")

end

 

unregisterCreatureEvent(cid,"clone")

unregisterCreatureEvent(cid,"clonecombat")

unregisterCreatureEvent(cid,"cloneoutfit")

return true

end

 

]]></config>

 

<talkaction words="/clone" event="buffer"><![CDATA[

domodlib("configuracao_clone")

if #getCreatureSummons(cid) >= 1 then

return doPlayerSendCancel(cid,"voce nao pode ter summons para se clonar")

end

 

if getTilePzInfo(getCreaturePosition(cid)) then

return doPlayerSendCancel(cid,"Voce nao pode se clonar em protection zone!")

end

 

if getPlayerMana(cid) < config.mana then

return doPlayerSendCancel(cid,"Voce precisa de ".. config.mana .. " de mana para se clonar!")

end

 

sumonar(cid,config.name)

 

]]></talkaction>

 

<event type="statschange" name="clone" event="buffer"><![CDATA[

domodlib('configuracao_clone')

-- function onStatsChange(cid, attacker, type, combat, value)

if #getCreatureSummons(cid) < 1 or getCreatureName(getCreatureSummons(cid)[1]) ~= config.name then

unregisterCreatureEvent(cid,"clone")

unregisterCreatureEvent(cid,"clonecombat")

unregisterCreatureEvent(cid,"cloneoutfit")

return true

end

if type == STATSCHANGE_HEALTHGAIN then

doTargetCombatHealth(cid, getCreatureSummons(cid)[1], combat, value, value, 12)

end

-- return true

-- end

]]></event>

 

<event type="combat" name="clonecombat" event="buffer"><![CDATA[

domodlib('configuracao_clone')

-- function onCombat(cid,target)

if #getCreatureSummons(cid) < 1 or getCreatureName(getCreatureSummons(cid)[1]) ~= config.name then

unregisterCreatureEvent(cid,"clone")

unregisterCreatureEvent(cid,"clonecombat")

unregisterCreatureEvent(cid,"cloneoutfit")

return true

end

if target ~= cid then

registerCreatureEvent(target, "clonestats")

end

-- return true

-- end

]]></event>

 

<event type="statschange" name="clonestats" event="buffer"><![CDATA[

domodlib('configuracao_clone')

-- function onStatsChange(cid, attacker, type, combat, value)

if type == STATSCHANGE_HEALTHLOSS and #getCreatureSummons(attacker) > 0 and getCreatureName(getCreatureSummons(attacker)[1])== config.name then

return doTargetCombatHealth(getCreatureSummons(attacker)[1], cid, combat, -value, -value, 3)

end

-- return true

-- end

]]></event>

 

<event type="outfit" name="cloneoutfit" event="script"><![CDATA[

domodlib('configuracao_clone')

if #getCreatureSummons(cid) < 1 or getCreatureName(getCreatureSummons(cid)[1]) ~= config.name then

unregisterCreatureEvent(cid,"clone")

unregisterCreatureEvent(cid,"clonecombat")

unregisterCreatureEvent(cid,"cloneoutfit")

else

doSetCreatureOutfit(getCreatureSummons(cid)[1], current, -1)

end

return true

]]></event>

 

</mod>

 

 

 

Editado por kttallan
Link para o comentário
Compartilhar em outros sites

  • 0

ok vou testar! tomare que de certo


[error - talkaction interface]
data/talkactions/scripts/pet.lua:onsay
description:
data/talkaction/scripts/pet.lua:10: attempt to compare number with table stack traceback
data/talkactions/scripts/pet.lua:10: in function <data/talkactions/scripts/pet.lua:1>

acontece esse erro ai.
Link para o comentário
Compartilhar em outros sites

  • 0

 

ok vou testar! tomare que de certo

[error - talkaction interface]
data/talkactions/scripts/pet.lua:onsay
description:
data/talkaction/scripts/pet.lua:10: attempt to compare number with table stack traceback
data/talkactions/scripts/pet.lua:10: in function <data/talkactions/scripts/pet.lua:1>

acontece esse erro ai.

 

 

 

function onSay(cid, words, param)

 

local vocation = 1 -- id da vocation

 

local pet = {

["Demon"] = { Level = 50}

}

 

local pt = pet[getCreatureName]

 

if getCreatureSummons(cid) > os.time () then

doPlayerSendCancel(cid, "Espere Um Tempinho Para Resumonar o monster")

return TRUE

end

 

if isPlayerPzLocked(cid) then

doPlayerSendCancel(cid, "Vocé Estar Em Pez Zone Saia Dai Para Sumonar Seu Monster")

return TRUE

end

 

if not param or param == "" or #param < 1 then

doPlayerSendTextMessage(cid, 20, "[Pet Sistema] Pet Disponiveis são:")

 

for a, b in pairs(pet) do

doPlayerSendTextMessage(cid, 20, "- "..b.."")

end

 

return true

end

 

if param and not isInArray(cfg, param) then

doPlayerSendTextMessage(cid, 20, "[Pet Sistema] Não há esse pet aki")

return true

end

 

if getPlayerVocation(cid) == vocation then

doPlayerSendCancel(cid, "Vocé Não Tem a Vocation Correta")

return true

end

 

if getPlayerLevel(cid) >= pet.level then

doPlayerSendTextMessage(cid, 20, "Olhe o seu mascote é ["..param.."].")

doSummonMonster(pt, getThingPos(cid), os.time () + 50)

end

return true

end

 

 

Link para o comentário
Compartilhar em outros sites

  • 0

Função Do Scripter : usar um certo item, aparece uma criatura ...(exemplo card uso ele em um pokemon morto e aparece um shiny dele! vivo para tentar capturarmatar e capturar) acho que é action e so falta a lua pois eu ponho um do la so que precisa colcoar position do monstro (queria que ele nasce perto da onde dei use)!!


Servidor utilizado: pokemon da


Contem Storage : nao sei oq e storage


Link para o comentário
Compartilhar em outros sites

  • 0

fmz mano flws boa noite :*

 

 

function onSay(cid, words, param)
 
 local vocation = 1 -- id da vocation
 
 local p = pet[string.lower(param)]

 local pet = {
  ["Demon"] = {l = 50} -- para criar novas tab copie e cola ["monster"] = {l = Level}
 }

 if not param or param == "" or #param < 1 or not p then
  doPlayerSendTextMessage(cid, 20, "[Pet Sistema] Pet Disponiveis são:")

  for a, b in pairs(pet) do
   doPlayerSendTextMessage(cid, 20, "- "..b.."")
  end

  return true
 end
 
 if getPlayerStorageValue(cid, 18159) > os.time() then
  return doPlayerSendCancel(cid, "Espere Um Tempinho Para Resumonar o monster")
 end

 if not isPlayerPzLocked(cid) then
  return doPlayerSendCancel(cid, "Vocé Estar Em Pez Zone Saia Dai Para Sumonar Seu Monster")
 end

 if getPlayerVocation(cid) ~= vocation then
  return doPlayerSendCancel(cid, "Vocé Não Tem a Vocation Correta")
 end

 if getPlayerLevel(cid) < p.l then
  return doPlayerSendCancel(cid, "Você precisa ter level "..p.l..".")
 end

 doSummonMonster(param, getThingPos(cid))
 doPlayerSendTextMessage(cid, 20, "Olhe o seu mascote é o ["..param.."].")
 setPlayerStorageValue(cid, 18159 , os.time +50)
 return true
end

 

 

 

setPlayerStorageValue(cid, 18159 , os.time +50) 50 é os segundos que poderar usar a talk

 

Função Do Scripter : usar um certo item, aparece uma criatura ...(exemplo card uso ele em um pokemon morto e aparece um shiny dele! vivo para tentar capturarmatar e capturar) acho que é action e so falta a lua pois eu ponho um do la so que precisa colcoar position do monstro (queria que ele nasce perto da onde dei use)!!

Servidor utilizado: pokemon da

Contem Storage : nao sei oq e storage

 

Fazendo amigo é storage é um valor caso queira usa novamente a pedra algo do tipo.

 

Aki.

 

 

 

function onUse(cid, item, topos, item2, frompos)

 

local big = {

[12589] = { pos = {x=1567, y=4566, z=7}}

-- [ACTION ID DA PEDRA] = { pos = { POSIÇÃO PARA AONDE VAI SER TELEPORTADO}}

}

 

local p = big[action.id]

 

doTeleportThing(p.pos)

doSendMagicEffect(getThingPos(cid), 17)

return true

end

 

 

 

 

 

-- como fazer outra tabela ["ItemId"] = { Poke = "Pokemonnome"}

Editado por kttallan
Link para o comentário
Compartilhar em outros sites

  • 0

obg vou testar aqui!! kkk

tipo ponho isso em action lua?? e o id e oq o id do item que vai ser para usar neh??

Vocé cria um novo arquivo lua é coloque oq ta acima teste novamente atualizei

 

ai no action.xml vocé coloca isso aonde ta id é o id que tem no scripter no caso [5558] ai se for fazer outra tabela preecha com o item tbm assim 8888 e o item de outra tabela

<action itemid="5558;8888" event="script" value="nomedoscript.lua"/>

Link para o comentário
Compartilhar em outros sites

  • 0

Tipo: Creaturescript

Versão: 8.6

Nível: Fácil

Função: Criar uma function para não usar magias se estiver equipado alguma arma na mão: swords, rods, crossbow .. etc. Assim o player receberia uma mensagem informando que ele deve estar com as maõs vazias. Obs: ele pode utilizar shields.

 

No aguardo.

Link para o comentário
Compartilhar em outros sites

  • 0

Tipo: Creaturescript

Versão: 8.6

Nível: Fácil

Função: Criar uma function para não usar magias se estiver equipado alguma arma na mão: swords, rods, crossbow .. etc. Assim o player receberia uma mensagem informando que ele deve estar com as maõs vazias. Obs: ele pode utilizar shields.

 

No aguardo.

Em Contrução seu scripter

 

 

eita... não pegou!! tipo puis "12594" lá ai ali puis 12594 tbm no lua... so que nada acontece! e também não sumona nenhum monstro etc!

mals erro meu tenta esse aki dnv

 

 

 

function onUse(cid, item, topos, item2, frompos)

 

local pok = {

["5558"] = { Pokemon = "Arcanine"

-- como fazer outra tabela ["ItemId"] = { Pokemon = "Pokemonnome"

}}

 

local p = pok[item.id]

 

doCreateMonster(p.pokemon, getThingPos(cid))

doSendMagicEffect(getThingPos(cid), 17) -- 17 effect

return true

end

 

 

 

 

Tenta esse dnv erro meu confundi scritper

Link para o comentário
Compartilhar em outros sites

  • 0

Pedido:Quero um sistema de chuva chuvia normal,depois dava um vento e nesse vento dava clean mais sem apareçer a meesagem,tipo passo a chuva da um vento e leva tudo do chao levando os item ke dado clean

Server:PDA Pwo v1

Storage:axo ke não.

Link para o comentário
Compartilhar em outros sites

  • 0

Pedido:Quero um sistema de chuva chuvia normal,depois dava um vento e nesse vento dava clean mais sem apareçer a meesagem,tipo passo a chuva da um vento e leva tudo do chao levando os item ke dado clean

Server:PDA Pwo v1

Storage:axo ke não.

Ja existe esse sistema da uma passadinha na area de sistema é creatureevents que vocé verar eu ate instalei ele um dia aki nun serve.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...