Postado Abril 1, 2015 10 anos Dei o rep+ mesmo antes de testar Podia fazer um tutorial Completo desse Sistema Que Você usa? Exemplo á tile do VIP e tals Uma outra pergunta é na pasta ACTIONS que adiciona á script? Obstaculo Impossível? Impossível é existir algo Impossível Confira os Meus Conteúdos ! Te ajudei ? REP + E Ficamos KIT
Postado Abril 1, 2015 10 anos Autor Eu criei um tópico ensinando a adicionar o script, agora é só aguardar a moderação aprovar, eu uso o sistema normal de premium account, e um npc que teleporta para algumas cidades e hunts apenas jogadores premium account, eu só gostaria que algum scripter adiciona-se as linhas para adicionar [VIP] no nome e um script endvip.lua para quando acabar os dias de premium remover o [VIP] do nick do jogador.
Postado Abril 1, 2015 10 anos Essa função modificada do Vodkart deve te ajudar. Segue as intruções!! ------------------//------------------ Em creaturescript/script Crie um arquivo.lua e renomeie para endvip.lua --[[ by vodkart ]]-- function onLogin(cid) local pos = {x = 157, y = 50, z = 7} -- posiçao do templo. function Vodka(cid) if isPlayer(cid) then db.executeQuery("UPDATE `players` SET `name` = '"..string.sub(getCreatureName(cid), 7).."' WHERE `id` = "..getPlayerGUID(cid)..";") doRemoveCreature(cid) end end if getPlayerPremiumDays(cid) > 0 then doTeleportThing(cid, pos) doPlayerPopupFYI(cid, "Sua vip Account acabou.") if string.find(tostring(getCreatureName(cid)),"[[Vip]]") then addEvent(Vodka, 3*1000, cid) end end return TRUE end Em creaturescript.xml adicione a tag: <event type="login" name="CheckVip" script="endvip.lua"/>
Postado Abril 1, 2015 10 anos Premmy Scroll: function onUse(cid, item, frompos, item2, topos) local t = { dias = 30, -- Dias para adicionar. storage = 99983, -- Só mexa se essa estiver em uso! tempo = 5, -- Tempo para kickar o personagem após usar o item. pz = false, -- Só usar em protect zone [True/False]. } if t.pz == true and getTilePzInfo(getPlayerPosition(cid)) == false then return doPlayerSendTextMessage(cid, 25, "Você não pode usar esse item fora da protection zone.") end if getPlayerStorageValue(cid, t.storage) < 1 then setPlayerStorageValue(cid, t.storage, 1) doPlayerAddPremiumDays(cid, t.dias) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você ganhou "..t.dias.." dias de premium account e será kickado em "..t.tempo.." segundos para alterar o nome.") doSendMagicEffect(getPlayerPosition(cid), 36) db.executeQuery("UPDATE `players` SET `name` = '[VIP] "..getCreatureName(cid).."' WHERE `id` = "..getPlayerGUID(cid)..";") doRemoveItem(item.uid) addEvent(doRemoveCreature, t.tempo*1000, cid, true) else doPlayerAddPremiumDays(cid, t.dias) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você adicionou mais "..t.dias.." dias de premium account.") doSendMagicEffect(getPlayerPosition(cid), 36) doRemoveItem(item.uid) end return true end Agora vai em "Data/creaturescripts/scripts" copie e cole 1 .lua e renomeie para checkvip.lua, apague tudo e cole: --[[ by vodkart ]]-- function onLogin(cid) local pos = {x = 160, y = 54, z = 7} -- Posição do templo. local storage = 99983 local tempo = 5 if getPlayerStorageValue(cid, storage) <= 0 and getPlayerPremiumDays(cid) >= 1 then setPlayerStorageValue(cid, storage, 1) end function Vodka(cid) if isPlayer(cid) then db.executeQuery("UPDATE `players` SET `name` = '"..string.sub(getCreatureName(cid), 7).."' WHERE `id` = "..getPlayerGUID(cid)..";") doRemoveCreature(cid) end end if getPlayerStorageValue(cid, storage) == 1 and getPlayerPremiumDays(cid) < 1 then doTeleportThing(cid, pos) doPlayerSendTextMessage(cid, 25, "Sua premium account acabou, você será kickado em "..tempo.." segundos para alterar o nome.") setPlayerStorageValue(cid, storage, -1) if string.find(tostring(getCreatureName(cid)),"[[VIP]]") then addEvent(Vodka, tempo*1000, cid) end end return TRUE end Depois em "Data/creaturescripts" abra o creaturescripts.xml e adicione: <event type="login" name="CheckVip" script="checkvip.lua"/> Testei aqui e tá funcional em TFS 0.4, se estiver faltando algo me fale . Editado Abril 1, 2015 10 anos por Wakon (veja o histórico de edições) ➥ Regras | Seções OTServ | Seções BOT
Postado Abril 1, 2015 10 anos Autor Em 01/04/2015 em 04:36, Wakon disse: Premmy Scroll: function onUse(cid, item, frompos, item2, topos) local t = { dias = 30, -- Dias para adicionar. storage = 99983, -- Só mexa se essa estiver em uso! tempo = 5, -- Tempo para kickar o personagem após usar o item. pz = false, -- Só usar em protect zone [True/False]. } if t.pz == true and getTilePzInfo(getPlayerPosition(cid)) == false then return doPlayerSendTextMessage(cid, 25, "Você não pode usar esse item fora da protection zone.") end if getPlayerStorageValue(cid, t.storage) < 1 then setPlayerStorageValue(cid, t.storage, 1) doPlayerAddPremiumDays(cid, t.dias) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você ganhou "..t.dias.." dias de premium account e será kickado em "..t.tempo.." segundos para alterar o nome.") doSendMagicEffect(getPlayerPosition(cid), 36) db.executeQuery("UPDATE `players` SET `name` = '[VIP] "..getCreatureName(cid).."' WHERE `id` = "..getPlayerGUID(cid)..";") doRemoveItem(item.uid) addEvent(doRemoveCreature, t.tempo*1000, cid, true) else doPlayerAddPremiumDays(cid, t.dias) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você adicionou mais "..t.dias.." dias de premium account.") doSendMagicEffect(getPlayerPosition(cid), 36) doRemoveItem(item.uid) end return true end Agora vai em "Data/creaturescripts/scripts" copie e cole 1 .lua e renomeie para checkvip.lua, apague tudo e cole: --[[ by vodkart ]]-- function onLogin(cid) local pos = {x = 160, y = 54, z = 7} -- Posição do templo. local storage = 99983 local tempo = 5 if getPlayerStorageValue(cid, storage) <= 0 and getPlayerPremiumDays(cid) >= 1 then setPlayerStorageValue(cid, storage, 1) end function Vodka(cid) if isPlayer(cid) then db.executeQuery("UPDATE `players` SET `name` = '"..string.sub(getCreatureName(cid), 7).."' WHERE `id` = "..getPlayerGUID(cid)..";") doRemoveCreature(cid) end end if getPlayerStorageValue(cid, storage) == 1 and getPlayerPremiumDays(cid) < 1 then doTeleportThing(cid, pos) doPlayerSendTextMessage(cid, 25, "Sua premium account acabou, você será kickado em "..tempo.." segundos para alterar o nome.") setPlayerStorageValue(cid, storage, -1) if string.find(tostring(getCreatureName(cid)),"[[VIP]]") then addEvent(Vodka, tempo*1000, cid) end end return TRUE end Depois em "Data/creaturescripts" abra o creaturescripts.xml e adicione: <event type="login" name="CheckVip" script="checkvip.lua"/>Testei aqui e tá funcional em TFS 0.4, se estiver faltando algo me fale . Wakon funcionou, só teria como fazer ele adicionar o [VIP] em todos os personagens da conta e remover de todos os personagens? porque ele está adicionando e tirando o [VIP] apenas do personagem que usa o scroll! Editado Abril 1, 2015 10 anos por Animal Pak (veja o histórico de edições)
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.