humbertomario Posted November 28, 2012 Posted November 28, 2012 no meu emulador 1 ponto distribuido causa 1 ponto de efeito EX:(1 ponto de int= 1 ponto de ATKM) queria deixar assim 1 ponto de int= 5 pontos de ATKM alguem poderia me ajuda a corrigir esse erro Quote
Artanis Posted January 5, 2013 Posted January 5, 2013 (edited) Em primeiro lugar amigo, isso não é um erro. É a contagem padrão do ataque mágico para a renovação. Para deixar da forma que deseja, você deverá fazer uma edição na source (código fonte do emulador). arquivo: status.c procure a linha abaixo: unsigned short status_base_matk(const struct status_data* status, int level){ return status->int_+(status->int_/2)+(status->dex/5)+(status->luk/3)+(level/4); } Altere a formula da forma que desejar. Após mudar, não se esqueça de recompilar. Pessoalmente também não gostei dessa formula, então alterei para a seguinte: unsigned short status_base_matk(const struct status_data* status, int level){ return (status->int_*5)+(level/4)+(status->dex/2)+(status->luk/2); } Traduzindo: Ataque Mágico = (Inteligência * 5) + (Nível Base / 4 ) + (Destreza / 2 ) + ( Sorte / 2 ) Algo mais completo ficaria: unsigned short status_base_matk(const struct status_data* status, int level){ int matk = 0; if( status!=NULL ) { matk = (status->int_*5)+(level/4)+(status->dex/2)+(status->luk/2); if( matk > 60000 ) { matk = 60000; } } if( matk < 0 ) matk = 0; return (unsigned short)matk; } Att, Etherion. Edited January 5, 2013 by etherion 1 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.