Forums Développement Multimédia

Aller au contenu

[Résolu] Score en augmentation continu

CODE

4 réponses à ce sujet

#1 obzilo

    Ceinture Orange

  • Members
  • PipPipPip
  • 32 messages

Posté 12 April 2011 - 11:06 AM

Bonjour,

J'ai créé un jeu dans lequel un vaisseau doit esquiver des astéroïdes (un nombre x de collisions sont autorisées). Pour l'instant pour le "score" j'ai fais un système de Timer, quand le joueur a perdu, son résultat est en fait le temps de jeu de sa partie... Mais j'aimerais mettre en place un système de score, qui augmente de manière régulière jusqu'à ce que le joueur perdre, au lieu d'un simple timer qui s'écoule.

Vous avez une idée ? Je ne pense pas que ce soit très complexe mais je n'ai rien trouvé à ce sujet.

Merci. ;)

Modifié par obzilo, 12 April 2011 - 11:10 AM.


#2 Billyben

    KlouChiPonshoñistäs

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 2597 messages

Posté 12 April 2011 - 11:34 AM

Bonjour, tu peux avoir une variable, que tu incrémente dans ton timer (sur l'event TimerEvent.TIMER), plus qu'à lire cette variable à la fin...

#3 obzilo

    Ceinture Orange

  • Members
  • PipPipPip
  • 32 messages

Posté 13 April 2011 - 08:56 AM

Tu aurais un exemple ? c'est assez flou pour moi. ^^

#4 dldler

  • Community Manager
  • PipPipPipPipPipPipPipPip
  • 4163 messages

Posté 13 April 2011 - 09:21 AM

En fait on ne comprends pas trop ta difficulté.
Disons que "un système de score" c'est trop flou.

Si ton score reste dépendant du temps mis par le joueur, tu calcules le score de façon proportionnelle avec une multiplication ou une division, en t'aidant des propriétés du timer.


// Ce timer va "bipper" 1000 fois toutes les 60 millisecondes.
// Ce qui veut dire que le niveau durera au max une minute.
var timerJeu:Timer=new Timer(60,1000);

// Je pose des écouteurs sur ce timer
// A chaque bip, une fonction va augmenter le score
timerJeu.addEventListener(TimerEvent.TIMER,augmenterScore);

// A la fin du timer le jeu est terminé
timerJeu.addEventListener(TimerEvent.TIMER_COMPLETE, finDuJeu);

// Je démare le timer
timerJeu.start();

// Les fonctions associées aux écouteurs :
function augmenterScore (te:TimerEvent):void {
   // Par exemple :
   // tu récupères la valeur sur le timer lui-même grâce a sa propriété currentCount
   // (currentCount == nombre total de déclenchements de l’horloge depuis son démarrage)
   var score :int = te.target.currentCount * 100;
}
function finDuJeu(te.TimerEvent):void {
  // Lancer une animation, afficher le tableau des high-scores, etc…
}
 


#5 obzilo

    Ceinture Orange

  • Members
  • PipPipPip
  • 32 messages

Posté 13 April 2011 - 10:29 AM

Merci c'est nickel j'ai pu adapter cela à mon cas ça marche bien! ;)



1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)