Sistema De Forja

pablo361
em Actions e Talkactions
  • 1
  • 2

pablo361

;D
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 15/04/08Posts: 24

Meu Novo sistema de Forja,
Procurei aqui no Xtibia e não achei um Sistema de Forja Completo e Facil de Configurar.
Meu Segundo Script *-*

Versão Testada: TFS 0.4 (8.60)
Sistema de Forja V1.0
Vamos la

Video:




em Actions.xml Adicione:
<action uniqueid="16451" event="script" value="forjar.lua" />



Crie um Arquivo LUA em Actions>Scripts com o nome de "forjar.lua" e adicione isso dentro:

function onUse(cid, item, item2, frompos, topos, pos)local config = {["Magic Plate Armor"] = {t1=2476,t2=2464,t3=2472}, -- t1 = ID do ITEM 1 |---| t2 = ID do ITEM 2 |---| t3 = ID do ITEM a ser FORJADO --["Dragon Scale Mail"] = {t1=2489,t2=2487,t3=2492},}local r1 = {x = 222, y = 217, z = 7, stackpos= 2} -- Posição 1 ( NÃO MEXA NO stackpos= 2 )local r2 = {x = 224, y = 217, z = 7, stackpos= 2} -- Posição 2 ( NÃO MEXA NO stackpos= 2 )local r3 = {x = 223, y = 217, z = 7} -- Posição do Item a Ser Criadolocal q1 = getThingfromPos(r1)local q2 = getThingfromPos(r2)for i, x in pairs(config) doif (q1.itemid == x.t1 and q2.itemid == x.t2) or (q1.itemid == x.t2 and q2.itemid == x.t1) thendoRemoveItem(q1.uid, 1)doRemoveItem(q2.uid, 1)addEvent(doCreateItem, 1000, x.t3, 1, r3)doSendMagicEffect(r3, 47)addEvent(doSendMagicEffect, 900, r3, 39)doPlayerSendTextMessage(cid, 22, "Parabéns, Você Forjou Um " .. i .. ".")breakendendreturn TRUEend



na Alavanca Colocar a UniqueID: 16451

Configurando:
["Magic Plate Armor] = {t1=2476,t2=2464,t3=2472},

Vermelho: Nome do Item a Ser Forjado
Azul: ID do Item1 necessário para forjar o item Vermelho
Roxo: ID do Item2 necessário para forjar o item Vermelho
Verde: ID do Item Vermelho

Você Também Pode Adicionar Novas "Receitas" para Forjas !!
Só Adicionar só 1 Linha a Mais Iguais a Outras mudando as Configurações

Posição:
local r1 = {x = 222, y = 217, z = 7, stackpos= 2} -- Posição do Item1 ( NÃO MEXA NO stackpos= 2 )
local r2 = {x = 224, y = 217, z = 7, stackpos= 2} -- Posição do Item2 ( NÃO MEXA NO stackpos= 2 )
local r3 = {x = 223, y = 217, z = 7} -- Posição do Item Vermelho


Talkaction para mostrar os Itens de Forja

talkactions.xml Adicione isso:

<talkaction words="!forjas" script="forjas.lua"/>



Crie um arquivo forjas.lua na pasta talkactions>scripts e adicione isso dentro:

function onSay(cid, words, param)file = io.open('forjas.txt','r')notice = file:read(-1)doShowTextDialog(cid,9004,notice)file:close()end



Agora na Pasta Principal do Seu OT, onde tem a pasta DATA, as DLLs e o .exe do seu ot
Crie um Arquivo .txt ( arquivo de texto ), renomeie para forjas.txt

e dentro dele adicione os materiais de Forjas para os seus Players não se perderem.


Bom é Isso, Gostou ? REP+ =)

Aprendii usar in pairs(table) *--*
Créditos: Eu Pelo Script, Idéia sei la quem teve '-', e aos meus amigos que estão me ajudando bastante =)

Att.

Pablo Schuab

victorpuntel

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 03/11/10Posts: 47Char no Tibia: Victor Dracul

Este sistema é parecido com o de Fusao de Itens, porem, com uma facilidade muito maior para edita-lo.

Otimo script, parabens =)

darkvelocityfanbar2.png

pablo361

;D
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 15/04/08Posts: 24

é, essa foi minha idéia, pois sabia que ja existia um script semelhante a este,

só que não tinha complexidade para configurar...

então criei esse =)

Att.

Pablo Schuab

milbradt

Desativado
avatar
Cavaleiro
Cavaleiro

INFOS

Grupo: CavaleiroRegistrado: 04/12/09Posts: 188

Muito Bom Pablo, está de Parabens ^^

 

Eu Ainda Vou aprender como fazer scripts :tongue2:

 

Rep :button_ok:

Site NtoUltimate:

www.ntoultimate.com.br

elitevini

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 11/05/11Posts: 31

sera q teria como fazer para colocar todos os itens da formula para só precisar de 1 sqm ? q eu queria fazer mais de 2 itens para fusão queria poder colocar 6 itens da formula em 1 sqm sera q tem como ?

749676

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 17/04/09Posts: 22Char no Tibia: tharkus

muito bom msm, parabens !

felipefioravanti

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 04/08/11Posts: 16Char no Tibia: Sefirote

talkactions nem pego :/

 

 [17/08/2011 15:11:18] data/talkactions/scripts/forjas.lua:3: attempt to index global 'file' (a nil value)
[17/08/2011 15:11:18] stack traceback:
[17/08/2011 15:11:18] 	data/talkactions/scripts/forjas.lua:3: in function <data/talkactions/scripts/forjas.lua:1> 

 

EDIT- deixa pra lá , eu que tinha feito errado :D

 

REP+,obrigado

angeldoido

Maatador
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 23/11/10Posts: 272Char no Tibia: N tenho

styflerzin

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 12/08/11Posts: 8Char no Tibia: Nidi Pahci

como faz pra determinar uma quantidade de item?

por exemplo:

25 red piece of cloth

angeldoido

Maatador
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 23/11/10Posts: 272Char no Tibia: N tenho

como faz pra determinar uma quantidade de item?

por exemplo:

25 red piece of cloth

 

facil cara so coloka assim {t1=2476,25,

 

acho q é assim no casso id 2476 e presissa ter 25 '-'

 

n sei se vai da acho q é assim

styflerzin

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 12/08/11Posts: 8Char no Tibia: Nidi Pahci

Obrigado :D

mas agora, eu to com outra duvida :S

o item q eu vo usar pra fusao é um liquido.

Vial of Milk.

o id dele é 2006

igual qualquer outro liquido q venha em vials...

descobri q para criar ele eu presiso digitar /i 2006,6,5

dai eu coloquei ele pra dropar dos monstros e tals.. pelo id 2006,6,5

mas o mostro dropa um vial vazio...

entao provavelmente... se alguem colocar um vial vazio na hora da fusão, vai dar certo?

outra coisa... (fugindo do tópico), como eu coloco esse item pra ficar "agrupavel"?

angeldoido

Maatador
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 23/11/10Posts: 272Char no Tibia: N tenho

Obrigado :D

mas agora, eu to com outra duvida :S

o item q eu vo usar pra fusao é um liquido.

Vial of Milk.

o id dele é 2006

igual qualquer outro liquido q venha em vials...

descobri q para criar ele eu presiso digitar /i 2006,6,5

dai eu coloquei ele pra dropar dos monstros e tals.. pelo id 2006,6,5

mas o mostro dropa um vial vazio...

entao provavelmente... se alguem colocar um vial vazio na hora da fusão, vai dar certo?

outra coisa... (fugindo do tópico), como eu coloco esse item pra ficar "agrupavel"?

Certamente se coloka 1 pod ser q funciona sim pq vc quer liquido cheio e no id ele ta vazio, bom agora n sei tenta ae

wesleykun

Cavaleiro (warrior)
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 22/09/10Posts: 23Char no Tibia: PoYsoneR

Teria como colocar 3 itens para fundir

 

exemplo: iron ore+hammer+staff= War hammer

 

se tiver me passa o script

Meus Trabalhos

 

 

Flower City v.0.2

Pyramid 1.1

House 1.0

Flower City v 0.3 (Em breve)

Cavezinha

 

 

Patch da Flower City:

Expansion no Map

Porto

Hunts

andersoncaetano

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 19/10/11Posts: 2Char no Tibia: Andersoon

Affs aki eu nao consegui

;(:

Oneshot

avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 05/07/09Posts: 1347

Nada mal, o código está bem básico. Gostei que você usou tabelas, for e pairs().

 

É realmente muito chato esse negócio de stackpos, sugiro que você use a função getTileItemById(), os resultados são bem melhores, pois ela verifica se tal item existe em todos os stackpos de um tile, sendo não necessária a especificação de um.

 

Seu script pode ser encurtado ainda mais para a função que ele desempenha. Estude um pouco mais, há uma maneira de substituir isso:

 

if (q1.itemid == x.t1 and q2.itemid == x.t2) or (q1.itemid == x.t2 and q2.itemid == x.t1) then

 

Tornando o script mais dinâmico.

 

Um abraço

  • 1
  • 2