Ir para conteúdo
  • Cadastre-se

(Resolvido)[PEDIDO] - Alavanca System


Ir para solução Resolvido por Wise,

Posts Recomendados

Tipo, eu tenho 1 script aqui de alavanca, porém precisava de 1 que o char deve estar no sqm x pra ser teleportado.

 

Exemplo, vai ter o piso e a alavanca do lado, pra ser teleportado ao usar ela, precisa estar em cima do sqm, no meu script atual, qualquer sqm teleporta iausdhiuad

-- Script Made By: Sonkis (Gabriel Lisboa)
-- Start Config --
local topos = {x=1369, y=1026, z=8} -- Posição para onde o player será teleportado.
-- End Config --
 
function onUse(cid)
   if doTeleportThing(cid, topos) then
  doPlayerSendTextMessage(cid,20,"You have been teleported.") -- Mude o NAME para o nome do local que o player será teleportado.
 end
end

(1º) | [8.60] - Galaxy Server - Download

(2º) | [8.60] - Glorious Server - Download

(3º) | [8.60] - Epic Server - Download

Link para o post
Compartilhar em outros sites

ver se esse funciona

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


if item.itemid == 1945 then


player1pos = {x=595, y=928, z=2, stackpos=253} -- Piso Onde o Player Tem Que Ta
player1 = getThingfromPos(player1pos)




if isPlayer(player1.uid) then


nplayer1pos = {x=620, y=902, z=2, stackpos=253} -- piso onde sera levado o player do piso


doSendMagicEffect(player1pos,2)


doTeleportThing(player1.uid,nplayer1pos)


doSendMagicEffect(nplayer1pos,4)


doTransformItem(item.uid,1946)


else
doPlayerSendCancel(cid,"Voce prescisa estar no Tile para fazer a quest.") -- MSG que Ira aparece se caso n tivér niguem
return TRUE
end


elseif item.itemid == 1946 then
doTransformItem(item.uid,1945)
end
return TRUE
end

precisa colocar a alavanca ID 1945

 

Projeto/Serviços que desenvolvi durante esse Tempo.

[SERVIDOR] - NTO By Madara Rinnegan - Criado em 2014

Link para o post
Compartilhar em outros sites

Não funcionou, e nem deu erro, no actions xml eu uso esse actionid 2002 e coloquei na alavanca tb

Editado por jNo (veja o histórico de edições)

(1º) | [8.60] - Galaxy Server - Download

(2º) | [8.60] - Glorious Server - Download

(3º) | [8.60] - Epic Server - Download

Link para o post
Compartilhar em outros sites
  Em 03/01/2015 em 15:11, jNo disse:

Tipo, eu tenho 1 script aqui de alavanca, porém precisava de 1 que o char deve estar no sqm x pra ser teleportado.

Exemplo, vai ter o piso e a alavanca do lado, pra ser teleportado ao usar ela, precisa estar em cima do sqm, no meu script atual, qualquer sqm teleporta iausdhiuad

-- Script Made By: Sonkis (Gabriel Lisboa)-- Start Config --local topos = {x=1369, y=1026, z=8} -- Posição para onde o player será teleportado.-- End Config -- function onUse(cid)   if doTeleportThing(cid, topos) then  doPlayerSendTextMessage(cid,20,"You have been teleported.") -- Mude o NAME para o nome do local que o player será teleportado. endend
Mostrar mais  
local topos = {x=1369, y=1026, z=8}local frompos = {x=----,y=----,z=-} function onUse(cid)   if getPlayerPosition(cid, frompos) thendoTeleportThing(cid, topos)  doPlayerSendTextMessage(cid,20,"You have been teleported.") else doPlayerSendCancel(cid, 'Voce deve estar no piso para ser teleportado') endend
Fiz por celular, então não pude identar nem testar.

coloque as coordenadas do piso em ----

Editado por Caronte (veja o histórico de edições)

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


  Mostrar conteúdo oculto

 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites
  Em 03/01/2015 em 16:43, Caronte disse:
local topos = {x=1369, y=1026, z=8}local frompos = {x=----,y=----,z=-} function onUse(cid)   if getPlayerPosition(cid, frompos) thendoTeleportThing(cid, topos)  doPlayerSendTextMessage(cid,20,"You have been teleported.") else doPlayerSendCancel(cid, 'Voce deve estar no piso para ser teleportado') endend
Fiz por celular, então não pude identar nem testar.

coloque as coordenadas do piso em ----

 

Mostrar mais  

 

 

Deu erro aqui amigo.

 

KZzeHoi.png

(1º) | [8.60] - Galaxy Server - Download

(2º) | [8.60] - Glorious Server - Download

(3º) | [8.60] - Epic Server - Download

Link para o post
Compartilhar em outros sites
  • Solução
function onUse(cid, fromPos, toPos)
    pos = {x=123, y=456} -- de onde
    newpos = {x=1369, y=1026, z=8} -- para onde
    cpos = getCreaturePosition(cid)
    
    if cpos.x == pos.x and cpos.y == pos.y then
        doTeleportThing(cid, newpos)
        doSendMagicEffect(toPos, CONST_ME_TELEPORT)
        doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, 'You have been teleported.')
    else
        doPlayerSendCancel(cid, 'You need to stay in the correct floor to be teleported.')
    end
    
    return true
