Ir para conteúdo

Featured Replies

Postado

Salve!

 

Estou com um projeto e para ajudar os players a progredirem mais facilmente pensei em fazer um script de uma box que da itens.

 

Funcionaria da seguinte maneira:

 

Ao criar o char e entrar no server pela primeira vez a box já vai estar na sua bolsa. Até essa parte tudo bem, até porque ela faz parte de outra script. kkk...

 

Bom, agora sim, esse script deve fazer com que eu só consiga usar essa box quando eu atingir o lvl 15. Ao clicar nessa box eu irei ganhar vários itens, e um deles será outra box que eu só vou poder abrir no lvl 30. Ao clicar nessa box eu irei ganhar vários itens e outra box que eu só vou poder abrir no lvl 60. Ao abrir essa box eu irei ganha vários itens e fim. Acabou por aí.

 

Alguém consegue me ajudar a fazer esse script?

 

Estou usando como base um servidor DxP

 

 

 

Resolvido por WhiteBubble

Ir para solução
Postado
  • Autor
13 minutos atrás, WhiteBubble disse:

Não prefere um script que ao player alcançar determinado level ele receba tal item ? Iria ter de criar apenas 3 scripts, do seu modo iria ter de usar 3 itens para as box.

Eu pensei nisso e até já tenho um sistema assim, mas eu queria mudar e deixar do jeito que eu falei porque desse modo o player ao entrar no server já vai ver o item.

 

Com isso ele vai se sentir motivado para upar, para descobrir o que tem ali dentro. Ele vai saber que ao atingir um determinado level ele irá ganhar uma recompensa. Isso da um objetivo para o player.

 

Entendeu?

 

Mas eu não estou conseguindo fazer, pode me ajudar?

Postado
  • Solução

Desculpa a demora pra fazer, eu estava muito ocupado com meu servidor, mas te respondendo, segue abaixo o pedido.

 

Em actions, scripts crie um arquivo com nome "boxlvl25.lua"

e adicione dentro:

 

Spoiler


function onUse(cid, item, frompos, item2, topos)
if getPlayerLevel(cid) < 25 then -- Level necessario pra abrir a box
     doPlayerSendTextMessage(cid, 27, "Voce precisa de level 25 ou mais para abrir essa box")
  return true
  elseif getPlayerLevel(cid) >= 25 then -- Level necessario pra abrir a box

boxstatus = getPlayerStorageValue(cid,55931)-- Alterar o id "55931" pra cada box, pode ser qualquer numero.
			if boxstatus == -1 then
			else
 doPlayerSendCancel(cid,"Voce ja abriu essa box ou nao tem level necessario.")
return true
end
doPlayerAddItem(cid, 2160, 1) -- cid, id_do_item, quantidade
doPlayerAddItem(cid, 2160, 1)
doSendAnimatedText(getCreaturePosition(cid), "!.Parabens.!", 200)
setPlayerStorageValue(cid, 55931,1) -- Alterar o id "55931" para o numero que colocou acima.
doRemoveItem(item.uid, 1)
return true
end
end

 

 

Agora em actions.xml adicione:

<action itemid="id_da_box" event="script" value="boxlvl25.lua"/>

 

Explicando o script, cada box que for criar você vai ter que alterar o storage por um valor diferente, no exemplo ai ta "55931" então na proxima box vai ter que ser "55932" ou qualquer outro numero, assim por diante, esse metodo e para o player não ficar criando varios personagens pra pegar a box e usar em um personagem só.

 

Para mudar o level que vai usar a box é em:

getPlayerLevel(cid) < 25 , onde ta 25 é o level necessario e abaixo tem mais um getPlayerlevel que tambem deve ser alterado.

 

Agora pra adicionar os itens que vai ganhar você altera nessa parte 

doPlayerAddItem(cid, 2160, 1)  Onde esta 2160 é o id do item que vai ganhar e o 1 logo após é a quantidade

se quiser adicionar mais itens é só copiar esse pedaço e adicionar abaixo dessa maneira:

doPlayerAddItem(cid, 2159, 1)

doPlayerAddItem(cid, 2162, 1)

doPlayerAddItem(cid, 2160, 1)

 

 

Qualquer duvida só perguntar.

Editado por WhiteBubble (veja o histórico de edições)

Postado
  • Autor
27 minutos atrás, WhiteBubble disse:

Desculpa a demora pra fazer, eu estava muito ocupado com meu servidor, mas te respondendo, segue abaixo o pedido.

 

Em actions, scripts crie um arquivo com nome "boxlvl25.lua"

e adicione dentro:

 

  Ocultar conteúdo


function onUse(cid, item, frompos, item2, topos)
if getPlayerLevel(cid) < 25 then -- Level necessario pra abrir a box
     doPlayerSendTextMessage(cid, 27, "Voce precisa de level 25 ou mais para abrir essa box")
  return true
  elseif getPlayerLevel(cid) >= 25 then -- Level necessario pra abrir a box

boxstatus = getPlayerStorageValue(cid,55931)-- Alterar o id "55931" pra cada box, pode ser qualquer numero.
			if boxstatus == -1 then
			else
 doPlayerSendCancel(cid,"Voce ja abriu essa box ou nao tem level necessario.")
return true
end
doPlayerAddItem(cid, 2160, 1) -- cid, id_do_item, quantidade
doPlayerAddItem(cid, 2160, 1)
doSendAnimatedText(getCreaturePosition(cid), "!.Parabens.!", 200)
setPlayerStorageValue(cid, 55931,1) -- Alterar o id "55931" para o numero que colocou acima.
doRemoveItem(item.uid, 1)
return true
end
end

 

 

Agora em actions.xml adicione:


<action itemid="id_da_box" event="script" value="boxlvl25.lua"/>

 

Explicando o script, cada box que for criar você vai ter que alterar o storage por um valor diferente, no exemplo ai ta "55931" então na proxima box vai ter que ser "55932" ou qualquer outro numero, assim por diante, esse metodo e para o player não ficar criando varios personagens pra pegar a box e usar em um personagem só.

 

Para mudar o level que vai usar a box é em:

getPlayerLevel(cid) < 25 , onde ta 25 é o level necessario e abaixo tem mais um getPlayerlevel que tambem deve ser alterado.

 

Agora pra adicionar os itens que vai ganhar você altera nessa parte 

doPlayerAddItem(cid, 2160, 1)  Onde esta 2160 é o id do item que vai ganhar e o 1 logo após é a quantidade

se quiser adicionar mais itens é só copiar esse pedaço e adicionar abaixo dessa maneira:

doPlayerAddItem(cid, 2159, 1)

doPlayerAddItem(cid, 2162, 1)

doPlayerAddItem(cid, 2160, 1)

 

 

Qualquer duvida só perguntar.

Funcionou perfeitamente, muito obrigado, de coração mesmo. Só preciso colocar como item único agora. Vlww

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo