DA
moveevent

Mc não passa em tile

Por damiaotorres, 06 de jun. de 2015 em Archived

25
4.2k
06 de junho de 2015 às 01:43

Tem como fazer um tile que Mc não passe nele?caso um mc tente ele vai ser teleportado pro templo

Versão 8.6 TFS 1.0.0

FurabioF
06 de junho de 2015 às 13:23

Mc, seria o que ?

 

Tópico movido para à área correta, preste mais atenção na próxima vez.

SkyLighS
06 de junho de 2015 às 13:27

Mc, seria o que ?

 

Tópico movido para à área correta, preste mais atenção na próxima vez.

 

que eu saiba mc é quando 1 pessoa está com 2 char logado

notle2012N
06 de junho de 2015 às 15:41

só check ip dos players que ta online

se for iguais não pode passa no tile

só não faço aqui pq

TFS 1.0.0 eu acho que functions são diferentes

FurabioF
06 de junho de 2015 às 15:53

Damião tem certeza que seu 8.6 é tfs 1.0 ?

07 de junho de 2015 às 14:04

Como ele falou lá em cima mc e quando tem 2 player no mesmo ip

e quero que o tile não deixe passa o mesmo ip pq isso vai ser pra um evento

 

We Do OTS, version 0.1.0 (Beta Version)

FurabioF
08 de junho de 2015 às 13:58


function onStepIn(cid, item, position, fromPosition)

if not isPlayer(cid) then

return false

end

local p, mc = getPlayersOnline(), 0

for _, pid in pairs(p) do

if getPlayerIp(cid) == getPlayerIp(pid) and pid ~= cid then

doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))

break

end

end

return true

end

 

Editado Junho 8 por Flavio S

08 de junho de 2015 às 14:08

Sim onde coloco isso ,Faltou você falar os procedimentos '-'

SkyLighS
08 de junho de 2015 às 14:11

moveevents

BrunoB
08 de junho de 2015 às 14:25

Sim onde coloco isso ,Faltou você falar os procedimentos '-'

Em data/movements/movements.xml adicione a seguinte tag:

<movevent type="StepIn" actionid="action id desejada" event="script" value="nomedoarquivo.lua"/>
E em data/movements/scripts crie o arquivo que você colocou aciona com o conteúdo que o Flávio passou.
08 de junho de 2015 às 14:28

Ai eu boto itemid ou actionid?

 

<movevent type="StepIn" itemid="11059" event="script" value="tiles.lua"/>

<movevent type="StepOut" itemid="11060" event="script" value="tiles.lua"/>
FurabioF
08 de junho de 2015 às 18:30

Ai eu boto itemid ou actionid?

 

em action id, ai tu vai no rme, e coloca action id no piso.

09 de junho de 2015 às 15:53

Não presta tipo leva direto pro templo, Eu quero que 1 mc passe mais o 2 já não passe

function onStepIn(cid, item, position, fromPosition)
	if not isPlayer(cid) then
		return false
	end
	local p, mc = getPlayersOnline(), 0
	for _, pid in pairs(p) do
		if getPlayerIp(cid) == getPlayerIp(pid) and pid ~= cid then
                        doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
			break
		end
	end
	return true
end
zipter98Z
09 de junho de 2015 às 16:24


local ips = {}

function onStepIn(cid)

if not isPlayer(cid) then

return true

elseif isInArray(ips, getPlayerIp(cid)) then

return doPlayerSendCancel(cid, "There's already someone with your IP in the event.") and doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))

end

table.insert(ips, getPlayerIp(cid))

return true

end

 

Editado Junho 9 por zipter98

BrunoB
09 de junho de 2015 às 16:31

Não presta tipo leva direto pro templo, Eu quero que 1 mc passe mais o 2 já não passe

Tenta assim:

function table.insert(table, element)
    table[#table + 1] = element
end
local ips = {}
function onStepIn(cid, item, position, fromPosition)
	if not isPlayer(cid) then
		return false
	end
	local ip = getPlayerIp(pid)
	if table.find(ips, ip) then
		doTeleportThing(cid, fromPosition)
		return false
	else
		table.insert(ips, ip)
		return true
	end
end

Editado Junho 9 por Bruno Minervino