Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Créditos no script.

Explicação: Quando o player upar X level ele ganhará Y dias de premium (configurável), porém só terá efeito com o primeiro char que alcançar o X level, para evitar o ganho extra de premium.
Exemplo: upei level 100 com fulano e ganhei 10 dias de premium, então criei o ciclano e ao pegar level 100 eu não irei ganhar a premium.

1. Crie um arquivo com o nome de "gainpalvl.lua" (sem aspas) em: data/creaturescripts/scripts
Ponha:

--[Criado por Renato Ribeiro para www.TibiaKing.com]--
--[Baseado em um script do Matheus]--

local config {
     level == 100,
     days == 10,
}

function onAdvance(cid, oldlevel, newlevel)

		if getPlayerLevel(cid) >= config.level and getGlobalStorageValue(getPlayerAccountId(cid)+321) <= 0 then
			setGlobalStorageValue(getPlayerAccountId(cid)+321, 1)
			doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você ganhou "..config.days.." dias de premium por alcançar level "..config.level.." em pelo menos um char de sua account. Você não irá ganhar de novo caso upe level "..config.level.." em outro char.")
			doPlayerAddPremiumDays(cid, config.days)
		end
return TRUE
end

2. Em, data/creaturescripts abra o arquivo creaturescripts.xml.
Adicione a tag:

<event type="login" name="gainpalvl" event="script" value="gainpalvl.lua"/> 

3. Em, data/creaturescripts/scripts abra o arquivo login.lua.
Adicione esta linha antes do ultimo return true:

registerCreatureEvent(cid, "gainpalvl")

Me baseei no script do Matheus, aqui.
cool.png

Link para o post
Compartilhar em outros sites
  • 3 weeks later...

Renato tem uns erros no seu script

Definições multiplas são definidas antes da funçãoe e faltou um sinal de =

Não se ultiliza ; após uma definição e sim ,

Na ultima definição não se usa ,

E você esqueceu de por o config. nas definições dentro da função

O Script correto ficaria assim

--[Criado por Renato Ribeiro para www.TibiaKing.com]--

--[baseado em um script do Matheus Sesso]--

local config = {

level = 100,

days = 10

}

function onAdvance(cid, oldlevel, newlevel)

if getPlayerLevel(cid) >= config.level and getGlobalStorageValue(getPlayerAccountId(cid)+321) <= 0 then

setGlobalStorageValue(getPlayerAccountId(cid)+321, 1)

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você ganhou "..config.days.." dias de premium por alcançar level "..config.level.." em pelo menos um char de sua account. Você não irá ganhar de novo caso upe level "..config.level.." em outro char.")

end

return TRUE

end

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

Eu também tinha esquecido do principal

doPlayerAddPremiumDays(cid, config.days)

ashuahsasua

Mas já arrumei tudo agora :P

Iniciantes sempre erram, se não, não seriam iniciantes kk

Valeu ae cara, abraços.

Link para o post
Compartilhar em outros sites

É quando eu vi o script, vi que ele so verifica o level e account,

Nao quis falar nada pq faz tempo que nao toco em scripts :facepalm:

#Script

Bem util,

Com uma simples modificação pode ser usado para quando os player atigirem o level 20 eles automaticamente recebam a promotion ou o dinheiro para a mesma

Link para o post
Compartilhar em outros sites

days = 10,

Esqueceu de tirar a viugula, pois é a ultima definição, após a ultima definição não se usa virgula ;x

Isto causa erro no console ;x

Editado por Toty (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • 1 year later...

Aqui nao deu serto nao , mesmo eu tirando a virgula do days = 10

da o seguinte erro.

no such file or diretory

Algo do tipo no arquivo , /creaturescript/script/gainpalvl.lua

:(

anigiflwo.gif

tk-melhor.png

Link para o post
Compartilhar em outros sites
  • 5 weeks later...
  • 1 year later...

só pra ajudar quem estiver com dúvidas a script está faltando parte apenas juntei ela toda fica assim

 

local config = {


level = 10,
days = 7
}
function onAdvance(cid, oldlevel, newlevel)
if getPlayerLevel(cid) >= config.level and getGlobalStorageValue(getPlayerAccountId(cid)+321) <= 0 then
doPlayerAddPremiumDays(cid, config.days)
setGlobalStorageValue(getPlayerAccountId(cid)+321, 1)
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você ganhou "..config.days.." dias de premium por alcançar level "..config.level.." em pelo menos um char de sua account. Você não irá ganhar de novo caso upe level "..config.level.." em outro char para pegar sua premium basta relogar.")
end
return TRUE
end

 

 

e creaturescript.xml

 

<event type="advance" name="gainpalvl" event="script" value="gainpalvl.lua"/>

 

e login.lua

 

registerCreatureEvent(cid, "gainpalvl")

 

desce jeito aki funcionou bom espero ter ajudado

Compre seus Scripts Agora totalmente seguro e de forma rápida, aceitamos também encomendas.

discord.gg/phJZeHa2k4

 

Projeto ATS (Naruto)

Informações Abaixo

Facebook

Youtube
Discord

 

Tutoriais / Conteúdos

Clique Aqui

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.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo