Ir para conteúdo
  • Cadastre-se

(Resolvido)[RESOLVIDO] Item que adiciona dias VIP ao sistema do Mock


Ir para solução Resolvido por WooX,

Posts Recomendados

Fala Galera! Bom dia! Bom, sem mais delongas, eu tenho um sistema de VIP (Donate) no meu server, e quero colocar uma quest para conseguir um item que da 3 dias de acesso - para os players conhecerem a area VIP - então preciso que esse Script à seguir além de verificar a VIP, que ele também verificasse uma storage EX.: 153728

Segue o Script:

function onStepIn(cid, item, position, fromPosition)

local tileConfig = {
	kickPos = { x =167, y = 51, z = 7},
	kickMsg = "Você não é VIP, para saber mais como ter acesso a áreas e itens exclusivos, acesse o nosso site!",
	enterMsg = "Bem vindo a área VIP, agradecemos a sua doação!",
	enterEffect = CONST_ME_MAGIC_RED,
}

if isPlayer(cid) == true then
if vip.hasVip(cid) == FALSE then
		doTeleportThing(cid, tileConfig.kickPos)
		doSendMagicEffect(tileConfig.kickPos, tileConfig.kickEffect)
		doPlayerSendCancel(cid, tileConfig.kickMsg)
		return
	end
		doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, tileConfig.enterMsg)
		doSendMagicEffect(position, tileConfig.enterEffect)
		return true
end
end

Ou Seja, resumindo, só quero que esse script também verifique uma storage, se ele tiver a VIP ou a Storage, ele passa pelo tile.

Conto com a ajuda de vocês!

Editado por Skipper (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Não testado. 

 

function onStepIn(cid, item, position, fromPosition)

	local tileConfig = {
		kickPos = { x =167, y = 51, z = 7},
		kickMsg = "Você não é VIP, para saber mais como ter acesso a áreas e itens exclusivos, acesse o nosso site!",
		enterMsg = "Bem vindo a área VIP, agradecemos a sua doação!",
		enterEffect = CONST_ME_MAGIC_RED,
		storage = 15372
	}

	if isPlayer(cid) == true then
		if vip.hasVip(cid) == FALSE or getPlayerStorageValue(cid, storage) < 1 then
			doTeleportThing(cid, tileConfig.kickPos)
			doSendMagicEffect(tileConfig.kickPos, tileConfig.kickEffect)
			doPlayerSendCancel(cid, tileConfig.kickMsg)
			return
		end
		doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, tileConfig.enterMsg)
		doSendMagicEffect(position, tileConfig.enterEffect)
		return true
	end
end

 

 

 

 

Nós somos aquilo que fazemos repetidamente. Excelência, não é um modo de agir, mas um hábito.

                                                                                                                                                                                                                                        Aristóteles 

Link para o post
Compartilhar em outros sites
36 minutos atrás, Way20 disse:

Não testado. 

 


function onStepIn(cid, item, position, fromPosition)

	local tileConfig = {
		kickPos = { x =167, y = 51, z = 7},
		kickMsg = "Você não é VIP, para saber mais como ter acesso a áreas e itens exclusivos, acesse o nosso site!",
		enterMsg = "Bem vindo a área VIP, agradecemos a sua doação!",
		enterEffect = CONST_ME_MAGIC_RED,
		storage = 15372
	}

	if isPlayer(cid) == true then
		if vip.hasVip(cid) == FALSE or getPlayerStorageValue(cid, storage) < 1 then
			doTeleportThing(cid, tileConfig.kickPos)
			doSendMagicEffect(tileConfig.kickPos, tileConfig.kickEffect)
			doPlayerSendCancel(cid, tileConfig.kickMsg)
			return
		end
		doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, tileConfig.enterMsg)
		doSendMagicEffect(position, tileConfig.enterEffect)
		return true
	end
end

 

 

Não funcionou, se você preferir pode ser uma action, que quando eu dê use no item, ele adicione 3 dias a tabela `vip_time` que fica em `accounts`, mas ninguém fez isso até agora.

Eu uso o sistema de VIP do Mock.

