Bonjour tout le monde,
Alors voilà, je suis loin d'être un pro de l'AS3 mais je me suis attelé à concevoir un petit jeu pour parfaire mes connaissances.
Dans ce jeu j'ai un personnage principal,et d'autres personnages Loader dans la scène avec un Timer s'executant toutes les 2 secondes.
Mon problème se situe dans l'interaction entre les persos.C'est à dire que je souhaiterais que le héro en sapprochant des persos provoque 2 actions:soit il les attires soit les repousses.
J'ai donc essayé quelque chose,qui relève plus du bidouillage qu'autres choses,mais voilà:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
if(hero.hitTestObject(perso1)&& interact1==5)  
    {   hero.star.gotoAndPlay(2);
        Tweener.addTween(lifebar.life,{x:lifebar.life.x+20,time:2});
        score.afscore.text=monscore;
        monscore++;
        monscore+monscore;}
 else if(hero.hitTestObject(perso1))
        { stage.removeEventListener(Event.ENTER_FRAME,bouge);
          Tweener.addTween(perso1,{x:posX+(Math.cos(coef)*diam),y:posY+(Math.sin(coef)*diam),time:2});
          if(perso1.x <=posX)
                 {Tweener.addTween(perso1,{x:Math.random()-400,y:Math.random()*(stage.stageWidth+stage.stageWidth),time:50});
                  }
          }

la première condition est que si le héro touche un perso dont la variable numérique"interact"lui est associé en Math.round(Math.random()*5),ça déclenche une petite anim,la lifebar augmente et le score augmente d'un nombre aléatoire.
C'est la deuxième qui me pose soucis,si le nombre n'est pas cinq j'aimerai que soit le perso soit repoussé soit il le contourne et repart dans sa direction aléatoire.J'ai essayé avec les Math.sin et Math.cos mais je ne maitrise pas.

Merci d'avance