end

The corrupt fear us.

The honest support us.

The heroic join us.

Link para o post
Compartilhar em outros sites

testa ae

 

vermelho: posiçao que o player vai ser teleportado

verde: actionid da alavanca

azul: posiçao da onde ele vai ser teleportado

 

local t = {
    [4830] = {{x=100,y=100,z=1}, {x=200,y=200,z=1}},
    [4833] = {{x=100,y=100,z=1}, {x=200,y=200,z=1}}
}
function onUse(cid, item, fromPosition, itemEx, toPosition)
    if item.itemid == 1945 then
        local i = t[item.actionid]
        local v = getTopCreature(i[1]).uid
        if isPlayer(v) then
            doTeleportThing(v, i[2])
            doSendMagicEffect(i[1], CONST_ME_TELEPORT)
            doSendMagicEffect(i[2], CONST_ME_TELEPORT)
            doTransformItem(item.uid, 1946)
        else
            return doPlayerSendCancel(cid, 'Sorry, not possible.')
        end
    else
        return doTransformItem(item.uid, 1945)
    end
end

Editado por alissonfgp (veja o histórico de edições)

Argon-Online

 

Cast System, Reward System, Flash Client, Support Versão 12.30, All areas, Ferumbras Quest e muito mais...

 

https://www.facebook.com/positiveglobal

Versão: 12.30

________________________________________________________________________________
 

2222.jpg

Link para o post
Compartilhar em outros sites
  Em 03/01/2015 em 17:24, Suicide disse:
function onUse(cid, fromPos, toPos)
    pos = {x=123, y=456} -- de onde
    newpos = {x=1369, y=1026, z=8} -- para onde
    cpos = getCreaturePosition(cid)
    
    if cpos.x == pos.x and cpos.y == pos.y then
        doTeleportThing(cid, newpos)
        doSendMagicEffect(toPos, CONST_ME_TELEPORT)
        doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, 'You have been teleported.')
    else
        doPlayerSendCancel(cid, 'You need to stay in the correct floor to be teleported.')
    end
    
    return true
end
Mostrar mais  

 

Deu certo, só falto uma coordenada z= e  a ,, mais eu consegui entender e coloquei, funcionou certinho 

Editado por jNo (veja o histórico de edições)

(1º) | [8.60] - Galaxy Server - Download

(2º) | [8.60] - Glorious Server - Download

(3º) | [8.60] - Epic Server - Download

Link para o post
Compartilhar em outros sites
  Em 03/01/2015 em 20:31, jNo disse:

Deu certo, só falto uma coordenada z= e a ,, mais eu consegui entender e coloquei, funcionou certinho

Mostrar mais  

Não precisa. Do modo como fiz, só são verificadas as posições x e y.

Se não houver um outro item com o mesmo actionid/uniqueid em outros andares nas mesmas posições x e y, não precisa verificar a posição z.

The corrupt fear us.

The honest support us.

The heroic join us.

Link para o post
Compartilhar em outros sites
  Em 03/01/2015 em 20:42, Suicide disse:

Não precisa. Do modo como fiz, só são verificadas as posições X e Y.

Se não houver um outro item com o mesmo actionid/uniqueid em outros andares nas mesmas posições X e Y, não precisa verificar a posição Z.

Mostrar mais  

 

Achei que eu tinha entendido a programação, mais valeu, jaja libera os rep      :OKAY:

Editado por jNo (veja o histórico de edições)

(1º) | [8.60] - Galaxy Server - Download

(2º) | [8.60] - Glorious Server - Download

(3º) | [8.60] - Epic Server - Download

Link para o post
Compartilhar em outros sites
  Em 03/01/2015 em 20:44, jNo disse:
mais valeu, jaja libera os rep :OKAY:
Mostrar mais  

 

Relaxa, não precisa e não tem de quê.

Disponha.

The corrupt fear us.

The honest support us.

The heroic join us.

Link para o post
Compartilhar em outros sites

O meu ta errado por causa do fórum destruindo a formatação...

 

o certo seria:

local topos = {x=1369, y=1026, z=8}
local frompos = {x=----,y=----,z=-} 
function onUse(cid)
 if getPlayerPosition(cid, frompos) then
doTeleportThing(cid, topos) 
doPlayerSendTextMessage(cid,20,"You have been teleported.") 
else 
doPlayerSendCancel(cid, 'Voce deve estar no piso para ser teleportado') 
end
return true 
end

Mas o do é melhor.

 

uma pergunta de um leigo:

Essa variável global não vai dar problema no futuro não ?   

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


  Mostrar conteúdo oculto

 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites
  Em 03/01/2015 em 21:28, Caronte disse:
Essa variável global não vai dar problema no futuro não ?
Expand   Mostrar mais  

 

Quando ela for utilizada (se for utilizada) em outro script, provavelmente vai ter o valor redefinido.

Então, não.

The corrupt fear us.

The honest support us.

The heroic join us.

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.

  • Estatísticas dos Fóruns

    96837
    Tópicos
    519569
    Posts
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo