Erik 2 Denunciar post Postado Dezembro 2, 2010 Pessoal, como que eu faço pra atualziar automaticamente um dado de uma variável e armazenar em um Dynamic Text Tipo assim... estou construindo um jogo de RPG, mas antes preciso construir o sistema de preencher a ficha com os dados do personagem tipo a força dele a capacidade de resistir a ferirmentos e os pontos de vida que são descontados caso não suporte um ataque, chamei de atributos: Em atributos tenho Força (o quanto ele machuca os monstros), constituição (o quanto ele aguenta de pancada sem descontar pontos de vida)e tenho um terceiro atributo que se chama Pontos de vida que seria a soma de força mais constituição Então eu fiz assim: 01 - Criei dois inputs chamados forca e constituicao (com estas instancias) 02 - Criei um dynamic chamado PV (pontos de vida abreviado) que irá receber o resultado do calculo de forca + constituicao 03 - Criei uma camada camada chamada ações e coloquei: //dados iniciais var forca:Number = 10; var constituicao:Number = 10; //calculo de pontos de vida PV.text = (forca + constituicao); O que acontece é que quando eu troco os valores de força e constituição, nada acontece, ele não calcula novamente o novo ponto de vida, e tamb´m precisava que ele arredonda-se o valor, sempre pra cima... O que estou fazendo de errado? Compartilhar este post Link para o post Compartilhar em outros sites
carneirinho 7 Denunciar post Postado Dezembro 2, 2010 Oi Erik, o que acontece é que você está logo no começo usando duas variável e dois campos de input com o mesmo nome, se você aja tem o campo forca, você não deve criar uma variavel com o mesmo nome, o que você pode fazer é o seguinte, colocar no campo de forca e constituicao os numeros e depois numa função você passa eles de string para number, faz o calculo e depois unsa o Math.ceil() para arredondar pra cima, tente isso: //dados iniciais forca.text = 10; constituicao.text = 10; //calculo de pontos de vida PV.text = calcular(forca.text, constituicao.text); function calcular(fc, con):Number{ valor = parseFloat(fc) + parseFloat(con); return Math.ceil(valor); } Compartilhar este post Link para o post Compartilhar em outros sites
Erik 2 Denunciar post Postado Dezembro 3, 2010 Oi Erik, o que acontece é que você está logo no começo usando duas variável e dois campos de input com o mesmo nome, se você aja tem o campo forca, você não deve criar uma variavel com o mesmo nome, o que você pode fazer é o seguinte, colocar no campo de forca e constituicao os numeros e depois numa função você passa eles de string para number, faz o calculo e depois unsa o Math.ceil() para arredondar pra cima, tente isso: //dados iniciais forca.text = 10; constituicao.text = 10; //calculo de pontos de vida PV.text = calcular(forca.text, constituicao.text); function calcular(fc, con):Number{ valor = parseFloat(fc) + parseFloat(con); return Math.ceil(valor); } Ok, deu certo ele calcula... mas se eu trocar o valor de algum das inputs o dynamic text não atualiza com o novo valor ... Compartilhar este post Link para o post Compartilhar em outros sites