Ir para conteúdo

Featured Replies

Postado

Olá à todos da comunidade, primeiramente quero pedir desculpas caso eu tenha criado o tópico na sessão errada, eu ainda não sei bem como funciona as sessões (rs).

Então, eu estou aqui para pedir ajuda com um script que eu retirei daqui do fórum para implementar no meu servidor e eu queria que ele ficasse de uma forma mais legal e competitiva, segue o script:
Catch System por Skill

O que eu venho pedir é o seguinte, atualmente no sistema ele não verifica se você já capturou o pokémon, possibilitando assim que uma pessoa possa capturar vários pokémons do mesmo e ainda sim subir a skill.
(Exemplo: Caso um player capture 10 rattatas ele irá continuar upando, pois não tem verificação se o player já capturou aquele pokemon).

O que eu queria é que somente no primeiro caught de cada pokémon ele recebesse uma porcentagem para upar o skill, e também se possível queria que as rates de cada pokémon fosse diferente, pois, creio que ficaria meio injusto um rattata dando 20% de skill de caught e um shiny também dando o mesmo 20%.

Quem puder me ajudar ficarei bastante agradecido.

  • Respostas 10
  • Visualizações 934
  • Created
  • Última resposta

Top Posters In This Topic

Posted Images

  • 1 month later...
Postado

@Arthasz Walker nessa base tem alguma função que checa se você já tem o catch do pokémon?

[EDIT]

Tenta desse jeito:

No começo do arquivo do script de catch você coloca isso:

catchingXP = {
    ["Charmander"] = 10,
    ["Charmeleon"] = 20,
    ["Charizard"] = 30,
}

E na parte que ele pediu pra colocar o doPlayerAddSkillTry você substitui por essa chamada de função:

catchSystemLeveling (cid, pokeName)

Obs: no lugar de pokeName você deverá colocar o nome do Pokémon que foi capturado de forma genérica, isso vai variar conforme seu script. Caso queira que eu ajude nisso me manda uma PM pra eu tentar te ajudar pelo Discord.

 

E em alguma parte do script (fora de funções) adicione esta função:

function catchSystemLeveling (cid, pokeName)
    if getPlayerStorageValue (cid, pokeName) == 0 then
        setPlayerStorageValue(cid, pokeName, 1)
        doPlayerAddSkillTry(cid, 2, catchingXP[pokeName])
    end
end

 

Acho que isso bastaria, o problema é  que as XPs seriam configuradas manualmente, ou seja, com o array catchingXP que está ali encima só funciona pra Charmander, Charmeleon e Charizard

Editado por marcot (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.

Visitante
Responder

Quem Está Navegando 0

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

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo