Jump to content
×
×
  • Create New...
  • 0

pedido scripts Clicar Alavanca e teleporta 5 players


mage toper
 Share

Question

Galera quero um script que quando clicar na alavanca teleporta 5 player de uma posição ja determinada no mesmo pra o outro lugar . so isso sem contagem sem spawner sem nada so teleporta

Link to post
Share on other sites

Recommended Posts

  • 0
  • Administrador

 

local to_pos = {x=1,y=1,z=7} -- POSIÇÃO PARA ONDE VAI SER TELEPORTADO
local tile_pos = { -- POSIÇÕES DE ONDE VAI SER TELEPORTADO
	{x=1,y=1,z=7},
	{x=1,y=1,z=7},
	{x=1,y=1,z=7},
	{x=1,y=1,z=7},
	{x=1,y=1,z=7},
}

function onUse(cid)
	for _, pos in pairs(tile_pos) do
		pos.stackpos = 255
		thing = getThingfromPos(pos)
		if isPlayer(thing.uid) then
			doTeleportThing(thing.uid, to_pos, false)
		end
	end
	return true
end

 

Link to post
Share on other sites

  • 0
11 minutos atrás, PoRaI disse:

 


local to_pos = {x=1,y=1,z=7} -- POSIÇÃO PARA ONDE VAI SER TELEPORTADO
local tile_pos = { -- POSIÇÕES DE ONDE VAI SER TELEPORTADO
	{x=1,y=1,z=7},
	{x=1,y=1,z=7},
	{x=1,y=1,z=7},
	{x=1,y=1,z=7},
	{x=1,y=1,z=7},
}

function onUse(cid)
	for _, pos in pairs(tile_pos) do
		pos.stackpos = 255
		thing = getThingfromPos(pos)
		if isPlayer(thing.uid) then
			doTeleportThing(thing.uid, to_pos, false)
		end
	end
	return true
end

 

Sera que nessa alavanca daria pra verificar se os 5 tem um x pokemon?

Link to post
Share on other sites

  • 0
18 minutos atrás, PoRaI disse:

 


local to_pos = {x=1,y=1,z=7} -- POSIÇÃO PARA ONDE VAI SER TELEPORTADO
local tile_pos = { -- POSIÇÕES DE ONDE VAI SER TELEPORTADO
	{x=1,y=1,z=7},
	{x=1,y=1,z=7},
	{x=1,y=1,z=7},
	{x=1,y=1,z=7},
	{x=1,y=1,z=7},
}

function onUse(cid)
	for _, pos in pairs(tile_pos) do
		pos.stackpos = 255
		thing = getThingfromPos(pos)
		if isPlayer(thing.uid) then
			doTeleportThing(thing.uid, to_pos, false)
		end
	end
	return true
end

 

tem essa script para poketibia dxp mais para 4 players e cada 1 ir pra um local diferente ?

Link to post
Share on other sites

  • 0
  • Administrador
1 minuto atrás, batuax disse:

tem essa script para poketibia dxp mais para 4 players e cada 1 ir pra um local diferente ?

depende pow, cada um clica na alavanca ou 1 clica na alavanca e todos são teleportado para locais diferentes?

Link to post
Share on other sites

  • 0
Agora, PoRaI disse:

depende pow, cada um clica na alavanca ou 1 clica na alavanca e todos são teleportado para locais diferentes?

1 so clika eu tenho uma script aqui mais não ta pegando vou postar pera , ela fala que falta 4 players mais nunca teleporta 

 

 

 

local playerA={

{x=292, y=1042, z=9}, -- Lugar onde o primeiro player vai estar

{x=291, y=1042, z=9}, -- Lugar onde o segundo player vai estar

{x=290, y=1042, z=9}, -- Lugar onde o terceiro player vai estar

{x=289, y=1042, z=9}, -- Lugar onde o quarto player vai estar

}

local playerB={

{x=344, y=1026, z=9}, -- Lugar onde o primeiro player vai aparecer

{x=305, y=1069, z=9}, -- Lugar onde o segundo player vai aparecer

{x=245, y=1107, z=9}, -- Lugar onde o terceiro player vai aparecer

{x=309, y=1125, z=9}, -- Lugar onde o quarto player vai aparecer

}

 

function onUse(cid, item, fromPosition, itemEx, toPosition)


local t = {}

if item.itemid ==1945 then

for i =1, 4 do

t=getTopCreature(playerA).uid

if t ==0 or not isPlayer(t) then

return doPlayerSendCancel(cid, 'You need 4 players for this quest.')

elseif getPlayerLevel(t) < 300 then -- Level

return doPlayerSendCancel(cid, 'All players need to have level 300 or higher.')

end

end

for i=1, 4 do

doTeleportThing(t, playerB)

doSendMagicEffect(playerA, CONST_ME_POFF)

doSendMagicEffect(playerB, CONST_ME_ENERGYAREA)


end

return doTransformItem(item.uid, item.itemid ==1945 and 1946 or 1945)

end
return true
end

Link to post
Share on other sites

  • 0
  • Administrador
13 minutos atrás, Marshmello disse:

Sera que nessa alavanca daria pra verificar se os 5 tem um x pokemon?

Foi mal, aweiuhaweu, não apareceu a notificação e não vi a mensagem, x.x. Não tinha dado F5, alkçaçlka.

Especifica melhor isso ai, dá. Quer verificar se um dos 5 tem 1 pokémon em especifico? ou que os 5 estejam com 1 pokemon em especifico? Na bag ou sumonado? Se for na bag, depende da sua base. Eu não manjo muito da estrutura das bases de Pokémon, eu teria que ler um script pra entender, tipo o script da nurse joy. Se for sumonado é mais simples.

 

7 minutos atrás, batuax disse:

1 so clika eu tenho uma script aqui mais não ta pegando vou postar pera , ela fala que falta 4 players mais nunca teleporta 

 

 

 

local playerA={

{x=292, y=1042, z=9}, -- Lugar onde o primeiro player vai estar

{x=291, y=1042, z=9}, -- Lugar onde o segundo player vai estar

{x=290, y=1042, z=9}, -- Lugar onde o terceiro player vai estar

{x=289, y=1042, z=9}, -- Lugar onde o quarto player vai estar

}

local playerB={

{x=344, y=1026, z=9}, -- Lugar onde o primeiro player vai aparecer

{x=305, y=1069, z=9}, -- Lugar onde o segundo player vai aparecer

{x=245, y=1107, z=9}, -- Lugar onde o terceiro player vai aparecer

{x=309, y=1125, z=9}, -- Lugar onde o quarto player vai aparecer

}

 

function onUse(cid, item, fromPosition, itemEx, toPosition)


local t = {}

if item.itemid ==1945 then

for i =1, 4 do

t=getTopCreature(playerA).uid

if t ==0 or not isPlayer(t) then

return doPlayerSendCancel(cid, 'You need 4 players for this quest.')

elseif getPlayerLevel(t) < 300 then -- Level

return doPlayerSendCancel(cid, 'All players need to have level 300 or higher.')

end

end

for i=1, 4 do

doTeleportThing(t, playerB)

doSendMagicEffect(playerA, CONST_ME_POFF)

doSendMagicEffect(playerB, CONST_ME_ENERGYAREA)


end

return doTransformItem(item.uid, item.itemid ==1945 and 1946 or 1945)

end
return true
end

troca pra isso: (ps: só vai rodar se o item que você tiver usando for o itemid 1945)

local playerA= {
	{x=292, y=1042, z=9}, -- Lugar onde o primeiro player vai estar
	{x=291, y=1042, z=9}, -- Lugar onde o segundo player vai estar
	{x=290, y=1042, z=9}, -- Lugar onde o terceiro player vai estar
	{x=289, y=1042, z=9}, -- Lugar onde o quarto player vai estar
}

local playerB={
	{x=344, y=1026, z=9}, -- Lugar onde o primeiro player vai aparecer
	{x=305, y=1069, z=9}, -- Lugar onde o segundo player vai aparecer
	{x=245, y=1107, z=9}, -- Lugar onde o terceiro player vai aparecer
	{x=309, y=1125, z=9}, -- Lugar onde o quarto player vai aparecer
}

function onUse(cid, item, fromPosition, itemEx, toPosition)
	local players = {}
	if item.itemid == 1945 then
		for _, pos in pairs(playerA) do
			local player = getTopCreature(pos).uid
			if not isPlayer(player) then
				return doPlayerSendCancel(cid, 'You need 4 players for this quest.')
			elseif getPlayerLevel(player) < 300 then -- Level
				return doPlayerSendCancel(cid, 'All players need to have level 300 or higher.')
			end
			table.insert(players, player)
		end
		for id, pos in pairs(playerB) do
			doTeleportThing(players[id], pos, false)
			doSendMagicEffect(pos, CONST_ME_POFF)
			doSendMagicEffect(pos, CONST_ME_ENERGYAREA)
		end
		return doTransformItem(item.uid, item.itemid ==1945 and 1946 or 1945)
	end
	return true
