AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  

 

 [Résolu] Donner un mouvement aléatoire

Aller en bas 
3 participants
AuteurMessage
Lahn
Pas mal



Messages : 35

[Résolu] Donner un mouvement aléatoire Empty
MessageSujet: [Résolu] Donner un mouvement aléatoire   [Résolu] Donner un mouvement aléatoire EmptyLun 6 Aoû 2012 - 19:22

Salut !

Pour continuer à m’entraîner à utiliser GM, j'ai commencé un mini projet style RPG.

Et là, je bloque sur le mouvement des PNJ ...
Je voudrais leur donner des mouvements aléatoire, mais je sais pas trop comment m'y prendre.
Parce que si je fais :
Code:
x+=8-random(16)
y+=8-random(16)
Ça va me faire un mouvement super bizarre, où il va pas arrêter de changer de direction ...

Mais du coup, je sais pas trop comment m'y prendre.
Créer une variable qui s'incrémenterais à chaque step et faire suivre une direction à l'objet tant que la variable atteint pas une certaine valeur, puis une fois cette valeur atteinte, la remettre à 0 et lui donner une nouvelle direction ?

Merci d'avance !


Dernière édition par Lahn le Lun 6 Aoû 2012 - 21:28, édité 1 fois
Revenir en haut Aller en bas
chopsuey
Utilisateur confirmé: Rang ***
chopsuey


Messages : 523
Localisation : saint etienne
Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...

[Résolu] Donner un mouvement aléatoire Empty
MessageSujet: Re: [Résolu] Donner un mouvement aléatoire   [Résolu] Donner un mouvement aléatoire EmptyLun 6 Aoû 2012 - 20:11

Le problème c'est que ton random ce relance tous les step.
utilise une alarme.

dans l'event alarm[0] met:

test=random(5)
alarm[0]= 30

et dans le step:

if test==0
{x-=4}
if test==1
{y-=4}
if test==2
{x+=4}
if test==3
{y+=4}
if test==4
{x-=4;y+=4}
if test==5
{x+=4;y-=4}


Edit: test=round(random(5)) sinon ça ne marchera pas.
Revenir en haut Aller en bas
Craki
Utilisateur confirmé: Rang ****
Craki


Messages : 1496
Localisation : Dans l’univers de métamatière

[Résolu] Donner un mouvement aléatoire Empty
MessageSujet: Re: [Résolu] Donner un mouvement aléatoire   [Résolu] Donner un mouvement aléatoire EmptyLun 6 Aoû 2012 - 21:18

Sinon, pour les conditions en séries, y'a ça :
Code:
switch (test)
{
    case 0: x-=4; break;
    case 1: y-=4; break;
    case 2: x+=4; break;
    case 3: y+=4; break;
    case 4: x-=4; y+=4; break;
    case 5: x+=4; y-=4; break;
}

_________________
[Résolu] Donner un mouvement aléatoire 357g46o
Revenir en haut Aller en bas
Lahn
Pas mal



Messages : 35

[Résolu] Donner un mouvement aléatoire Empty
MessageSujet: Re: [Résolu] Donner un mouvement aléatoire   [Résolu] Donner un mouvement aléatoire EmptyLun 6 Aoû 2012 - 21:27

Merci !
J'ai fait irandom, c'est plus ou pareil que round(random) non ?
( Enfin, irandom renvera que des entiers, tandis que round(random) transformera en entier, mais ça change pas grand chose si ? )

Du coup, ça marche bien ^^.
Revenir en haut Aller en bas
chopsuey
Utilisateur confirmé: Rang ***
chopsuey


Messages : 523
Localisation : saint etienne
Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...

[Résolu] Donner un mouvement aléatoire Empty
MessageSujet: Re: [Résolu] Donner un mouvement aléatoire   [Résolu] Donner un mouvement aléatoire EmptyLun 6 Aoû 2012 - 21:30

Ouai ça revient au même.
Revenir en haut Aller en bas
Contenu sponsorisé





[Résolu] Donner un mouvement aléatoire Empty
MessageSujet: Re: [Résolu] Donner un mouvement aléatoire   [Résolu] Donner un mouvement aléatoire Empty

Revenir en haut Aller en bas
 
[Résolu] Donner un mouvement aléatoire
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» mosaîque aléatoire (résolu)
» [RESOLU] Probleme Aleatoire random()
» [Résolu] Déplacements aléatoire tout les X temps
» [Résolu] Saccades, flous de mouvement...
» mouvement des perso + attaque(résolu)

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Entraide débutants-
Sauter vers: