AccueilFAQRechercherS'enregistrerConnexion
 

Collisions en GML

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Gamemaker
Maitre absolu adjoint
Maitre absolu adjoint



Inscrit le : 30 Juin 2006
Messages : 604
Programme utilisé (Gm/RmXp/...) : GM6.1 Lite -7.0 Lite, Claris HomePage 3.0

MessageSujet: Collisions en GML   Mar 15 Juil - 21:58

Salut,

C'est probablement une question assez bête, mais comment faire pour faire comme j'écris moi (ce qui n'est pas bon):

Code:

if object_amos collision with solid;
{
motion_set(0,0);
}

Je réussi à faire ça en D&D, mais pour chaque objet et c'est long et inutile. Comment dire: Si objet_amos (le perso) entre en collision avec un objet solide, il s'arrête.

Il y a une commande qui manque, pour désigner les objets solides...

Merci,

A+
_________________


Demande d'aide à plusieurs membres.
Programmation: ||||||||||||||||||||||||
Sprites [Persos]: Terminé!
Sprites [Lieux]: ||||||||||||||||||||||||||||
Musiques : ||||||||||||||||||||||||||
Sons: |||||||||

Revenir en haut Aller en bas
Cellendhyll
Timide
Timide


Sexe:Masculin
Age : 18
Inscrit le : 08 Juil 2008
Messages : 32
Etudes : Elève à UTC (école d'ingénieur)

MessageSujet: Re: Collisions en GML   Mar 15 Juil - 22:54

J'avais le même problème que toi, mais on ne m'a pas dit comment désigner les objets solides... A part "solid", on m'a dit qu'il n'y avait rien d'autre... :|
Utilise donc la fonction "parent" pour désigner un groupe d'objet, ça ira plus vite que de nommer chaque object. :P
Revenir en haut Aller en bas
bibi31
Pro
Pro


Sexe:Masculin
Age : 13
Inscrit le : 12 Mar 2008
Messages : 576
Programme utilisé (Gm/RmXp/...) : adobe flash CS3/game maker 7.0 pro version/gimp2/paint/
Etudes : a part le college rien...
Loisirs : boxe chinoise et ordi

MessageSujet: Re: Collisions en GML   Mar 15 Juil - 22:56

a mai oui c'est fastoche
(non pas ke tu sois nul mais qqun a deja poser cette question :P)
tu utilise la fonction place free et tu coche NOT
et ensuit tu met le carré au milieu des fleches

en GML je crois que ca donne

if place_free(x+ou- ?,y+ou- ?)=false
motion_set(0,0)

EDIT:tu m'as pris d'avance
_________________

Revenir en haut Aller en bas
Gamemaker
Maitre absolu adjoint
Maitre absolu adjoint



Inscrit le : 30 Juin 2006
Messages : 604
Programme utilisé (Gm/RmXp/...) : GM6.1 Lite -7.0 Lite, Claris HomePage 3.0

MessageSujet: Re: Collisions en GML   Mar 15 Juil - 22:57

Être parent avec quoi?
EDIT: Merci Bibi31, je vais essayer je t'informerai des changements.
_________________


Demande d'aide à plusieurs membres.
Programmation: ||||||||||||||||||||||||
Sprites [Persos]: Terminé!
Sprites [Lieux]: ||||||||||||||||||||||||||||
Musiques : ||||||||||||||||||||||||||
Sons: |||||||||

Revenir en haut Aller en bas
Cellendhyll
Timide
Timide


Sexe:Masculin
Age : 18
Inscrit le : 08 Juil 2008
Messages : 32
Etudes : Elève à UTC (école d'ingénieur)

MessageSujet: Re: Collisions en GML   Mar 15 Juil - 23:17

Tu mets par exemple un object "obstacle" en rentrant ta ligne code de collision pour cet objet, et ensuite, tous les objets que tu veux mettre en solid, tu les mets en parent avec l'objet "obstacle", ce qui fait que quandv dans ta ligne code de collition, tu écrits "obstacle", tu désignes aussi tous ses parents.

Mais essaye aussi la méthode de Bibi31. Je ne l'ai pas testée, mais elle est certainement plus propre ^^ que la mienne.
Revenir en haut Aller en bas
Fireranger
Maitre absolu adjoint
Maitre absolu adjoint


Sexe:Masculin
Age : 15
Inscrit le : 22 Nov 2007
Messages : 672
Programme utilisé (Gm/RmXp/...) : Game Maker 7 PRO, Visual Basic 9.0, Visual C++ et Code::Blocks

MessageSujet: Re: Collisions en GML   Mar 15 Juil - 23:24

Code:
if collision_rectangle(x-1,y+1,x+sprite_width+1,y-sprite_height-1,solid,true,false)
{speed=0}

*C'est pour si l'origine est en haut à gauche
_________________
Guten Tag von Deutschland ^^
Revenir en haut Aller en bas
D-z
Possedé par Mark Overmars
Possedé par Mark Overmars


Sexe:Masculin
Age : 15
Inscrit le : 03 Sep 2005
Messages : 3320
Programme utilisé (Gm/RmXp/...) : GM 6.1 pro ; GM 7.0 pro
Etudes : Seconde
Loisirs : Aïkido, Ordinateur

MessageSujet: Re: Collisions en GML   Jeu 17 Juil - 17:13

Code:
if place_meeting(x,y,objet)
 {...
 }

_________________

Spoiler:
 
Revenir en haut Aller en bas
Gamemaker
Maitre absolu adjoint
Maitre absolu adjoint



Inscrit le : 30 Juin 2006
Messages : 604
Programme utilisé (Gm/RmXp/...) : GM6.1 Lite -7.0 Lite, Claris HomePage 3.0

MessageSujet: Re: Collisions en GML   Jeu 17 Juil - 17:34

Pour x et y, dois-je mettre les coordonnées de l'objet ou l'héros? Même chose pour objet, c'est par exemple une table ou le héros?
_________________


Demande d'aide à plusieurs membres.
Programmation: ||||||||||||||||||||||||
Sprites [Persos]: Terminé!
Sprites [Lieux]: ||||||||||||||||||||||||||||
Musiques : ||||||||||||||||||||||||||
Sons: |||||||||

Revenir en haut Aller en bas
D-z
Possedé par Mark Overmars
Possedé par Mark Overmars


Sexe:Masculin
Age : 15
Inscrit le : 03 Sep 2005
Messages : 3320
Programme utilisé (Gm/RmXp/...) : GM 6.1 pro ; GM 7.0 pro
Etudes : Seconde
Loisirs : Aïkido, Ordinateur

MessageSujet: Re: Collisions en GML   Jeu 17 Juil - 20:11

tu laisses x et y et objet c'est l'obstacle.
_________________

Spoiler:
 
Revenir en haut Aller en bas
Xierra54
Admin - .: el traductor :.
Admin - .: el traductor :.


Sexe:Masculin
Age : 49
Inscrit le : 13 Aoû 2005
Messages : 7902
Programme utilisé (Gm/RmXp/...) : GM (6.1 et 7 enregistrées), Purebasic (démo)
Etudes : Supérieures
Loisirs : ordinateur

MessageSujet: Re: Collisions en GML   Jeu 17 Juil - 21:13

Gamemaker, lorsque l'on écrit x et y, c'est que l'on se réfère à l'objet courant concerné par l'instruction GM (donc ton héros dans le cas présent)
Autrement, on aurait écrit quelque chose comme cela :
obstacle_obj.x et obstacle_obj.y
ou encore
other.x et other.y (l'autre objet concerné dans une situation de collision par exemple)
etc.

A+
_________________
Revenir en haut Aller en bas
Gamemaker
Maitre absolu adjoint
Maitre absolu adjoint



Inscrit le : 30 Juin 2006
Messages : 604
Programme utilisé (Gm/RmXp/...) : GM6.1 Lite -7.0 Lite, Claris HomePage 3.0

MessageSujet: Re: Collisions en GML   Jeu 17 Juil - 23:19

Donc, ce que j'écrirai (selon moi) serait:

Code:
if place_meeting(x,y,objec_table_amos)
 {motion_set(0,0)
 }


Dois-je laisser l'objet en Solid?

Merci
_________________


Demande d'aide à plusieurs membres.
Programmation: ||||||||||||||||||||||||
Sprites [Persos]: Terminé!
Sprites [Lieux]: ||||||||||||||||||||||||||||
Musiques : ||||||||||||||||||||||||||
Sons: |||||||||

Revenir en haut Aller en bas

Collisions en GML

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-