Ir para conteúdo
  • Cadastre-se

(Resolvido)Bug com script de storage acess


Ir para solução Resolvido por luangop,

Posts Recomendados

Então, o problema é simples, quando usa a action em um item especifico para adcionar os dias, ocorre tudo certo, o problema é que, quando acaba, a merda da storage não sai do char, e ele continua acessando a vip, e muito menos leva teleporting pro temple. Sera que precisa de algum creaturescript?

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
local config={
removeOnUse = "yes" -- remover quando usar ("yes" or "no")
}
local days = 1 -- coloque os dias que serão a VIP!
local daysvalue = days * 24 * 60 * 60
local storageplayer = getPlayerStorageValue(cid, 10102)
local timenow = os.time()
if getPlayerStorageValue(cid, 10102) - os.time() <= 0 then
time = timenow + daysvalue
else
time = storageplayer + daysvalue
end
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Were added ".. days .." VIP days on your character.")
setPlayerStorageValue(cid, 10102, time)
local quantity = math.floor((getPlayerStorageValue(cid, 10102) - timenow)/(24 * 60 * 60))
doSendMagicEffect(getPlayerPosition(cid), math.random(28,30))
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have ".. quantity .." VIP days remaining.")
if (config.removeOnUse == "yes") then
doRemoveItem(item.uid, 1)
end
return TRUE
end

 

movements.xml para impossibilitar a entrada do mesmo na vip.

 

local config = {
	vipStorage = 10102, -- storage VIP
	kick = {
		kickPosition = true, -- se for "true" então vai jogar para a posição que o jogador estava, se for false, irá jogar para a posição a baixo.
		kickPos = {x=1023, y=1018, z=7},
	},
	
	newPosition = {x=632, y=737, z=7} -- posição que jogara o jogador caso ele for vip
}

function onStepIn(cid, item, position, fromPosition)
	if not isPlayer(cid) then
		return true
	end
	
	if (getPlayerStorageValue(cid, config.vipStorage) - os.time()) <= 0 then		
		if config.kick.kickPosition then
			doTeleportThing(cid, fromPosition)
		else
			doTeleportThing(cid, config.kick.kickPos)
		end
		
		doPlayerSendTextMessage(cid, 19, "Voce nao possui acesso vip, faça a quest!.") 
		return true
	end
	
	doPlayerSendTextMessage(cid, 19, "Bem Vindo a ViP 1.") 
	doSendMagicEffect(getPlayerPosition(cid), 2)  
	doTeleportThing(cid, config.newPosition)  
	doSendMagicEffect(config.newPosition, 10) 
	return true
end

 

Link para o post
Compartilhar em outros sites
11 horas atrás, ludgeromf1 disse:

seu ot é por site ou sqlite?

 

sqlite

Link para o post
Compartilhar em outros sites

Achei muita bagunça no movement

Teste assim:
 

function onStepIn(cid, item, position, fromPosition)
	local newPosition = {x=632, y=737, z=7}
	if not isPlayer(cid) then
		return true
	end
	if getPlayerStorageValue(cid, 10102) and (getPlayerStorageValue(cid, 10102) - os.time()) <= 0 then		
		doTeleportThing(cid, fromPosition)
		doPlayerSendTextMessage(cid, 19, "Voce nao possui acesso vip, faça a quest!.") 
		return true
	end
	doPlayerSendTextMessage(cid, 19, "Bem Vindo a ViP 1.") 
	doSendMagicEffect(getPlayerPosition(cid), 2)  
	doTeleportThing(cid, newPosition)  
	doSendMagicEffect(newPosition, 10) 
	return true
end

 

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

Link para o post
Compartilhar em outros sites
Em 19/07/2017 ás 21:14, luangop disse:

Achei muita bagunça no movement

Teste assim:
 


function onStepIn(cid, item, position, fromPosition)
	local newPosition = {x=632, y=737, z=7}
	if not isPlayer(cid) then
		return true
	end
	if getPlayerStorageValue(cid, 10102) and (getPlayerStorageValue(cid, 10102) - os.time()) <= 0 then		
		doTeleportThing(cid, fromPosition)
		doPlayerSendTextMessage(cid, 19, "Voce nao possui acesso vip, faça a quest!.") 
		return true
	end
	doPlayerSendTextMessage(cid, 19, "Bem Vindo a ViP 1.") 
	doSendMagicEffect(getPlayerPosition(cid), 2)  
	doTeleportThing(cid, newPosition)  
	doSendMagicEffect(newPosition, 10) 
	return true
end

 

 

Ainda não funcionou, o player ainda continua acessando

Link para o post
Compartilhar em outros sites
  • Solução

kkk fiz besteira, agora fui reler o código e vi.

Testa:
 

function onStepIn(cid, item, position, fromPosition)
	local newPosition = {x=632, y=737, z=7}
	if not isPlayer(cid) then
		return true
	end
	if getPlayerStorageValue(cid, 10102) <= os.time() then		
		doTeleportThing(cid, fromPosition)
		doPlayerSendTextMessage(cid, 19, "Voce nao possui acesso vip, faça a quest!.") 
		return true
	end
	doPlayerSendTextMessage(cid, 19, "Bem Vindo a ViP 1.") 
	doSendMagicEffect(getPlayerPosition(cid), 2)  
	doTeleportThing(cid, newPosition)  
	doSendMagicEffect(newPosition, 10) 
	return true
end

 

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

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.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo