BA
pedido

Urgente (Talkction)

Por Baiakuda, 18 de dez. de 2012 em Scripts

sistema vip + premium
script
20
2.9k
BaiakudaB
18 de dezembro de 2012 às 10:58

Olá, é o seguinte, eu uso um sistema de vip e gostaria que quando o player ganha-se "x" dias de vip ele mesmo tanto em dias de premium, e quando acabar a vip acaba-se a premium dele tambem.

 

MEU SISTEMA VIP (talkaction) \/

local config = {
vip = "yes",
storage = 13500
}

function onSay(cid, words, param, channel)
	if words == "/buyvip" then
			local days = 10
local storageplayer = getPlayerStorageValue(cid, 13500)
			if doPlayerRemoveItem(cid, 8981, 1) then
					addVipDays(cid, days)
	 doPlayerAddPremiumDays(cid, days)
					doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você adicionou "..days.." dia(s) de vip, agora você possui "..getVipDays(cid).." dia(s) de vip.")
			else
					doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não tem vip doll para ativar sua vip.")
			end

	elseif words == "/vipdays" then
			local duration = getVipDate(cid)
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você possui "..getVipDays(cid).." dia(s) de vip."..(duration and (" Ela irá durar até "..duration..".") or ""))
	end
	return TRUE
end

 

<talkaction words="/buyvip;/vipdays" event="script" value="vipaccplayer.lua"/>

Editado Dezembro 18 por Baiakuda

RoksasR
18 de dezembro de 2012 às 11:03

Qual o problema com o Script? Pelo que eu vi está certo, quando adiciona os dias Vips, ao mesmo tempo adiciona dias Premium. No Character List, ficará os dias normalmente! Procure explicar o ocorrido.

 

Caso também esteja cansado desse lhe recomendo este aqui:

http://www.xtibia.co...lassic-premium/

BENÇA :))

 

@EDIT

 

Percebi! Tente assim:

 

 

local config = {
vip = "yes",
storage = 13500
}

function onSay(cid, words, param, channel)
			if words == "/buyvip" then
		    local days = 30
local storageplayer = getPlayerStorageValue(cid, 13500)
if doPlayerRemoveItem(cid, 8981, 1) then
addVipDays(cid, days)
doPlayerAddPremiumDays(cid, days)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você adicionou "..days.." dia(s) de vip, agora você possui "..getVipDays(cid).." dia(s) de vip.")
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não tem vip doll para ativar sua vip.")
							end

			elseif words == "/vipdays" then
							local duration = getVipDate(cid)
							doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você possui "..getVipDays(cid).." dia(s) de vip."..(duration and (" Ela irá durar até "..duration..".") or ""))
			end
			return TRUE
end

Editado Dezembro 18 por Roksas

BaiakudaB
18 de dezembro de 2012 às 11:18

Desculpa acho que não expliquei direito, é o seguinte eu uso o sistema "FREE PREMIUM ACCOUNT", pra todos terem premium, só que antigamente eu tinha um script (perdi ele) que quando o player coloca-se vip aparece na tela do char os dias de vip.

Se o player fosse free apareceria "gratis premium account" se fosse vip iria aparecer "10 days premium account" (exemplo)

DinoAdminD
18 de dezembro de 2012 às 11:21

Desculpa acho que não expliquei direito, é o seguinte eu uso o sistema "FREE PREMIUM ACCOUNT", pra todos terem premium, só que antigamente eu tinha um script (perdi ele) que quando o player coloca-se vip aparece na tela do char os dias de vip.

Se o player fosse free apareceria "gratis premium account" se fosse vip iria aparecer "10 days premium account" (exemplo)

 

Vá em config.lua e procure por estas tags

 

freePremium = true
premiumForPromotion = true

 

onde esta true voce coloca "false"

Editado Dezembro 18 por DinoAdmin

BaiakudaB
18 de dezembro de 2012 às 11:27

se eu deixar os players sem premium account eles nao consegue usar os addons =x

gostaria que desse pra eles terem a premium gratis ;x

DinoAdminD
18 de dezembro de 2012 às 11:29

se eu deixar os players sem premium account eles nao consegue usar os addons =x

gostaria que desse pra eles terem a premium gratis ;x

 

Entao deiche do geito que esta com "true"

BaiakudaB
18 de dezembro de 2012 às 12:04

já esta true, mas ainda não resolveu meu problema, mais alguém ai gostaria de me ajuda?

SmiXS
18 de dezembro de 2012 às 12:05

Ainda não intendi sua dúvida...

RoksasR
18 de dezembro de 2012 às 12:06

Muito estranho, pois se o script dá os dias, e no config.lua está habilitado o Premium para todos..

DinoAdminD
18 de dezembro de 2012 às 12:08

eu creio que deveria deichar false, ai o script ia dar os dias de premium para o player e ai sim ia aparecer no character list "Left 30 days Premium account"

BaiakudaB
18 de dezembro de 2012 às 12:24

Vou tentar explicar novamente...

SE eu deixar no config freepremium = false, OS PLAYERS NAO CONSEGUEM USAR OS ADDONS

SE eu deixar no config freepremium = true, NÃO APARECE OS DIAS DE VIP, APARECE ISSO \/

vip.png

 

EU GOSTARIA QUE APARECE-SE, GRATIS PREMIUM PARA OS FREE E PARA OS VIP ASSIM:

ACCOUN STATUS: 10 DIAS PREMIUM ( EXEMPLO )

Editado Dezembro 18 por Baiakuda

SmiXS
18 de dezembro de 2012 às 12:31

Acho que no seu caso, iria precisar programar certos códigos em seu cliente ou nas sources. Por script acho impossível.

RoksasR
18 de dezembro de 2012 às 12:31

Para os addons, procure por:

 

disableOutfitsForPrivilegedPlayers =

 

Mude para:

 

disableOutfitsForPrivilegedPlayers = false

BaiakudaB
18 de dezembro de 2012 às 12:52

é no config.lua né?

eu achei e já esta assim, e msm assim qndo o player é free ele nao consegue usar os ADDONS

Editado Dezembro 18 por Baiakuda

RoksasR
18 de dezembro de 2012 às 13:04

No arquivo config.lua