Jump to content

(Resolvido)Tile que passa Mensagem 1 vez


Go to solution Solved by thelifeofpbion,

Recommended Posts

  • Solution

Não esquece da tag.

 

function onStepIn(cid, item, pos)
	local msg = "DIGITE AQUI SUA MENSAGEM"
	local stg = 23483872

if isPlayer(cid) == true then
	if getPlayerStorageValue(cid, stg) < 1 then
		doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE,msg)
		setPlayerStorageValue(cid,stg,1)
	else
	end
end
	return true
end

 

Scriptszinhos:

 

Não abandone seu tópico, quando você tiver a dúvida resolvida sozinho tente ensinar aos outros como resolve-la (você pode não ser o único com o problema) e quando ela for resolvida por outra pessoa não se esqueça de marcar como melhor resposta e deixar o gostei.

Link to post
Share on other sites
3 horas atrás, pablobion disse:

Não esquece da tag.

 


function onStepIn(cid, item, pos)
	local msg = "DIGITE AQUI SUA MENSAGEM"
	local stg = 23483872

if isPlayer(cid) == true then
	if getPlayerStorageValue(cid, stg) < 1 then
		doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE,msg)
		setPlayerStorageValue(cid,stg,1)
	else
	end
end
	return true
end

 

Vlw Cara queria muito essa script!

Link to post
Share on other sites

aqui está com um problema...
eu entro no tile - aparece "minha mensagem"
quando eu saio do tile e entro dnv, não aparece nada mais... como faz para aparecer a msg toda vez que o player passar por lá.

Link to post
Share on other sites
4 minutos atrás, tataboy67 disse:

aqui está com um problema...
eu entro no tile - aparece "minha mensagem"
quando eu saio do tile e entro dnv, não aparece nada mais... como faz para aparecer a msg toda vez que o player passar por lá.



vai em movements e cria um arquivo e poem isso dentro

 

Citar

local config = {  
tempo = 666, -- Tempo em minutos  
storage = 20000, -- não mexa aqui  
teleport = {x=160, y=52, z=7} -- COORDENADA DO SEU SQM 
}  

function onStepIn(cid, item, frompos, topos)
if isPlayer(cid) == TRUE then 
if getPlayerStorageValue(cid, config.storage) <= 0 then  
kick1 = addEvent(setPlayerStorageValue, config.tempo*60*1000-1000, cid, config.storage, -1)  
kick2 = addEvent(doTeleportThing, config.tempo*60*1000-500, cid, config.teleport)  
kick = addEvent(doRemoveCreature, config.tempo*60*1000, cid)  
doPlayerSendTextMessage(cid, 22, "MENSAGEM QUE VAI APARECER EM BRANCO NA SUA TELA!")  
doPlayerSendTextMessage(cid, 19, "MENSAGEM QUE VAI APARECER NO DEFAULT EM LARANJA SE NÂO QUISER É SÓ APAGAR ESSA LINHA ENTEIRA")  
setPlayerStorageValue(cid, config.storage, 1)  
end  
end
end  
  
function onStepOut(cid, item, frompos, topos)
if isPlayer(cid) == TRUE then 
if getPlayerStorageValue(cid, config.storage) >= 1 then  
setPlayerStorageValue(cid, config.storage, -1)  
stopEvent(kick)  
stopEvent(kick1)  
stopEvent(kick2)  
end  
end
end

 

 

<movevent type="StepIn" actionid="25002" event="script" value="AQUI É O NOME DO SEU ARQUIVO.lua"/>
<movevent type="StepOut" actionid="25002" event="script" value="AQUI É O NOME DO SEU ARQUIVO.lua"/>

       112674.gif

 

 

 

Link to post
Share on other sites
40 minutos atrás, Zzyzx disse:

 

de nada

 :439b7e504f558bbb4e25f740432f9be3:

opa beleza? então eu testei, porém não consigo pisar no tile.. teria como fazer 1 SEM STORAGE ! tipo pisou e aparece um efeito e 1 mensagem só isso

tile.png

Link to post
Share on other sites

@tataboy67

era so tirar o if

 

function onStepIn(cid, item, pos)
	local msg = "DIGITE AQUI SUA MENSAGEM"

if isPlayer(cid) == true then
	doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE,msg)
end
	return true
end

 

6 horas atrás, tataboy67 disse:

aqui está com um problema...
eu entro no tile - aparece "minha mensagem"
quando eu saio do tile e entro dnv, não aparece nada mais... como faz para aparecer a msg toda vez que o player passar por lá.


obs: isso não é um problema, é que o cara pediu que tivesse storage kk

Edited by pablobion (see edit history)

Scriptszinhos:

 

Não abandone seu tópico, quando você tiver a dúvida resolvida sozinho tente ensinar aos outros como resolve-la (você pode não ser o único com o problema) e quando ela for resolvida por outra pessoa não se esqueça de marcar como melhor resposta e deixar o gostei.

Link to post
Share on other sites

@pablobion u.u thanks novamente ^^ éq estou começando com script, sei só criar coisas basicas ;D 
Pode me ajudar nesse script tbm?