Link para o post
Compartilhar em outros sites
21 minutos atrás, Skipper disse:

 

Não funcionou, se você preferir pode ser uma action, que quando eu dê use no item, ele adicione 3 dias a tabela `vip_time` que fica em `accounts`, mas ninguém fez isso até agora.

Eu uso o sistema de VIP do Mock.

 

Me manda 1 print de como ta a estrutura dessa tabela.

 

 

 

Nós somos aquilo que fazemos repetidamente. Excelência, não é um modo de agir, mas um hábito.

                                                                                                                                                                                                                                        Aristóteles 

Link para o post
Compartilhar em outros sites

Tava dando 1 olhada na lib do seu vip system, acho que assim deve funcionar.

 

--<action itemid="xxxx" event="script" value="other/vipitem.lua"/>--

local amount = 3

function onUse(cid, item, fromPosition, itemEx, toPosition)	
		vip.addVipByAccount(getPlayerAccount(cid), amount)
		doCreatureSay(cid, "Parabéns! Você recebeu ".. amount .." dias VIP!", TALKTYPE_ORANGE_1)
		doSendMagicEffect(getCreaturePosition(cid), 30)
		doRemoveItem(item.uid, 1)	
return true
end

 

Editado por Way20 (veja o histórico de edições)

 

 

 

Nós somos aquilo que fazemos repetidamente. Excelência, não é um modo de agir, mas um hábito.

                                                                                                                                                                                                                                        Aristóteles 

Link para o post
Compartilhar em outros sites
2 horas atrás, Way20 disse:

Tava dando 1 olhada na lib do seu vip system, acho que assim deve funcionar.

 


--<action itemid="xxxx" event="script" value="other/vipitem.lua"/>--

local amount = 3

function onUse(cid, item, fromPosition, itemEx, toPosition)	
		vip.addVipByAccount(getPlayerAccount(cid), amount)
		doCreatureSay(cid, "Parabéns! Você recebeu ".. amount .." dias VIP!", TALKTYPE_ORANGE_1)
		doSendMagicEffect(getCreaturePosition(cid), 30)
		doRemoveItem(item.uid, 1)	
return true
end

 

 

Ele deu a vip, no site dizia que tem vip, e no server apareceu que eu tinha experiência, mas não consigo acessar a area donate. :(

Link para o post
Compartilhar em outros sites
function onStepIn(cid, item, position, fromPosition)

	local tileConfig = {
		kickPos = { x =167, y = 51, z = 7},
		kickMsg = "Você não é VIP, para saber mais como ter acesso a áreas e itens exclusivos, acesse o nosso site!",
		enterMsg = "Bem vindo a área VIP, agradecemos a sua doação!",
		enterEffect = CONST_ME_MAGIC_RED,
	}

	if isPlayer(cid) == true then
		if vip.accountHasVip(getPlayerAccount(cid)) == false then
			doTeleportThing(cid, tileConfig.kickPos)
			doSendMagicEffect(tileConfig.kickPos, tileConfig.kickEffect)
			doPlayerSendCancel(cid, tileConfig.kickMsg)
		else		
			doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, tileConfig.enterMsg)
			doSendMagicEffect(position, tileConfig.enterEffect)
		end
		return true
	end
end

 

Editado por Way20 (veja o histórico de edições)

 

 

 

Nós somos aquilo que fazemos repetidamente. Excelência, não é um modo de agir, mas um hábito.

                                                                                                                                                                                                                                        Aristóteles 

Link para o post
Compartilhar em outros sites
1 hora atrás, Way20 disse:

function onStepIn(cid, item, position, fromPosition)

	local tileConfig = {
		kickPos = { x =167, y = 51, z = 7},
		kickMsg = "Você não é VIP, para saber mais como ter acesso a áreas e itens exclusivos, acesse o nosso site!",
		enterMsg = "Bem vindo a área VIP, agradecemos a sua doação!",
		enterEffect = CONST_ME_MAGIC_RED,
	}

	if isPlayer(cid) == true then
		if vip.accountHasVip(getPlayerAccount(cid)) == false then
			doTeleportThing(cid, tileConfig.kickPos)
			doSendMagicEffect(tileConfig.kickPos, tileConfig.kickEffect)
			doPlayerSendCancel(cid, tileConfig.kickMsg)
		else		
			doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, tileConfig.enterMsg)
			doSendMagicEffect(position, tileConfig.enterEffect)
		end
		return true
	end
