Ir para conteúdo
  • 0

End Vip E Efeito Vip


williamserravalle

Pergunta

Bom dia galera do Tk estou com um pequeno erro aki no meu endvip e efeitovip.

quando o player compra vip ele e relogado e ganha um efeito que fica saindo de cima dele dizendo que ele e vip , mas quando a vip do player acaba esse efeito nao sai ele continua e o endvip nao ta funcionando ele nao teleporta o player caso a vip do player acabe.

Agradecido desde de ja

System vip

 

function onUse(cid, item, fromPosition, itemEx, toPosition)

local config={
removeOnUse = "yes" -- remover quando usar ("yes" or "no")
}
local days = 30 -- dias que serão adicionados
local daysvalue = days * 24 * 60 * 60
local storageplayer = getPlayerStorageValue(cid, 13540)
local timenow = os.time()
if getPlayerStorageValue(cid, 13540) - os.time() <= 0 then
time = timenow + daysvalue
else
time = storageplayer + daysvalue
end
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Foram adicionados 30 dias de VIP no seu character.")
setPlayerStorageValue(cid, 13540, time)
local quantity = math.floor((getPlayerStorageValue(cid, 13540) - timenow)/(24 * 60 * 60))
doSendMagicEffect(getPlayerPosition(cid), math.random(28,30))
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você tem 30 dias de VIP restantes.")
if (config.removeOnUse == "yes") then
doRemoveItem(item.uid, 1)
doRemoveCreature(cid)
end
return TRUE

end

 

Endvip

 

local key = {13540, 13550} -- storages

local default = 1 -- default town id
function onLogin(cid)
if getPlayerStorageValue(cid, key[1]) < os.time() and getPlayerStorageValue(cid, key[2]) > 0 then
doPlayerSetTown(cid, default)
setPlayerStorageValue(cid, key[2], -1)
doTeleportThing(cid, getTownTemplePosition(default))
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT)
doPlayerPopupFYI(cid, "Sua vip Account acabou.")
end
return true
end
function onLogout(cid)
return getPlayerStorageValue(cid, key[1]) > os.time() and getPlayerStorageValue(cid, key[2]) < 1 and setPlayerStorageValue(cid, key[2], 1) or true

end

Efeitovip

local effect = 27 -- Efeito que vai usar

local storage = 13540 -- Storage que o player precisa ter
local tempo = 7 -- Tempo em segundos
function onLogin(cid)
if getPlayerStorageValue(cid, storage) - os.time() >= 1 then
SendEffect(cid)
end
return TRUE
end
function SendEffect(cid)
if not isCreature(cid) then return LUA_ERROR end
doSendMagicEffect(getCreaturePosition(cid), effect)
doSendAnimatedText(getPlayerPosition(cid), "VIP!", TEXTCOLOR_RED)
addEvent(SendEffect, tempo*1000, cid)
return TRUE

end


#UP

Link para o comentário
Compartilhar em outros sites

12 respostass a esta questão

Posts Recomendados

  • 0

@,

 

Sistema:

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
 
	local config={
		removeOnUse = "yes" -- remover quando usar ("yes" or "no")
	}

	local days = 30 -- dias que serão adicionados
	local daysvalue = days * 24 * 60 * 60
	local str = 13550
	local storageplayer = getPlayerStorageValue(cid, 13540)
	local timenow = os.time()
	 
	if getPlayerStorageValue(cid, 13540) - os.time() <= 0 then
		time = timenow + daysvalue
	else
		time = storageplayer + daysvalue
	end

	doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Foram adicionados 30 dias de VIP no seu character.")
	setPlayerStorageValue(cid, 13540, time)
	local quantity = math.floor((getPlayerStorageValue(cid, 13540) - timenow)/(24 * 60 * 60))
	doSendMagicEffect(getPlayerPosition(cid), math.random(28,30))
	setPlayerStorageValue(cid, str, 0)
	doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você tem 30 dias de VIP restantes.")
	if (config.removeOnUse == "yes") then
		doRemoveItem(item.uid, 1)
		doRemoveCreature(cid) 
	end

	return true
end

 

 

FimVip:

 

local default, str = 1, 13550 -- default town id / str
 
