Ir para conteúdo
  • 0

Action Treiner plx


Matheus36000

Pergunta

Bem, estou fazendo um mapa 8.6 ... Então quando estava editando a parte do treiner pensei nossa podia ter uma action q se o player desse um click na porta seria teleportador para dentro da sala de treinamento e um outro para sair , seria um legal e pratico . E como não sei fazer isso estou aqui por meio desse tópico pedindo a ajuda de quem sabe !

 

Obrigado desde já !

Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0

Aqui está o script do Baiakzik:

 

 

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

-- <beginning> Training Room script by Alreth.

-- Version 1.0, last edited 2006-06-02 17:39

-- Beginning of editable Variabels

aidNor = 4211 -- Action id for door where training room is north of door

aidSou = 4212 -- Action id for door where training room is south of door

aidWes = 4213 -- Action id for door where training room is west of door

aidEas = 4214 -- Action id for door where training room is east of door

-- End of editable Variabels

 

emptyRoom = true

charPos = getPlayerPosition(cid)

 

if (item.actionid == aidNor) then

if (charPos.y < frompos.y) then

othersidePos = {x=frompos.x, y=frompos.y+1, z=frompos.z}

else

othersidePos = {x=frompos.x, y=frompos.y-1, z=frompos.z, stackpos=253}

things = getThingfromPos(othersidePos)

if (things.itemid == 1) then

if (getPlayerLevel(things.uid) > 0) then

emptyRoom = false

end

end

end

 

elseif (item.actionid == aidSou) then

if (charPos.y > frompos.y) then

othersidePos = {x=frompos.x, y=frompos.y-1, z=frompos.z}

else

othersidePos = {x=frompos.x, y=frompos.y+1, z=frompos.z, stackpos=253}

things = getThingfromPos(othersidePos)

if (things.itemid == 1) then

if (getPlayerLevel(things.uid) > 0) then

emptyRoom = false

end

end

end

 

elseif (item.actionid == aidEas) then

if (charPos.x > frompos.x) then

othersidePos = {x=frompos.x-1, y=frompos.y, z=frompos.z}

else

othersidePos = {x=frompos.x+1, y=frompos.y, z=frompos.z, stackpos=253}

things = getThingfromPos(othersidePos)

if (things.itemid == 1) then

if (getPlayerLevel(things.uid) > 0) then

emptyRoom = false

end

end

end

 

elseif (item.actionid == aidWes) then

if (charPos.x < frompos.x) then

othersidePos = {x=frompos.x+1, y=frompos.y, z=frompos.z}

else

othersidePos = {x=frompos.x-1, y=frompos.y, z=frompos.z, stackpos=253}

things = getThingfromPos(othersidePos)

if (things.itemid == 1) then

if (getPlayerLevel(things.uid) > 0) then

emptyRoom = false

end

end

end

 

end

 

if (emptyRoom == true) then

doTeleportThing(cid, othersidePos)

doSendMagicEffect(charPos, 2)

doSendMagicEffect(frompos, 12)

doSendMagicEffect(othersidePos, 10)

 

else

doPlayerSendTextMessage(cid, 22, "O treiner esta ocupado.Por favor procure outro ou espere o player sair.")

end

-- <end> Training Room script by Alreth.

return 1

end

 

 

Só adicionar essas tags no Actions.XML

 

<action actionid="4211" script="treinerdoor.lua" />

<action actionid="4212" script="treinerdoor.lua" />

<action actionid="4213" script="treinerdoor.lua" />

<action actionid="4214" script="treinerdoor.lua" />

 

4211 , Para o norte

4212 , Para o Sull

4213 , Para o Oeste

4214 , Para o Leste

 

tutorialup.png

 

Duivda sanada ?

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

  • 0

Aqui está o script do Baiakzik:

 

 

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

-- <beginning> Training Room script by Alreth.

-- Version 1.0, last edited 2006-06-02 17:39

-- Beginning of editable Variabels

aidNor = 4211 -- Action id for door where training room is north of door

aidSou = 4212 -- Action id for door where training room is south of door

aidWes = 4213 -- Action id for door where training room is west of door

aidEas = 4214 -- Action id for door where training room is east of door

-- End of editable Variabels

 

emptyRoom = true

charPos = getPlayerPosition(cid)

 

if (item.actionid == aidNor) then

if (charPos.y < frompos.y) then

othersidePos = {x=frompos.x, y=frompos.y+1, z=frompos.z}

else

othersidePos = {x=frompos.x, y=frompos.y-1, z=frompos.z, stackpos=253}

things = getThingfromPos(othersidePos)

if (things.itemid == 1) then

if (getPlayerLevel(things.uid) > 0) then

emptyRoom = false

end

end

end

 

elseif (item.actionid == aidSou) then

if (charPos.y > frompos.y) then

othersidePos = {x=frompos.x, y=frompos.y-1, z=frompos.z}

else

othersidePos = {x=frompos.x, y=frompos.y+1, z=frompos.z, stackpos=253}

things = getThingfromPos(othersidePos)

if (things.itemid == 1) then

if (getPlayerLevel(things.uid) > 0) then

emptyRoom = false

end

end

end

 

elseif (item.actionid == aidEas) then

if (charPos.x > frompos.x) then

othersidePos = {x=frompos.x-1, y=frompos.y, z=frompos.z}

else

othersidePos = {x=frompos.x+1, y=frompos.y, z=frompos.z, stackpos=253}

things = getThingfromPos(othersidePos)

if (things.itemid == 1) then

if (getPlayerLevel(things.uid) > 0) then

emptyRoom = false

end

end

end

 

elseif (item.actionid == aidWes) then

if (charPos.x < frompos.x) then

othersidePos = {x=frompos.x+1, y=frompos.y, z=frompos.z}

else

othersidePos = {x=frompos.x-1, y=frompos.y, z=frompos.z, stackpos=253}

things = getThingfromPos(othersidePos)

if (things.itemid == 1) then

if (getPlayerLevel(things.uid) > 0) then

emptyRoom = false

end

end

end

 

end

 

if (emptyRoom == true) then

doTeleportThing(cid, othersidePos)

doSendMagicEffect(charPos, 2)

doSendMagicEffect(frompos, 12)

doSendMagicEffect(othersidePos, 10)

 

else

doPlayerSendTextMessage(cid, 22, "O treiner esta ocupado.Por favor procure outro ou espere o player sair.")

end

-- <end> Training Room script by Alreth.

return 1

end

 

 

Só adicionar essas tags no Actions.XML

 

<action actionid="4211" script="treinerdoor.lua" />

<action actionid="4212" script="treinerdoor.lua" />

<action actionid="4213" script="treinerdoor.lua" />

<action actionid="4214" script="treinerdoor.lua" />

 

4211 , Para o norte

4212 , Para o Sull

4213 , Para o Oeste

4214 , Para o Leste

 

tutorialup.png

 

Duivda sanada ?

Muito obrigado por me postar esse action vlw ! Vo testar aqui se der certo do um edit na minha resposta ...

 

 

Deu certo sim ... só q o treiner fica andando dentro dos sqm q tem na casa (sao 2 sqm) . Como eu faço pra ele ficar parado sem andar?

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

  • 0

vai no script do seu trainer (provavelmente training monk.xml) que fica na pasta data/monster e onde está escrito :

 

 

<monster name="training monk" nameDescription="a training monk" race="blood" experience="0" speed="0" manacost="0">

 

 

onde está o vermelho é a velocidade do monster, no caso está "0" que significa sem movimento ..

Link para o comentário
Compartilhar em outros sites

  • 0

vai no script do seu trainer (provavelmente training monk.xml) que fica na pasta data/monster e onde está escrito :

 

 

<monster name="training monk" nameDescription="a training monk" race="blood" experience="0" speed="0" manacost="0">

 

 

onde está o vermelho é a velocidade do monster, no caso está "0" que significa sem movimento ..

Vlw amigão vou fazer isso aqui obrigador por me ajudar !

Link para o comentário
Compartilhar em outros sites

  • 0

Duvida sanada ?

 

Opa já que você perguntou antes de te responder vou fazer outra aqueles action que você me passou precisa colocar todos eles no action.xml ? se precisar tenho q fazer copias daquele script ? de uma olha na primeira print desse tópico para ver o erro q deu ... http://www.xtibia.com/forum/topic/202318-erros-no-distro/page__fromsearch__1

Link para o comentário
Compartilhar em outros sites

  • 0

