WA
pedido

Só passar pelo tile se tiver storage

Por warriorfrog, 19 de set. de 2013 em Scripts

resolvido
script
12
1.9k
warriorfrogW
19 de setembro de 2013 às 00:30

Queria um script q vc só pude-se passar pelo tile se vc tive-se a storage 666 ou se tive-se premmy, caso contario retornaria: vc n tem a storage 666 ou não tem premium account

Editado Setembro 19 por warriorfrog

OmegaO
19 de setembro de 2013 às 11:07
function onStepIn(cid, item, position, fromPosition)
	local storageValue = 1 -- Valor do storage necessário para que o jogador possa passar
	if not getPlayerStorageValue(cid, 666) == storageValue and not isPremium(cid) then
		doPlayerSendCancel(cid, 'You need premium account or the 666 storage to pass!.')
		doTeleportThing(cid, fromPosition)
	end
	return true
end

Aí você coloca uma TAG no movements.xml:

<movevent type="StepIn" actionid="4339" script="666tile.lua"/>

E salva o arquivo com o nome de 666tile.lua em movements/scripts e coloca o actionid 4339 em cima desse piso

warriorfrogW
19 de setembro de 2013 às 13:46

Po cara +rep por tentar ajudar, mas n funcionou, eu sem a storage e sem premium consegui passar pelo piso ;\

WillOliveiraW
19 de setembro de 2013 às 14:16

Coloca uniqueid 4339 no piso pelo map editor e tenta assim:

 

Tag movements.xml:

<movevent type="StepIn" itemid="293" event="script" value="666tile.lua"/>

em itemid você coloca o id do piso

 

 

movements/scripts/666tile.lua:

function onStepIn(cid, item, position, fromPosition)
	if item.uid ~= 4339 then
		return true
	end
	local storageValue = 1 -- Valor do storage necessário para que o jogador possa passar
	if not getPlayerStorageValue(cid, 666) == storageValue or not isPremium(cid) then
		doPlayerSendCancel(cid, 'You need premium account or the 666 storage to pass!.')
		doTeleportThing(cid, fromPosition)
	end
	return true
end

Editado Setembro 19 por WillOliveira

VodkartV
19 de setembro de 2013 às 15:15

 

function onStepIn(cid, item, position, fromPosition)
local storage = 5013
if getPlayerStorageValue(cid, storage) <= 0 or not isPremium(cid) then
doPlayerSendCancel(cid, 'n pode passa.')
doTeleportThing(cid, fromPosition, true) return true
end
return true
end
KennyConradK
19 de setembro de 2013 às 23:06

@Vodkart também estou presisando desse script porem quero que so passe se tiver a storage, da pra tirar essa parte de poder passar se tiver premium account ?

warriorfrogW
20 de setembro de 2013 às 00:45
function onStepIn(cid, item, position, fromPosition)
local storage = 5013
if getPlayerStorageValue(cid, storage) <= 0 or not isPremium(cid) then
doPlayerSendCancel(cid, 'n pode passa.')
doTeleportThing(cid, fromPosition, true) return true
end
return true
end

 

 

NAO FUNCIONOU VODKART, só ta funcionando se tiver premmy e a storage eu queria q fosse assim:

 

Se tiver premmy passa

Se tiver storage 666 passa

 

Ta assim: Se tiver premmy e storage passa, se tiver um só n passa

 

@Vodkart também estou presisando desse script porem quero que so passe se tiver a storage, da pra tirar essa parte de poder passar se tiver premium account ?

function onStepIn(cid, item, position, fromPosition)

if isPremium(cid) == FALSE then

doTeleportThing(cid, fromPosition, false)

doSendMagicEffect(position, CONST_ME_MAGIC_BLUE)

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Somente jogadores VIP-SOCIOS podem passar...")

end

return TRUE

end

Editado Setembro 20 por warriorfrog

KennyConradK
20 de setembro de 2013 às 02:48

tá errado =( eu pedi pra deixar so passar quem tiver a storagem queria que remove-se a parte que quem for vip pode passar quero que independentemente do player ser vip ou nao ele so passa se tiver a storagem.

WillOliveiraW
20 de setembro de 2013 às 04:12

@warriorfrog

Usa assim que funciona:

function onStepIn(cid, item, position, fromPosition)
	local storage = 666
	if getPlayerStorageValue(cid, storage) <= 0 or not isPremium(cid) then
		doPlayerSendCancel(cid, 'n pode passa.')
		doTeleportThing(cid, fromPosition)
	end
	return true
end

@KennyxD

Usa esse:

function onStepIn(cid, item, position, fromPosition)
	local storage = 666
	if getPlayerStorageValue(cid, storage) <= 0 then
		doPlayerSendCancel(cid, 'n pode passa.')
		doTeleportThing(cid, fromPosition)
	end
	return true
end
VodkartV
20 de setembro de 2013 às 07:06

 

function onStepIn(cid, item, position, fromPosition)
local storage = 5013
if getPlayerStorageValue(cid, storage) <= 0 or not isPremium(cid) then
doPlayerSendCancel(cid, 'n pode passa.')
doTeleportThing(cid, fromPosition, true) return true
end
return true
end

 

 

NAO FUNCIONOU VODKART, só ta funcionando se tiver premmy e a storage eu queria q fosse assim:

 

Se tiver premmy passa

Se tiver storage 666 passa

 

Ta assim: Se tiver premmy e storage passa, se tiver um só n passa

 

@Vodkart também estou presisando desse script porem quero que so passe se tiver a storage, da pra tirar essa parte de poder passar se tiver premium account ?

function onStepIn(cid, item, position, fromPosition)

if isPremium(cid) == FALSE then

doTeleportThing(cid, fromPosition, false)

doSendMagicEffect(position, CONST_ME_MAGIC_BLUE)

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Somente jogadores VIP-SOCIOS podem passar...")

end

return TRUE

end

 

 

mas o meu está exatamente como vc pediu, mudou o valor da storage?

 

 

function onStepIn(cid, item, position, fromPosition)
local storage = 666
if getPlayerStorageValue(cid, storage) <= 0 or not isPremium(cid) then
doPlayerSendCancel(cid, 'n pode passa.')
doTeleportThing(cid, fromPosition, true) return true
end
return true
end
BeekiB
20 de setembro de 2013 às 08:12

Tópico movido para a seção de dúvidas e pedidos resolvidos.

KennyConradK
20 de setembro de 2013 às 10:57

Testei Vodkart e funcionou vlw REP +