end

 

Link to post
Share on other sites

  • 0
2 minutos atrás, PoRaI disse:

Foi mal, aweiuhaweu, não apareceu a notificação e não vi a mensagem, x.x. Não tinha dado F5, alkçaçlka.

Especifica melhor isso ai, dá. Quer verificar se um dos 5 tem 1 pokémon em especifico? ou que os 5 estejam com 1 pokemon em especifico? Na bag ou sumonado? Se for na bag, depende da sua base. Eu não manjo muito da estrutura das bases de Pokémon, eu teria que ler um script pra entender, tipo o script da nurse joy. Se for sumonado é mais simples.

tipo vai ficar 3 player uma uma x pos cada e os 3 vai ter que ter 2 itens x e 1 pokemon sumonado (os 3)

 

exp: 

Player 1, item Black stone, ancient amulet + ditto

Player 2, item Black stone, ancient amulet + ditto

Player 3, item Black stone, ancient amulet + ditto

Link to post
Share on other sites

  • 0
4 minutos atrás, PoRaI disse:

Foi mal, aweiuhaweu, não apareceu a notificação e não vi a mensagem, x.x. Não tinha dado F5, alkçaçlka.

Especifica melhor isso ai, dá. Quer verificar se um dos 5 tem 1 pokémon em especifico? ou que os 5 estejam com 1 pokemon em especifico? Na bag ou sumonado? Se for na bag, depende da sua base. Eu não manjo muito da estrutura das bases de Pokémon, eu teria que ler um script pra entender, tipo o script da nurse joy. Se for sumonado é mais simples.

 

troca pra isso: (ps: só vai rodar se o item que você tiver usando for o itemid 1945)


local playerA= {
	{x=292, y=1042, z=9}, -- Lugar onde o primeiro player vai estar
	{x=291, y=1042, z=9}, -- Lugar onde o segundo player vai estar
	{x=290, y=1042, z=9}, -- Lugar onde o terceiro player vai estar
	{x=289, y=1042, z=9}, -- Lugar onde o quarto player vai estar
}

local playerB={
	{x=344, y=1026, z=9}, -- Lugar onde o primeiro player vai aparecer
	{x=305, y=1069, z=9}, -- Lugar onde o segundo player vai aparecer
	{x=245, y=1107, z=9}, -- Lugar onde o terceiro player vai aparecer
	{x=309, y=1125, z=9}, -- Lugar onde o quarto player vai aparecer
}

function onUse(cid, item, fromPosition, itemEx, toPosition)
	local players = {}
	if item.itemid == 1945 then
		for _, pos in pairs(playerA) do
			local player = getTopCreature(pos).uid
			if not isPlayer(player) then
				return doPlayerSendCancel(cid, 'You need 4 players for this quest.')
			elseif getPlayerLevel(player) < 300 then -- Level
				return doPlayerSendCancel(cid, 'All players need to have level 300 or higher.')
			end
			table.insert(players, player)
		end
		for id, pos in pairs(playerB) do
			doTeleportThing(players[id], pos, false)
			doSendMagicEffect(pos, CONST_ME_POFF)
			doSendMagicEffect(pos, CONST_ME_ENERGYAREA)
		end
		return doTransformItem(item.uid, item.itemid ==1945 and 1946 or 1945)
	end
	return true
end

 

vlw

 

Link to post
Share on other sites

  • 0
  • Administrador
12 minutos atrás, Marshmello disse:

tipo vai ficar 3 player uma uma x pos cada e os 3 vai ter que ter 2 itens x e 1 pokemon sumonado (os 3)

 

exp: 

Player 1, item Black stone, ancient amulet + ditto

Player 2, item Black stone, ancient amulet + ditto

Player 3, item Black stone, ancient amulet + ditto

Alterando um pouquinho o código do nosso amiguinho a gente consegue:

local playerA = {
	{x=292, y=1042, z=9}, -- Lugar onde o primeiro player vai estar
	{x=291, y=1042, z=9}, -- Lugar onde o segundo player vai estar
	{x=290, y=1042, z=9}, -- Lugar onde o terceiro player vai estar
	{x=289, y=1042, z=9}, -- Lugar onde o quarto player vai estar
}