Sim precisa colocar todos no action.xml

ta mais precisa fazer mais q um script daqueles ?

 

 

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

-- <beginning> Training Room script by Alreth.

-- Version 1.0, last edited 2006-06-02 17:39

-- Beginning of editable Variabels

aidNor = 4211 -- Action id for door where training room is north of door

aidSou = 4212 -- Action id for door where training room is south of door

aidWes = 4213 -- Action id for door where training room is west of door

aidEas = 4214 -- Action id for door where training room is east of door

-- End of editable Variabels

emptyRoom = true

charPos = getPlayerPosition(cid)

if (item.actionid == aidNor) then

if (charPos.y < frompos.y) then

othersidePos = {x=frompos.x, y=frompos.y+1, z=frompos.z}

else

othersidePos = {x=frompos.x, y=frompos.y-1, z=frompos.z, stackpos=253}

things = getThingfromPos(othersidePos)

if (things.itemid == 1) then

if (getPlayerLevel(things.uid) > 0) then

emptyRoom = false

end

end

end

elseif (item.actionid == aidSou) then

if (charPos.y > frompos.y) then

othersidePos = {x=frompos.x, y=frompos.y-1, z=frompos.z}

else

othersidePos = {x=frompos.x, y=frompos.y+1, z=frompos.z, stackpos=253}

things = getThingfromPos(othersidePos)

if (things.itemid == 1) then

if (getPlayerLevel(things.uid) > 0) then

emptyRoom = false

end

end

end

elseif (item.actionid == aidEas) then

if (charPos.x > frompos.x) then

othersidePos = {x=frompos.x-1, y=frompos.y, z=frompos.z}

else

othersidePos = {x=frompos.x+1, y=frompos.y, z=frompos.z, stackpos=253}

things = getThingfromPos(othersidePos)

if (things.itemid == 1) then

if (getPlayerLevel(things.uid) > 0) then

emptyRoom = false

end

end

end

elseif (item.actionid == aidWes) then

if (charPos.x < frompos.x) then

othersidePos = {x=frompos.x+1, y=frompos.y, z=frompos.z}

else

othersidePos = {x=frompos.x-1, y=frompos.y, z=frompos.z, stackpos=253}

things = getThingfromPos(othersidePos)

if (things.itemid == 1) then

if (getPlayerLevel(things.uid) > 0) then

emptyRoom = false

end

end

end

end

if (emptyRoom == true) then

doTeleportThing(cid, othersidePos)

doSendMagicEffect(charPos, 2)

doSendMagicEffect(frompos, 12)

doSendMagicEffect(othersidePos, 10)

else

doPlayerSendTextMessage(cid, 22, "O treiner esta ocupado.Por favor procure outro ou espere o player sair.")

end

-- <end> Training Room script by Alreth.

return 1

end

 

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

  • 0

Duvida sanada, topico movido!

 

Sim precisa colocar todos no action.xml

ta mais precisa fazer mais q um script daqueles ?

 

Tô vendo como a dúvida está sanada, PiabetaMan01. Vá moderar a área a qual você coordena, colega.

Link para o comentário
Compartilhar em outros sites

  • 0

Duvida sanada, topico movido!

 

Sim precisa colocar todos no action.xml

ta mais precisa fazer mais q um script daqueles ?

 

Tô vendo como a dúvida está sanada, PiabetaMan01. Vá moderar a área a qual você coordena, colega.

 

atendendo reports,se não esta sanda mande um pm,se voltar a floodar o topico estarei tomando medidas mais serias!

 

Movido para pedidos e duvidas de scripiting a pedido do dono to topico!

Link para o comentário
Compartilhar em outros sites

  • 0

Comentarios desnecessarios no topico, vamos ajudar o matheus.

a duvida estava sanada até então que surgiu outra duvida do criador do topico.

prestem atenção, afinal, em momento algum o matheus disse q tava sanada sua duvida

Link para o comentário
Compartilhar em outros sites

  • 0

Comentarios desnecessarios no topico, vamos ajudar o matheus.

a duvida estava sanada até então que surgiu outra duvida do criador do topico.

prestem atenção, afinal, em momento algum o matheus disse q tava sanada sua duvida

 

Ajude voce pois já não vejo mais duvida .

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...