end

 

 

Com esse código, nem aparece mais quem ele é vip, com o outro ainda aparecia, e mesmo assim ainda nem entra na area... :/

Link para o post
Compartilhar em outros sites
49 minutos atrás, Skipper disse:

 

Com esse código, nem aparece mais quem ele é vip, com o outro ainda aparecia, e mesmo assim ainda nem entra na area... :/

 

function onStepIn(cid, item, position, fromPosition)

local tileConfig = {
	kickPos = { x =167, y = 51, z = 7},
	kickMsg = "Você não é VIP, para saber mais como ter acesso a áreas e itens exclusivos, acesse o nosso site!",
	enterMsg = "Bem vindo a área VIP, agradecemos a sua doação!",
	enterEffect = CONST_ME_MAGIC_RED,
}

	if isPlayer(cid) == true then
		if vip.hasVip(cid) == false then
			doTeleportThing(cid, tileConfig.kickPos)
			doSendMagicEffect(tileConfig.kickPos, tileConfig.kickEffect)
			doPlayerSendCancel(cid, tileConfig.kickMsg)
		else			
			doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, tileConfig.enterMsg)
			doSendMagicEffect(position, tileConfig.enterEffect)
		end
	return true
	end
end

 

 

 

 

Nós somos aquilo que fazemos repetidamente. Excelência, não é um modo de agir, mas um hábito.

                                                                                                                                                                                                                                        Aristóteles 

Link para o post
Compartilhar em outros sites

Agora funcionou, só que o problema é que o script de action do item, está me dando acesso a área em segundos, e não em dias! kkkk

Tipo se eu colocar:

local amount = 30

function onUse(cid, item, fromPosition, itemEx, toPosition)	
		vip.addVipByAccount(getPlayerAccount(cid), amount)
		doCreatureSay(cid, "Parabéns! Você recebeu ".. amount .." dias VIP!", TALKTYPE_ORANGE_1)
		doSendMagicEffect(getCreaturePosition(cid), 30)
		doRemoveItem(item.uid, 1)	
return true
end

Fica 30 segundos kkkk

Editado por Skipper (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • Solução
5 minutos atrás, Skipper disse:

 

Agora funcionou, só que o problema é que o script de action do item, está me dando acesso a área em segundos, e não em dias! kkkk 

 

 

--<action itemid="xxxx" event="script" value="other/vipitem.lua"/>--

local amount = 3
local days = amount*60*24*60

function onUse(cid, item, fromPosition, itemEx, toPosition)	
		vip.addVipByAccount(getPlayerAccount(cid), days)
		doCreatureSay(cid, "Parabéns! Você recebeu ".. amount .." dias VIP!", TALKTYPE_ORANGE_1)
		doSendMagicEffect(getCreaturePosition(cid), 30)
		doRemoveItem(item.uid, 1)	
return true
end

 

 

 

 

Nós somos aquilo que fazemos repetidamente. Excelência, não é um modo de agir, mas um hábito.

                                                                                                                                                                                                                                        Aristóteles 

Link para o post
Compartilhar em outros sites
1 minuto atrás, Way20 disse:

 


--<action itemid="xxxx" event="script" value="other/vipitem.lua"/>--

local amount = 3
local days = amount*60*24*60

function onUse(cid, item, fromPosition, itemEx, toPosition)	
		vip.addVipByAccount(getPlayerAccount(cid), days)
		doCreatureSay(cid, "Parabéns! Você recebeu ".. amount .." dias VIP!", TALKTYPE_ORANGE_1)
		doSendMagicEffect(getCreaturePosition(cid), 30)
		doRemoveItem(item.uid, 1)	
return true
end

 

 

Cara, funcionou! Nem sei como te agradecer! Muito obrigado, desde já! E desculpa por te fazer passar mó tempão mexendo nisso! kkk Valeu!

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.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo