Postado Fevereiro 23, 2016 9 anos Autor mas pelo que eu entendi isso ai vai armazenas a storage, não? a ideia era que armazenasse o resultado dos math.random. você poderia me explicar o que acontece na parte do "-----aqui-----" porque eu n entendi bem ( pra ser sincero entendi nada). a ideia era bem mais simples que isso, era simplesmente armazenar o resultado dos 3 math.randoms que correspondem ao ataque, pra depois poder formar um numero com os 3. tipo: math.random 1 = 1 math.random 2 = 1 math.random 3 = 1 se eu conseguisse armazenar os math.random ( o resultado deles ) poderia retornar o numero "111" no script. entende? é como se eu formasse uma sequencia de numeros com numeros previos retirados aleatoriamente. pra mim parece q eu expliquei tão bem, mas só pra mim hahaha. edit-- tenho grandes convicções para acreditar que eu expliquei mal e vc fez um script baseado na minha mal explicação. ou eu não entendi mesmo edit2-- colocar pra fazer oque vc quiser com o valor do storage, está salvo nessa variável. eu preciso fazer exatamente isso, porem com o valor do math random. salvar o valor dos 3 math.random em 1 variavel, fazendo assim, eu poder retornar o valor a qualquer hora. será mt complexo? Editado Fevereiro 23, 2016 9 anos por Henriquegb (veja o histórico de edições)
Postado Fevereiro 23, 2016 9 anos vê se vc entende agora: Spoiler function onStatsChange(cid, attacker, type, combat, value) if math.random(1, 100) <= 10 then if isCreature(cid) and getCreatureName(cid) == 'Dicer' then if getPlayerStorageValue(attacker, 9000) == 0 then doCreatureSay(cid, "Então você escolheu o combate, vamos ver o que a sorte tem para você", TALKTYPE_MONSTER_YELL) doSendMagicEffect(getCreaturePosition(cid), 26) setPlayerStorageValue(attacker, 9000, 1) elseif getPlayerStorageValue(attacker, 9000) == 1 then doCreatureSay(cid, "onde é que paramos?", TALKTYPE_MONSTER_YELL) doSendMagicEffect(getCreaturePosition(cid), 26) end local dice = math.random(1, 6) ------------ aqui-------- local stor = getPlayerStorageValue(cid, 9001) if stor > 100 then local dmg = stor --- abaixo disso aqui vc pode colocar pra fazer oque vc quiser com o valor do storage, está salvo nessa variável. setPlayerStorageValue(cid, 9001, 0) elseif stor > 10 then setPlayerStorageValue(cid, 9001, stor + 100* dice) elseif stor > 0 then setPlayerStorageValue(cid, 9001, stor + 10* dice) else setPlayerStorageValue(cid, 9001, dice) end ----------------------- o storage inicialmente é -1 então ele cai no else ali e vai setar o valor como sendo o valor do dice (1~6). Aí no próximo ataque ele vai cair no elseif stor > 0 e setar o valor que estava (1~6) + 10 * (1~6), ou seja vai ficar (10~60)+ (1~6). No próximo ataque ele vai cair no elseif stor > 10 e setar o valor que estava (10~60)+ (1~6) + 100* (1~6) ou seja, vai ficar (100~600)+(10~60)+ (1~6). No ultimo ataque ele vai cair no if stor > 100 e aí ele passa o valor pra variável dmg e zera o storage. Nessa parte que ele faz isso, vc pode fazer oque vc quiser com a sequência de dices que caiu.. se cair 3 no primeiro, 4 no segundo e 1 no terceiro o numero salvo em dmg será 143. Entendeu agora? Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá! "Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda (obg ao @Beeny por fazer essa linda sign <3)
Postado Fevereiro 23, 2016 9 anos Autor hmm, agora eu entendi a ideia perfeitamente. mas deixe-me conferir se estou certo. se eu fizer dessa forma teria de abrir mão dos 3 ataques inicias programados certo? ( que seria o jogo de dados do boss, cada numero do dado equivale a uma punição ) também teria de guardar todos os storages multiplicaveis ali para esse script, correto? e por ultimo, eu não poderia configurar de forma precisa oque ele faria ao final do script certo? ( que seria as combinações dos numeros [ minha ideia era fazer com que a ordem dos numeros OU o seus valores significassem cada punição]) -- uma duvida, sempre que eu declarar "dice" no script ele vai fazer outro math.random?
Postado Fevereiro 23, 2016 9 anos não precisa abrir mão, dá pra vc fazer uma lógica que inclua isso. guardar os storages multiplicáveis? como assim? Dá pra configurar de forma precisa sim, uma vez que vc tem todos os valores salvos por ordem e por valor. Se vc declarar dice ele vai pegar o valor salvo pelo primeiro math.random gerado, se vc quiser fazer outro use a função math.random(1,6) ao invés da variável. Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá! "Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda (obg ao @Beeny por fazer essa linda sign <3)
Postado Fevereiro 23, 2016 9 anos Autor putz, era isso que eu precisava o tempo todo manolo. mas se o script rodar novamente, ele fará outro math.random certo?
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.