local playerB={
	{x=344, y=1026, z=9}, -- Lugar onde o primeiro player vai aparecer
	{x=305, y=1069, z=9}, -- Lugar onde o segundo player vai aparecer
	{x=245, y=1107, z=9}, -- Lugar onde o terceiro player vai aparecer
	{x=309, y=1125, z=9}, -- Lugar onde o quarto player vai aparecer
}

local playerNeed = {	
	items = {
		{1000, 2}, -- items 1, {itemid, quantidade}
		{1000, 2}, -- items 2, se for precisar. {itemid, quantidade}
		{1000, 2}, -- items 3, se for precisar. {itemid, quantidade}
        -- items infinitos, se for precisar.
	},
	pokemon = "Ditto",
}

function onUse(cid, item, fromPosition, itemEx, toPosition)
	local players = {}
	for _, pos in pairs(playerA) do
		local player = getTopCreature(pos).uid
		if not isPlayer(player) then
			return doPlayerSendCancel(cid, "You need 4 players for this quest.")
		elseif #getCreatureSummons(player) ~= 1 or getCreatureSummons(player)[1] ~= playerNeed.pokemon then
			return doPlayerSendCancel(cid, "All players need a pokémon "..playerNeed.pokemon..".")
		end
		for _, item in pairs(playerNeed.items) do
			if getPlayerItemCount(player, item[1]) < item[2] then
				return doPlayerSendCancel(cid, "All players need a item "..(getItemInfo(item[1]).name)..".")
			end
		end
		table.insert(players, player)
	end
	for id, pos in pairs(playerB) do
		for _, item in pairs(playerNeed.items) do
			doPlayerRemoveItem(players[id], item[1], item[2])
		end
		doTeleportThing(players[id], pos, false)
		doSendMagicEffect(pos, CONST_ME_POFF)
		doSendMagicEffect(pos, CONST_ME_ENERGYAREA)
	end
	return true
end

 

Link to post
Share on other sites

  • 0
2 minutos atrás, PoRaI disse:

Alterando um pouquinho o código do nosso amiguinho a gente consegue:


local playerA = {
	{x=292, y=1042, z=9}, -- Lugar onde o primeiro player vai estar
	{x=291, y=1042, z=9}, -- Lugar onde o segundo player vai estar
	{x=290, y=1042, z=9}, -- Lugar onde o terceiro player vai estar
	{x=289, y=1042, z=9}, -- Lugar onde o quarto player vai estar
}

local playerB={
	{x=344, y=1026, z=9}, -- Lugar onde o primeiro player vai aparecer
	{x=305, y=1069, z=9}, -- Lugar onde o segundo player vai aparecer
	{x=245, y=1107, z=9}, -- Lugar onde o terceiro player vai aparecer
	{x=309, y=1125, z=9}, -- Lugar onde o quarto player vai aparecer
}

local playerNeed = {	
	items = {
		{1000, 2}, -- items 1, {itemid, quantidade}
		{1000, 2}, -- items 2, se for precisar. {itemid, quantidade}
		{1000, 2}, -- items 3, se for precisar. {itemid, quantidade}
        -- items infinitos, se for precisar.
	},
	pokemon = "Ditto",
}

function onUse(cid, item, fromPosition, itemEx, toPosition)
	local players = {}
	for _, pos in pairs(playerA) do
		local player = getTopCreature(pos).uid
		if not isPlayer(player) then
			return doPlayerSendCancel(cid, "You need 4 players for this quest.")
		elseif #getCreatureSummons(player) ~= 1 or getCreatureSummons(player)[1] ~= playerNeed.pokemon then
			return doPlayerSendCancel(cid, "All players need a pokémon "..playerNeed.pokemon..".")
		end
		for _, item in pairs(playerNeed.items) do
			if getPlayerItemCount(player, item[1]) < item[2] then
				return doPlayerSendCancel(cid, "All players need a item "..(getItemInfo(item[1]).name)..".")
			end
		end
		table.insert(players, player)
	end
	for id, pos in pairs(playerB) do
		for _, item in pairs(playerNeed.items) do
			doPlayerRemoveItem(players[id], item[1], item[2])
		end
		doTeleportThing(players[id], pos, false)
		doSendMagicEffect(pos, CONST_ME_POFF)
		doSendMagicEffect(pos, CONST_ME_ENERGYAREA)
	end
	return true