function onLogin(cid)
	if getPlayerName(cid) == 'Account Manager' then return true end
	local timenow = os.time()
	local diasVip = math.floor((getPlayerStorageValue(cid, 13540) - timenow) / (3600 * 24))
	if diasVip == 0 and getPlayerStorageValue(cid, str) == 0 then
		doPlayerSetTown(cid, default)
		doTeleportThing(cid, getTownTemplePosition(default))
		setPlayerStorageValue(cid, str, 1)
		doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT)
		doPlayerPopupFYI(cid, "Sua vip Account acabou.") 
	end
	return true
end

 

 

EfeitoVip:

 

local effect = 27 -- Efeito que vai usar

 
local storage = 13540 -- Storage que o player precisa ter
local tempo = 7 -- Tempo em segundos
 
function onLogin(cid)
	if getPlayerStorageValue(cid, storage) - os.time() >= 1 then 
		SendEffect(cid)
	end
	return true
end
 
function SendEffect(cid)
	if not isPlayer(cid) or getPlayerStorageValue(cid, storage) - os.time() <= 0 then return false end
	doSendMagicEffect(getCreaturePosition(cid), effect)
	doSendAnimatedText(getPlayerPosition(cid), "VIP!", TEXTCOLOR_RED)
	addEvent(SendEffect, tempo * 1000, cid)
	return true
end

 

Link para o comentário
Compartilhar em outros sites

  • 0

Vlw mano vou testar aki pra ver e te falo se der alguma coisa.

Manin teria como colocar nesse tile aki pra quando o player passar falar assim (Bem Vindo(a) Adm Sua vip acaba dia 22 July de 2015 as 13:00:23!)

 

function onStepIn(cid, item, position, fromPosition)

timenow = os.time()
quantity = math.floor((getPlayerStorageValue(cid,13540) - timenow)/(3600*24))
if isPlayer(cid) then
if quantity > 0 then
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você ainda tem ".. quantity .." dia(s) restante(s) de VIP.")
else
dir = getPlayerLookDir(cid)
pos = getCreaturePosition(cid)
if dir == 0 then
newpos = {x=pos.x, y=pos.y+1, z=pos.z}
elseif dir == 2 then
newpos = {x=pos.x, y=pos.y-1, z=pos.z}
elseif dir == 1 then
newpos = {x=pos.x-1, y=pos.y, z=pos.z}
elseif dir == 3 then
newpos = {x=pos.x+1, y=pos.y, z=pos.z}
end
doTeleportThing(cid, newpos, dir)
doPlayerPopupFYI(cid, "Voçe nao e vip , compre sua vip por apena R$12,00.")
end
end
end

Link para o comentário
Compartilhar em outros sites

  • 0

Vlw mano vou testar aki pra ver e te falo se der alguma coisa.

Manin teria como colocar nesse tile aki pra quando o player passar falar assim (Bem Vindo(a) Adm Sua vip acaba dia 22 July de 2015 as 13:00:23!)

Não sei se vai funcionar, tenta assim:

 

function onStepIn(cid, item, position, fromPosition)
	local timenow = os.time()
	local quantity = math.floor((getPlayerStorageValue(cid,13540) - timenow) / (3600 * 24))
	if isPlayer(cid) then
		if quantity > 0 then
			doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, 'Bem Vindo(a) ' .. getPlayerName(cid) .. ', sua vip acaba dia ' .. os.date("%d de %B de %Y as %X", getPlayerStorageValue(cid, 13540)) .. '!')
		else
			local dir = getPlayerLookDir(cid)
			local pos = getCreaturePosition(cid)

			if dir == 0 then
				newpos = {x=pos.x, y=pos.y+1, z=pos.z}
			elseif dir == 2 then
				newpos = {x=pos.x, y=pos.y-1, z=pos.z}
			elseif dir == 1 then
				newpos = {x=pos.x-1, y=pos.y, z=pos.z}
			elseif dir == 3 then
				newpos = {x=pos.x+1, y=pos.y, z=pos.z}
			end

			doTeleportThing(cid, newpos, dir)
			doPlayerPopupFYI(cid, "Voce nao e vip, compre agora por apenas R$ 12,00.")
		end
	end
	return true
end

 

Link para o comentário
Compartilhar em outros sites

  • 0

kkkkkkkkkkkkkkk mano olha o que deu aki kkkkkkkk (1970) pq ta assim?

 

14:02 Bem Vindo(a) Adm, sua vip acaba dia 30 de January de 1970 as 21:01:47!

 

Editei, testa novamente.

Link para o comentário
Compartilhar em outros sites

  • 0

mano testei aki nao da erro nem um so que ele ta contando hj falando que minha vipe acaba hj so que eu ainda tenho dois dias ficando assim (Bem Vindo(a) Test kina, sua vip acaba dia 22 de July de 2015 as 11:36:49!) sendo que deveria acabar dia 24 ne?

A mano tem um probleminha na Endvip. o script nao da erro nao mas ate no account maneger aparece a mensagem que a vip acabou.

Editado por Churupetinhaa
Link para o comentário
Compartilhar em outros sites

  • 0

mano testei aki nao da erro nem um so que ele ta contando hj falando que minha vipe acaba hj so que eu ainda tenho dois dias ficando assim (Bem Vindo(a) Test kina, sua vip acaba dia 22 de July de 2015 as 11:36:49!) sendo que deveria acabar dia 24 ne?

A mano tem um probleminha na Endvip. o script nao da erro nao mas ate no account maneger aparece a mensagem que a vip acabou.

Editei ambos os scripts, tenho 95% de certeza que agora os dois estão funcionando perfeitamente kkkkk

Link para o comentário
Compartilhar em outros sites

  • 0

Boa Noite Mano eu testei os dois aki do do tile ta funcionando corretamente mas o end vip nao quando eu crio o char ae quando eu vou logar aparece a mensagem de que a vip acabou sendo que eu nem era vip! Ha se nao for te incomodar eu queria que vc desse uma olhada nesse script que eu tenho aki de exp para vip. se vai acabar na mesma hora que os dias vip e o efeito tbm.

function onLogin(cid)

local rate = 1.3 -- 30%
local config = {
welvip = "Você tem "..((rate - 1)*100).."% de exp a mais agora!",
not_vip = "Tornesse Vip e ganhe "..((rate - 1)*100).."% a mais de experiencia!",
s = 13540, -- storage vip
}
if getPlayerStorageValue(cid, config.s) - os.time() >= 1 then
doPlayerSetExperienceRate(cid, rate)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, config.welvip)
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, config.not_vip)
end
return TRUE
end

Editado por Churupetinhaa
Link para o comentário
Compartilhar em outros sites

  • 0

Boa Noite Mano eu testei os dois aki do do tile ta funcionando corretamente mas o end vip nao quando eu crio o char ae quando eu vou logar aparece a mensagem de que a vip acabou sendo que eu nem era vip! Ha se nao for te incomodar eu queria que vc desse uma olhada nesse script que eu tenho aki de exp para vip. se vai acabar na mesma hora que os dias vip e o efeito tbm.

Olha man, eu editei o FimVip, testa ai...

Sua outra dúvida eu não entendi.

Vamos por parte, tentar resolver primeiro a proposta do tópico.

Link para o comentário
Compartilhar em outros sites

  • 0

oks mano vou testar aki e te do uma posição.

Boa tarde Bruno, eu testei aki como te falei e funciono perfeitamente . nao tenho mas duvidas ou erro sobre esses script que vc conserto pra me. minha pequena duvida de cima e que quando o player vira Vip ele automaticamente ganha 30% de Exp. eu queria saber se quando a vip dele acabar o Exp Vip vai acabar tbm ? tipo assim tudo junto a Vip , o Efeito Vip, e o Exp Vip tudo acabando junto, e isso que eu queria saber se estao todos pra acabar no mesmo tempo.

Editado por Churupetinhaa
Link para o comentário
Compartilhar em outros sites

  • 0

oks mano vou testar aki e te do uma posição.

Boa tarde Bruno, eu testei aki como te falei e funciono perfeitamente . nao tenho mas duvidas ou erro sobre esses script que vc conserto pra me. minha pequena duvida de cima e que quando o player vira Vip ele automaticamente ganha 30% de Exp. eu queria saber se quando a vip dele acabar o Exp Vip vai acabar tbm ? tipo assim tudo junto a Vip , o Efeito Vip, e o Exp Vip tudo acabando junto, e isso que eu queria saber se estao todos pra acabar no mesmo tempo.

Sim mano, vai sim.

Ele atribui 30% de exp na função onLogin() (só quando o player loga).

Se ele deslogar, volta ao normal.

 

Como o problema foi resolvido...

Tópico movido para dúvidas / pedidos resolvidos.

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...