KY

Vip System By Account V1.0

Por Kydrai, 04 de jul. de 2010 em Mods, funções e outros

otserv
tibia
script
5.0 (3)
177
71.3k
29 de julho de 2010 às 20:27

kydrai

 

bem que vc podia faze um script, pra quando a vip acaba-se,

 

o player perde-se a promotion vip e volta a ser oq era antes :winksmiley02:

 

ia me ajuda mto

 

espero sua ajuda, obrigado

psybreakP
31 de julho de 2010 às 01:09

qual e storage ??? do vip system

31 de julho de 2010 às 17:08

Três palavras descrevem esse script :

 

PERFEITO, PERFEITO E PERFEITO!

KydraiK
03 de agosto de 2010 às 18:23

@felipedorgas

Seria parecido com o onLogin, só precisaria colocar a função doPlayerSetPromotionLevel(cid, level).

 

@psybreak

Esse script não é por storage.

 

@lXlSasukelXl

Vlw pelo comentário.

03 de agosto de 2010 às 18:35

@felipedorgas

Seria parecido com o onLogin, só precisaria colocar a função doPlayerSetPromotionLevel(cid, level).

 

 

poderia criar pra mim?

 

as voc vip seria

 

voc 9 voltaria pra 5

voc 10 voltaria pra 6

voc 11 voltaria pra 7

voc 12 voltaria pra 8

 

ai seria pra coloca no viplogin?

 

vlw

Editado Agosto 3 por felipedorgas

KydraiK
03 de agosto de 2010 às 18:45

Não sei bem como é a promotion.

Assim seria mudando o promotion level:

function onLogin(cid)
if getVipTime(cid) > 0  and isVip(cid) == FALSE then
	local townid = 1
	doPlayerSetTown(cid, townid)
	local templePos = getTownTemplePosition(getPlayerTown(cid))
	doTeleportThing(cid, templePos, false)
	doPlayerSetPromotionLevel(cid, 1)
	setVipTime(cid, 0)
	doTeleportPlayers(cid, templePos)
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Sua Vip acabou!")
else
	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

E assim mudando pela vocação:

function onLogin(cid)
if getVipTime(cid) > 0  and isVip(cid) == FALSE then
	local townid = 1
	doPlayerSetTown(cid, townid)
	local templePos = getTownTemplePosition(getPlayerTown(cid))
	doTeleportThing(cid, templePos, false)
	local voc = getPlayerVocation(cid)
	if voc >= 9 then
		doPlayerSetVocation(cid, voc-4)
	end
	setVipTime(cid, 0)
	doTeleportPlayers(cid, templePos)
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Sua Vip acabou!")
else
	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

rapidashR
06 de agosto de 2010 às 14:10

HEy vey ta dando esse erro

[06/08/2010 14:05:45] Error during getDataInt(viptime).

[06/08/2010 14:05:45] Error during getDataInt(viptime).

[06/08/2010 14:05:45] Error during getDataInt(viptime).

[06/08/2010 14:06:32] Error during getDataInt(viptime).

[06/08/2010 14:06:32] Error during getDataInt(viptime).

[06/08/2010 14:06:32] OTSYS_SQLITE3_PREPARE(): SQLITE ERROR: no such column: viptime (UPDATE "accounts" SET "viptime" = 1283706392 WHERE "id" = 2;)

[06/08/2010 14:06:32] Error during getDataInt(viptime).

 

 

'-' oq faço ele nao ta adiconando a vipdays 14:06 Você adicionou 30 dia(s) de vip, agora você possui 0 dia(s) de vip. :(

KydraiK
06 de agosto de 2010 às 21:14

@Rapidash

Error during getDataInt(viptime).

Provavelmente é porque vc não instalou a tabela, coloque o exemplo da talkaction e execute o comando /installvip.

jvns23J
07 de agosto de 2010 às 20:57

otimo ja tinha gente aki reclamando por q tava caro d mais bota vip em cada char da acc

2 semanas depois...
21 de agosto de 2010 às 19:57

Kydrai, tem como add uma storage pra qndo o player ganha vip, e pra qndo a vip acaba, ele perde a storage?

 

nem que ela n faça nada..presciso para website!

 

 

e tbm se possivel, a mensagem de quantos dias o player possui VIP, apareçer somente pra qm é vip.

(da pra usar a storage aqui :P:)

 

obrigado.

Editado Agosto 21 por felipedorgas

KydraiK
23 de agosto de 2010 às 12:49

O do storage você usa quando o player compra vip:

doPlayerSetStorageValue(cid, 5000, 1)

Ai vai depender de como você ta fazendo pra saber onde por.

 

Corrigi a mensagem e adicionei "doPlayerSetStorageValue(cid, 5000, 0)":

function onLogin(cid)
       local vip = isVip(cid)
       if getVipTime(cid) > 0 and vip == FALSE then
               doPlayerSetStorageValue(cid, 5000, 0) -- Termina a VIP
               local townid = 1
               doPlayerSetTown(cid, townid)
               local templePos = getTownTemplePosition(getPlayerTown(cid))
               doTeleportThing(cid, templePos, false)
               setVipTime(cid, 0)
               doTeleportPlayers(cid, templePos)
               doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Sua Vip acabou!")
       elseif vip == TRUE 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 Agosto 24 por kydrai

23 de agosto de 2010 às 22:23

doPlayerSetStorageValue(cid, 5000, 0) acho que n funciono...

 

e tbm, a mensagem de quantos dias de vip não apareçe pra ngm

nyuchihaN
28 de agosto de 2010 às 01:04

Da uma ajuda ae =)

 

[28/08/2010 01:04:05] Lua Script Error: [TalkAction Interface]

[28/08/2010 01:04:05] data/talkactions/scripts/vipaccplayer.lua:onSay

 

[28/08/2010 01:04:05] data/talkactions/scripts/vipaccplayer.lua:6: attempt to call global 'addVipDays' (a nil value)

[28/08/2010 01:04:05] stack traceback:

[28/08/2010 01:04:05] data/talkactions/scripts/vipaccplayer.lua:6: in function <data/talkactions/scripts/vipaccplayer.lua:1>

 

 

areiabrA
28 de agosto de 2010 às 01:16

[28/08/2010 15:09:53] Lua Script Error: [TalkAction Interface]

[28/08/2010 15:09:53] data/talkactions/scripts/vipaccplayer.lua:onSay

 

[28/08/2010 15:09:54] data/talkactions/scripts/vipaccplayer.lua:6: attempt to call global 'addVipDays' (a nil value)

[28/08/2010 15:09:54] stack traceback:

[28/08/2010 15:09:55] data/talkactions/scripts/vipaccplayer.lua:6: in function <data/talkactions/scripts/vipaccplayer.lua:1>

AJUDA MANO

Editado Agosto 28 por Areiabr

VodkartV
28 de agosto de 2010 às 15:18

@UP and 2UP

 

 

Vocês depois que intalaram o sistema da vip account na lib,e colocaram as talkactions,entre no serve com o GOD e vocês teram que excutar o comando:

 

/installvip

 

 

e depois disso começar a usar o sistema,ou sejá dar ou remover dias de vip...