end

 

TY AMO ♥

Link to post
Share on other sites

  • 0
54 minutos atrás, PoRaI disse:

Foi mal, aweiuhaweu, não apareceu a notificação e não vi a mensagem, x.x. Não tinha dado F5, alkçaçlka.

Especifica melhor isso ai, dá. Quer verificar se um dos 5 tem 1 pokémon em especifico? ou que os 5 estejam com 1 pokemon em especifico? Na bag ou sumonado? Se for na bag, depende da sua base. Eu não manjo muito da estrutura das bases de Pokémon, eu teria que ler um script pra entender, tipo o script da nurse joy. Se for sumonado é mais simples.

 

troca pra isso: (ps: só vai rodar se o item que você tiver usando for o itemid 1945)


local playerA= {
	{x=292, y=1042, z=9}, -- Lugar onde o primeiro player vai estar
	{x=291, y=1042, z=9}, -- Lugar onde o segundo player vai estar
	{x=290, y=1042, z=9}, -- Lugar onde o terceiro player vai estar
	{x=289, y=1042, z=9}, -- Lugar onde o quarto player vai estar
}

local playerB={
	{x=344, y=1026, z=9}, -- Lugar onde o primeiro player vai aparecer
	{x=305, y=1069, z=9}, -- Lugar onde o segundo player vai aparecer
	{x=245, y=1107, z=9}, -- Lugar onde o terceiro player vai aparecer
	{x=309, y=1125, z=9}, -- Lugar onde o quarto player vai aparecer
}

function onUse(cid, item, fromPosition, itemEx, toPosition)
	local players = {}
	if item.itemid == 1945 then
		for _, pos in pairs(playerA) do
			local player = getTopCreature(pos).uid
			if not isPlayer(player) then
				return doPlayerSendCancel(cid, 'You need 4 players for this quest.')
			elseif getPlayerLevel(player) < 300 then -- Level
				return doPlayerSendCancel(cid, 'All players need to have level 300 or higher.')
			end
			table.insert(players, player)
		end
		for id, pos in pairs(playerB) do
			doTeleportThing(players[id], pos, false)
			doSendMagicEffect(pos, CONST_ME_POFF)
			doSendMagicEffect(pos, CONST_ME_ENERGYAREA)
		end
		return doTransformItem(item.uid, item.itemid ==1945 and 1946 or 1945)
	end
	return true
end

 

funfou não porque esse item é uma parede eu tentei alterar mais n foi kkk , tem como botar pra ser o id 216 n no caso o cash ?

Link to post
Share on other sites

  • 0
  • Administrador
29 minutos atrás, batuax disse:

funfou não porque esse item é uma parede eu tentei alterar mais n foi kkk , tem como botar pra ser o id 216 n no caso o cash ?

local playerA= {
	{x=292, y=1042, z=9}, -- Lugar onde o primeiro player vai estar
	{x=291, y=1042, z=9}, -- Lugar onde o segundo player vai estar
	{x=290, y=1042, z=9}, -- Lugar onde o terceiro player vai estar
	{x=289, y=1042, z=9}, -- Lugar onde o quarto player vai estar
}

local playerB={
	{x=344, y=1026, z=9}, -- Lugar onde o primeiro player vai aparecer
	{x=305, y=1069, z=9}, -- Lugar onde o segundo player vai aparecer
	{x=245, y=1107, z=9}, -- Lugar onde o terceiro player vai aparecer
	{x=309, y=1125, z=9}, -- Lugar onde o quarto player vai aparecer
}

function onUse(cid, item, fromPosition, itemEx, toPosition)
	local players = {}
	for _, pos in pairs(playerA) do
		local player = getTopCreature(pos).uid
		if not isPlayer(player) then
			return doPlayerSendCancel(cid, 'You need 4 players for this quest.')
		elseif getPlayerLevel(player) < 300 then -- Level
			return doPlayerSendCancel(cid, 'All players need to have level 300 or higher.')
		end
		table.insert(players, player)
	end
	for id, pos in pairs(playerB) do
		doTeleportThing(players[id], pos, false)
		doSendMagicEffect(pos, CONST_ME_POFF)
		doSendMagicEffect(pos, CONST_ME_ENERGYAREA)
	end
	return true
end

 

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share