Accueil­FAQ­Rechercher­S'enregistrer­Membres­Groupes­Connexion
Poster un nouveau sujet   Répondre au sujetPartager | 
 

 comment assigner un intervalle a une variable?

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
shigeru naki
Discret
Discret


Masculin Nombre de messages: 155
Age: 17
Programme utilisé (Gm/RmXp/...): GM 7.0 lite
Etudes: DUT informatique
Date d'inscription: 07/07/2009

MessageSujet: comment assigner un intervalle a une variable?   Dim 11 Oct - 18:10

Bonjour a tous,

je souhaiterais voir si l'IA a crée une unité qui a la meme ordonnée que l'unité que le joueur controle pour ça j'ai utilisé la fonction position_meeting. Malheureusement, je ne sait pas quel argument mettre pour l'abscisse car je souhaiterais vérifier pour l'ensemble des valeurs de x.

voici a quoi ressemble le code, désolé si ce n'est pas très clair

Code:



if(collision_rectangle(self.x,self.y,self.x-800,self.y+640,instance_nearest(self.x,self.y,inf_obj),1,true))
if(!position_meeting(,(instance_nearest(self.x,self.y,inf_obj)).y,enninf_obj))
 {
  instance_create(816,(instance_nearest(self.x,self.y,inf_obj)).y,enninf_obj)




merci pour toutes les aides que vous me fournirez

_________________
Pacman Evolution
jeu d'arcade en 10 niveaux tous aussi special ;-)

http://upload.gmzone.fr/pacman%20evolution1.3.zip

projet Game Kingdom (en cours) global : 40%
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Kryptos
Moderateur
Moderateur


Masculin Nombre de messages: 1562
Age: 22
Programme utilisé (Gm/RmXp/...): Qt creator, Game Maker
Etudes: INSA de Rennes
Loisirs: role playing
Date d'inscription: 26/05/2005

MessageSujet: Re: comment assigner un intervalle a une variable?   Dim 11 Oct - 23:20

Pourquoi ne pas directement récupérer la valeur de y ?
inf_obj.y et enninf_obj.y

_________________


Revenir en haut Aller en bas
Voir le profil de l'utilisateur
shigeru naki
Discret
Discret


Masculin Nombre de messages: 155
Age: 17
Programme utilisé (Gm/RmXp/...): GM 7.0 lite
Etudes: DUT informatique
Date d'inscription: 07/07/2009

MessageSujet: Re: comment assigner un intervalle a une variable?   Lun 12 Oct - 6:29

je récupère la valeur de y de inf_obj et je ne peux pas utiliser celui de enninf_obj car ce code sert à le créer s'il ne l'ai pas encore.

A vrai dire, le problème est pour la fonction position_meeting,je ne sais pas quelle valeur de x lui assigner car je souhaiterais voir si enninf_obj a été créé pour les coordonnées (pour toute les valeurs de x,inf_obj.y).

_________________
Pacman Evolution
jeu d'arcade en 10 niveaux tous aussi special ;-)

http://upload.gmzone.fr/pacman%20evolution1.3.zip

projet Game Kingdom (en cours) global : 40%
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
shigeru naki
Discret
Discret


Masculin Nombre de messages: 155
Age: 17
Programme utilisé (Gm/RmXp/...): GM 7.0 lite
Etudes: DUT informatique
Date d'inscription: 07/07/2009

MessageSujet: Re: comment assigner un intervalle a une variable?   Mar 13 Oct - 21:53

personne n'a d'idée ou mon topic a juste sombrés sous la multitude de nouveaux topics ?

_________________
Pacman Evolution
jeu d'arcade en 10 niveaux tous aussi special ;-)

http://upload.gmzone.fr/pacman%20evolution1.3.zip

projet Game Kingdom (en cours) global : 40%
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Kryptos
Moderateur
Moderateur


Masculin Nombre de messages: 1562
Age: 22
Programme utilisé (Gm/RmXp/...): Qt creator, Game Maker
Etudes: INSA de Rennes
Loisirs: role playing
Date d'inscription: 26/05/2005

MessageSujet: Re: comment assigner un intervalle a une variable?   Mar 13 Oct - 22:41

J'ai pourtant répondu à ta question ou alors reformule-la.
Ce que je comprend c'est que tu crées une unité et que tu veux vérifier que l'ordonnée de l'unité créée à une certaine valeur (en l'occurrence celle de l'unité créatrice). Comme on peut toujours avpir accès en lecture/écriture aux coordonnées d'un objet, je ne comprend pas ton problème.

_________________


Revenir en haut Aller en bas
Voir le profil de l'utilisateur
shigeru naki
Discret
Discret


Masculin Nombre de messages: 155
Age: 17
Programme utilisé (Gm/RmXp/...): GM 7.0 lite
Etudes: DUT informatique
Date d'inscription: 07/07/2009

MessageSujet: Re: comment assigner un intervalle a une variable?   Mer 14 Oct - 6:04

ben c'est presque ça sauf que je souhaite d'abord vérifier si n'y a pas d'unité ennemi qui aurait la meme ordonnée que l'unité du joueur mais une abscisse que je connais pas.
Mais le problème c'est qu'il y a plusieurs instances de l'unité ennemi dans la room donc il ne me suffit pas de vérifier si une unité ennemi existe
donc ce que je souhaitais faire c'était vérifier si une unité ennemi existe sur l'ordonnée de l'unité du joueur mais pour toutes les valeurs de x (en gros je souhaite faire le test pour chaque valeur de l'abscisse).

Mais bon du coup j'ai eu une idée mais je pense qu'elle est assez lourde:
elle consiste tous simplement à faire une boucle en faisant incréménter ma variable jusqu'a ce que j'ai épuisé toutes les valeurs de x.


while(position_unit<=1000&&presence=false)
{
if(!position_meeting(position_unit,(instance_nearest(self.x,self.y,inf_obj)).y,enninf_obj))
position_unit++;
else
presence=true;
}
if(presence=true)
/*pas de creation */
else
/*creation d'unite*/

mais le problème avec ça, c'est que c'est une partie assez lourd. D'autant plus qu'il risque d'etre utilisé plusieurs fois avec des ecarts de temps très courts(ça dépendra de la manière de jouer du joueur) et que elle risque de n'être qu 'une petite partie du code d'un objet.
Je me rappelle avoir réussi à ralentir le jeu d'une manière similaire.

_________________
Pacman Evolution
jeu d'arcade en 10 niveaux tous aussi special ;-)

http://upload.gmzone.fr/pacman%20evolution1.3.zip

projet Game Kingdom (en cours) global : 40%
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Kryptos
Moderateur
Moderateur


Masculin Nombre de messages: 1562
Age: 22
Programme utilisé (Gm/RmXp/...): Qt creator, Game Maker
Etudes: INSA de Rennes
Loisirs: role playing
Date d'inscription: 26/05/2005

MessageSujet: Re: comment assigner un intervalle a une variable?   Mer 14 Oct - 8:32

Tu peux déjà optimiser ton code en incrémentant de la taille de l'unité plutôt que de 1. Je suppose que deux unités ne peuvent pas se chevaucher.

_________________


Revenir en haut Aller en bas
Voir le profil de l'utilisateur
shigeru naki
Discret
Discret


Masculin Nombre de messages: 155
Age: 17
Programme utilisé (Gm/RmXp/...): GM 7.0 lite
Etudes: DUT informatique
Date d'inscription: 07/07/2009

MessageSujet: Re: comment assigner un intervalle a une variable?   Mer 14 Oct - 18:55

si parce que j'ai voulu donner un effet de perspective donc selon la position des 2 unités en collision, la profondeur change.

_________________
Pacman Evolution
jeu d'arcade en 10 niveaux tous aussi special ;-)

http://upload.gmzone.fr/pacman%20evolution1.3.zip

projet Game Kingdom (en cours) global : 40%
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
 

comment assigner un intervalle a une variable?

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Game Maker Zone :: Zone : Game Maker :: Game Maker - Problèmes :: GM - Problèmes : Niveau moyen-
Poster un nouveau sujet   Répondre au sujet