script de ao usar alavanca teleporta 4 players que estão em tal tile
assim... ele não tem erro algum no servidor porém quando eu uso a alavanca os players não são teleportados, POREM eles recebem a msg ("você foi teleportado") E TAMBÉM até quem NÃO está em tais tiles podem clicar nessa alavanca ! o que sera que estou errando?

 

Spoiler

local cfg = {
level = 200,
alavanca = 1945,
positions = {
    {x = 1049, y = 1097, z = 6},     -- posição inicial do 1 até o 4
    {x = 1051, y = 1097, z = 6},
    {x = 1049, y = 1099, z = 6},
    {x = 1051, y = 1099, z = 6}
},
    
destination = {
    {x = 1059, y = 1094, z = 7},  -- local onde será teleportado do 1 ao 4
    {x = 1059, y = 1095, z = 7},
    {x = 1059, y = 1096, z = 7},
    {x = 1059, y = 1097, z = 7}
}
}
function onUse(cid, item, fromPosition, itemEx, toPosition)
    
    if item.itemid == cfg.alavanca and getPlayerLevel(cid) >= cfg.level then      
    
    doTeleportThing(cid, cfg.destination)
    
    doPlayerSendTextMessage(cid,22,"Você está na quest, boa sorte !")
    
    else
        
    doPlayerSendTextMessage(cid,22,"Você não possui nivel")

end return true 

end

se puder me ajuda ;D + 1 rep
obs : esse script eu criei do 0 ^^

Edited by tataboy67 (see edit history)
Link to post
Share on other sites

@tataboy67 não sou muito ligado em tabelas em lua prefiro fazer tudo por variavel kkkk, mas teoricamente acho que você teria que fazer um for para "catar" todos os players e teleportar eles para a pos desejada... fora que falta condiçõoes pra verificar se todos os player estão na pos desejada e tal
no caso no doTeleportThing  teria que ser o conjunto de players determinado no for e não "cid"


enfim... eu refiz o script porém por variavel (pq so sei usar assim) e fiz alguns comentário caso você tiver duvida do que fiz.

 

function onUse(cid, item, frompos, item2, topos)
if item.itemid == 1946 then

questlevel = 200

--positions
player1pos = {x=1049, y=1097, z=6, stackpos=253}
player2pos = {x=1051, y=1097, z=6, stackpos=253} 
player3pos = {x=1049, y=1099, z=6, stackpos=253} 
player4pos = {x=1051, y=1099, z=6, stackpos=253}

player1 = getThingfromPos(player1pos)
player2 = getThingfromPos(player2pos)
player3 = getThingfromPos(player3pos)
player4 = getThingfromPos(player4pos)


if player1.itemid > 0 and player2.itemid > 0 and player3.itemid > 0 and player4.itemid > 0 then

player1level = getPlayerLevel(player1.uid)
player2level = getPlayerLevel(player2.uid)
player3level = getPlayerLevel(player3.uid)
player4level = getPlayerLevel(player4.uid)



if player1level >= questlevel and player2level >= questlevel and player3level >= questlevel and player4level >= questlevel then

-- destinations
nplayer1pos = {x=1059, y=1094, z=7}
nplayer2pos = {x=1059, y=1095, z=7} 
nplayer3pos = {x=1059, y=1096, z=7}
nplayer4pos = {x=1059, y=1097, z=7}

	doSendMagicEffect(player1pos,2)
	doSendMagicEffect(player2pos,2)
	doSendMagicEffect(player3pos,2)
	doSendMagicEffect(player4pos,2)

	doTeleportThing(player1.uid,nplayer1pos)
	doTeleportThing(player2.uid,nplayer2pos)
	doTeleportThing(player3.uid,nplayer3pos)
	doTeleportThing(player4.uid,nplayer4pos)

	doSendMagicEffect(nplayer1pos,10)
	doSendMagicEffect(nplayer2pos,10)
	doSendMagicEffect(nplayer3pos,10)
	doSendMagicEffect(nplayer4pos,10)

	doTransformItem(item.uid,1945)

	else
	doPlayerSendCancel(cid,"Todos os players tem que ser level 200 ou mais.")
	end
	else
	doPlayerSendCancel(cid,"Precisa de 4 pessoas.")
end
end

return 1
end


 

Edited by pablobion (see edit history)

Scriptszinhos:

 

Não abandone seu tópico, quando você tiver a dúvida resolvida sozinho tente ensinar aos outros como resolve-la (você pode não ser o único com o problema) e quando ela for resolvida por outra pessoa não se esqueça de marcar como melhor resposta e deixar o gostei.

Link to post
Share on other sites

;D só de postar aqui noq eu estou errando eu ja tido rep

 

vou testar aqui o script e ja edito

 

Link to post
Share on other sites
Agora, tataboy67 disse:

;D só de postar aqui noq eu estou errando eu ja tido rep

 


ahhaha valeu cara, no que eu puder ajudar to ai :), mas vê se da prox. cria um tópico novo kkkk (isso ajuda bastante caso alguém tenha a mesma dúvida)

Scriptszinhos:

 

Não abandone seu tópico, quando você tiver a dúvida resolvida sozinho tente ensinar aos outros como resolve-la (você pode não ser o único com o problema) e quando ela for resolvida por outra pessoa não se esqueça de marcar como melhor resposta e deixar o gostei.

Link to post
Share on other sites

[Error - LuaScriptInterface::loadFile] data/movements/scripts/tilequest.lua:9: '}' expected (to close '{' at line 1) near 'function'
[06/05/2017 01:39:53] [Warning - Event::loadScript] Cannot load script (data/movements/scripts/tilequest.lua)
[06/05/2017 01:39:53] data/movements/scripts/tilequest.lua:9: '}' expected (to close '{' at line 1) near 'function'

deu esse erro... mas eu acho que sei consertar

 

Opa prometido ^^

 

opa amigo @pablobion não está indo... mesmo com os 4 players nos sqms, eles não são teleportados, POREM aparece a msg

Link to post
Share on other sites
1 hora atrás, tataboy67 disse:

[Error - LuaScriptInterface::loadFile] data/movements/scripts/tilequest.lua:9: '}' expected (to close '{' at line 1) near 'function'
[06/05/2017 01:39:53] [Warning - Event::loadScript] Cannot load script (data/movements/scripts/tilequest.lua)
[06/05/2017 01:39:53] data/movements/scripts/tilequest.lua:9: '}' expected (to close '{' at line 1) near 'function'

deu esse erro... mas eu acho que sei consertar

 

Opa prometido ^^

 

opa amigo @pablobion não está indo... mesmo com os 4 players nos sqms, eles não são teleportados, POREM aparece a msg



conseguiu arrumar o erro? estranho nao deu esse erro aqui quando fiz...

OBS: É ACTION, E NÃO MOVEMENT '-' é que ali no erro ta falando tambem que você colocou em movements kk

Scriptszinhos:

 

Não abandone seu tópico, quando você tiver a dúvida resolvida sozinho tente ensinar aos outros como resolve-la (você pode não ser o único com o problema) e quando ela for resolvida por outra pessoa não se esqueça de marcar como melhor resposta e deixar o gostei.

Link to post
Share on other sites

não coloquei ... aqui tbm n está dando erro !

porem não teleporta a alavanca

 

oque sera que é?


AHHHH vou verificar dnv esse movements/questiles.lua

 

Então @pablobion eu apaguei oque tinha na movements.xml e em data/movements -- porem... ainda sim a alavanca não funciona

Edited by tataboy67 (see edit history)
Link to post
Share on other sites
1 hora atrás, tataboy67 disse:

não coloquei ... aqui tbm n está dando erro !

porem não teleporta a alavanca

 

oque sera que é?


AHHHH vou verificar dnv esse movements/questiles.lua

 

Então @pablobion eu apaguei oque tinha na movements.xml e em data/movements -- porem... ainda sim a alavanca não funciona


editei ali em cima, da uma testada agora e me fala.

Scriptszinhos:

 

Não abandone seu tópico, quando você tiver a dúvida resolvida sozinho tente ensinar aos outros como resolve-la (você pode não ser o único com o problema) e quando ela for resolvida por outra pessoa não se esqueça de marcar como melhor resposta e deixar o gostei.

Link to post
Share on other sites

wtf... agora alem de eu não teleportar, sempre muda o id da alavanca. tipo vai diminuindo de 1 em 1

Link to post
Share on other sites
Spoiler

local config = {
	needLevel = 200,
	sqmPositions = {
		{from = {x = 1049, y = 1097, z = 6}, to = {x = 1049, y = 1097, z = 6}},
		{from = {x = 1051, y = 1097, z = 6}, to = {x = 1049, y = 1097, z = 6}},
		{from = {x = 1049, y = 1099, z = 6}, to = {x = 1049, y = 1097, z = 6}},
		{from = {x = 1051, y = 1099, z = 6}, to = {x = 1049, y = 1097, z = 6}}
	}
}

function onUse(cid, item, frompos, item2, topos)
	if(item.itemid == 1946) then
		local players = {}
		for _, pos in pairs(config.sqmPositions) do
			local creature = getTopCreature(pos.from).uid
			if(isPlayer(creature) and getPlayerLevel(creature) >= config.needLevel) then
				players[#players + 1] = {player = creature, goTo = pos.to}
			end
		end
		
		if(#players == #config.sqmPositions) then
			for _, t in pairs(players) do
				doSendMagicEffect(getThingPos(t.player), 2)
				doTeleportThing(t.player, t.goTo)
				doSendMagicEffect(t.goTo, 10)
			end
			doTransformItem(item.uid, 1945)
		else
			doPlayerSendCancel(cid, "Jogadores faltando ou abaixo do level " .. config.needLevel .. ".")
		end
		
	elseif(item.itemid == 1945) then
		doTransformItem(item.uid, 1946)
	end
	
	return true
end

 

 

Link to post
Share on other sites

vou testar aqui e já edito !

a alavanca agora ela funciona 100% POREM não teleporta ainda...

@MaTTch

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

Confirmação de Termo