2012-01-09 3 views
1

J'ai un champ de texte appelé Moneytxt et je le veux donc quand vous cliquez sur une boîte, il ajoute parfois 200 et parfois ajoute 100 (aussi je voudrais que cela s'additionne en numérique exemple de valeur: s'il ajoute 100 et il a 200, il équivaut à 300 et non à 200100). J'ai aussi penniestxt où parfois il ajoute 30 et somtimes il ajoute 40.Ajouter du texte à un champ de texte dynamique aléatoirement dans AS3

c'est le code (boîte s'ajouter n'est pas inclus ou addEventListener)

public function boxclick(event:MouseEvent):void { 
      var _box:Box=event.currentTarget as Box; 
      logtxt.appendText(" You collected the box"); 
      Moneytxt.random.appendText("100") 
      Moneytxt.random.appendText("200") 
      penniestxt.random.appendText("40") 


      boxAmount--; 

      removeChild(_box); 
     } 
+0

Cette question manque beaucoup de détails. Tout d'abord, qu'est-ce que Moneytxt? Deuxièmement, quel est penniestxt? Troisièmement, qu'est-ce que boxAmount? Veuillez fournir une version simplifiée de votre classe/mxml qui inclut ces détails. –

Répondre

1

La méthode appendText fait exactement ce qu'il says-- il ajoute du texte à la fin du texte dans le champ de texte - c'est pourquoi vous obtenez "200100" au lieu de "300". Pour que les chiffres s'ajoutent, vous devez conserver le montant en argent sous la forme d'un nombre. ou int

var money:int = 0; 
money += 100; 
money += 200; 
Moneytxt.text = String(money); 

Notez que vous devrez probablement convertir la valeur en chaîne lorsque vous l'affectez au texte du champ de texte.

Pour effectuer la valeur aléatoire, vous pouvez utiliser Math.random(). Il renvoie un nombre entre 0 et 1. Vous pouvez utiliser cette valeur pour déterminer si vous ajoutez 100 ou 200.

var money:int = 0; 
public function boxclick(event:MouseEvent):void { 
    var randVal:Number = Math.random(); 
    if(randVal >= 0.5){ 
     money += 100; 
    } else { 
     money += 200; 
    } 

    Moneytxt.text = String(money); 
} 
+0

comment pourrais-je changer les vraisemblances et comment pourrais-je ajouter des nombres supplémentaires comme 300. – thor625

+0

En vérifiant les différentes plages dans 'randVal'. Dans mon exemple, je vérifie si le nombre aléatoire est supérieur ou égal à 0,5, donc vous obtenez une chance 50/50. Si vous voulez une chance de 75%, vérifiez que 'randVal' est supérieur à 0.25. – Cadin

+0

merci cela aide beaucoup – thor625

Questions connexes