AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
-26%
Le deal à ne pas rater :
369€ PC Portable HP 15-fd0064nf – 15,6″ FHD 8 Go / 256 Go + ...
369.99 € 497.99 €
Voir le deal

 

 collision line - what's the matter ?

Aller en bas 
2 participants
AuteurMessage
Invité
Invité




collision line - what's the matter ? Empty
MessageSujet: collision line - what's the matter ?   collision line - what's the matter ? EmptyLun 26 Fév 2007 - 15:11

Voilà j'ai un problème je ne comprend pas ce qui cloche et je ne sais pas comment le résoudre donc je fais appel à vous !
Dans mon jeu, le canon est censé détecter s'il y a un mur entre lui et le perso, grâce à collision_line, et s'il n'y en a pas il tire. Ca marche très bien partout, sauf quand le perso est juste au dessus du canon. Comme ici :
collision line - what's the matter ? Probcollisionlinevu9
J'ai fait apparaître avec un draw les lignes de collision, et ont voit bien que celle du canon de gauche traverse le bloc, pourtant il tire (même si le tir n'est pas visible au moment du screen shot) ! Je ne comprend pas, yorait il une faille dans la fonction collision_line ? ou alors peut être ai je mal paramétré les deux derniers critère. J'ai ceci dans mon code :

{if actif=1 && shoot=1 && point_distance(x+19,y+14,perso.x,perso.y)<200 && direction<point_direction(x+19,y+14,perso.x,perso.y)+2 && direction>point_direction(x+19,y+14,perso.x,perso.y)-2 && not collision_line(x+19,y+14,perso.x,perso.y,bloc,true,false)

Tous les trucs de point_direction et direction c'est pour qu'il y ait une marge d'erreur, si le canon pointe dans la bonne direction à quelques degrés près. Je pense que mon code est bon, donc qu'est ce qui ne va pas ?
Revenir en haut Aller en bas
Topaze22
*Excellent utilisateur*
Topaze22


Messages : 6213
Localisation : Sur la Lune
Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World

collision line - what's the matter ? Empty
MessageSujet: Re: collision line - what's the matter ?   collision line - what's the matter ? EmptyLun 26 Fév 2007 - 17:08

J'ai pas trouvé ce qu'il cloche...
Je mets cela ici pour faire gagner quelques secondes aux autres

Citation de la bible :

collision_line(x1,y1,x2,y2,obj,prec,notme) Cette fonction teste s'il se produit une collision entre la ligne droite positionnée de (x1,y1) à (x2,y2) et les entités de l'objet obj. Ceci est une fonction très puissante. Vous pouvez ainsi l'utiliser pour tester si une instance peut en apercevoir une autre en vérifiant si la ligne droite entre les deux instances ne rentre pas par exemple en intersection avec un mur.

Good luck
Hat Le CBNA
Revenir en haut Aller en bas
Topaze22
*Excellent utilisateur*
Topaze22


Messages : 6213
Localisation : Sur la Lune
Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World

collision line - what's the matter ? Empty
MessageSujet: Re: collision line - what's the matter ?   collision line - what's the matter ? EmptyLun 26 Fév 2007 - 17:11

Ta bien definis les bounding box du bloc?
Je pose la question au cas ou ❓
Hat Le CBNA
Revenir en haut Aller en bas
Rem_101
*Excellent utilisateur*
Rem_101


Messages : 4356
Localisation : chez votre marchand de journaux

collision line - what's the matter ? Empty
MessageSujet: Re: collision line - what's the matter ?   collision line - what's the matter ? EmptyLun 26 Fév 2007 - 17:12

ouah sa peut aider pour une IA.
happy1
Revenir en haut Aller en bas
Rem_101
*Excellent utilisateur*
Rem_101


Messages : 4356
Localisation : chez votre marchand de journaux

collision line - what's the matter ? Empty
MessageSujet: Re: collision line - what's the matter ?   collision line - what's the matter ? EmptyLun 26 Fév 2007 - 17:32

dsl du double post mais bug sur edit!
Peut on m"eclairer sur se sujet. savoir a quoi sa sert ect... comment l'utiliser.
Ect
Revenir en haut Aller en bas
Invité
Invité




collision line - what's the matter ? Empty
MessageSujet: Re: collision line - what's the matter ?   collision line - what's the matter ? EmptyLun 26 Fév 2007 - 18:09

ah ça y est j'ai trouvé merci Topaze22 ! j'avais déjà regardé et tout ce que j'avais fait c'est décocher "precise collision checking"... En fait il fallait changer les coordonnées de la bounding box comme tu l'as dit, et mettre 20 au lieu de 19 ^^ merci beaucoup gnii
Et pour Rem_101, ça peut servir pour savoir si il n'y a pas d'objet sur une ligne par exemple, moi comme je voulais pas faire un canon qui tire comme un fou quand ça ne va pas atteindre la cible, j'ai utilisé ça et il paraît déjà plus intelligent... pour l'utiliser faut faire par exemple :
if not collision_line(x,y,mouse_x,mouse_y,bloc,true,false)
{x=mouse_x y=mouse_y show_message("waa vous êtes allé vers la souris à la vitesse de la lumière ^^")}
Revenir en haut Aller en bas
Rem_101
*Excellent utilisateur*
Rem_101


Messages : 4356
Localisation : chez votre marchand de journaux

collision line - what's the matter ? Empty
MessageSujet: Re: collision line - what's the matter ?   collision line - what's the matter ? EmptyLun 26 Fév 2007 - 18:28

donc si j'ai bien compris moi j'ai un objet character 1 (le hero) et un objet bot (l'inteligence artivicielle) je fait:
if not collision_line(x,y,character1.x,character1.y,caisse,true,false)
{
if distance_to_object(character1)<100
{
instance_create(x,y,balle);
}
}
non?
Revenir en haut Aller en bas
Invité
Invité




collision line - what's the matter ? Empty
MessageSujet: Re: collision line - what's the matter ?   collision line - what's the matter ? EmptyLun 26 Fév 2007 - 18:33

yay ça marche gnii
Revenir en haut Aller en bas
Rem_101
*Excellent utilisateur*
Rem_101


Messages : 4356
Localisation : chez votre marchand de journaux

collision line - what's the matter ? Empty
MessageSujet: Re: collision line - what's the matter ?   collision line - what's the matter ? EmptyLun 26 Fév 2007 - 18:44

bah pas chez moi.
J'ai mis sa comme script:
Code:
if distance_to_object(character1)<100
{
if not collision_line(x,y,character3.x,character3.y,ground_wall,true,false)
{
image_angle=point_direction(character3.x,character3.y,x,y);
instance_create(x,y,balleuzi);
}
}
ils ne s'incline pas meme quand je suis tout pres
ensuite il ne tire! j'ai essayé d'inversé les 2 premieres lignes sa reviens au meme. Tu peut m'aider? merci d'avance. hap
Revenir en haut Aller en bas
Topaze22
*Excellent utilisateur*
Topaze22


Messages : 6213
Localisation : Sur la Lune
Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World

collision line - what's the matter ? Empty
MessageSujet: Re: collision line - what's the matter ?   collision line - what's the matter ? EmptyLun 26 Fév 2007 - 18:53

Looooooooooool, et oui, parfois on s'énerve sur les truc les plus con rire2
Bon ba j'ai bien fais de faire la petite remarque sur la bounding box.
Et c'est passé à un cheveux que je ne le fasse pas rire
Je viends de voir ton projet dans la section projet, vraiment prometteur super
Revenir en haut Aller en bas
Invité
Invité




collision line - what's the matter ? Empty
MessageSujet: Re: collision line - what's the matter ?   collision line - what's the matter ? EmptyLun 26 Fév 2007 - 18:58

Attends je te fais un exemple, mais le problème vient peut être du fait que tu ne parle pas du même character : character1/character3 ?
edit : voilà ^^ exemple collision_line.gm6 - 0.01MB


Dernière édition par le Lun 26 Fév 2007 - 19:08, édité 1 fois
Revenir en haut Aller en bas
Rem_101
*Excellent utilisateur*
Rem_101


Messages : 4356
Localisation : chez votre marchand de journaux

collision line - what's the matter ? Empty
MessageSujet: Re: collision line - what's the matter ?   collision line - what's the matter ? EmptyLun 26 Fév 2007 - 19:00

en fait y a 2 bots dans la room qui doivent viser le character 3 sauf si y a un mur et si la distance est trops grande. c'est charater 3. Merci d'avance pour l'exemple. happy1
Revenir en haut Aller en bas
Contenu sponsorisé





collision line - what's the matter ? Empty
MessageSujet: Re: collision line - what's the matter ?   collision line - what's the matter ? Empty

Revenir en haut Aller en bas
 
collision line - what's the matter ?
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [Resolu]Problème avec collision _ line avec mur entre 2 obj
» Départ d'une time Line
» Quesqu'un time line???
» line rider
» Time Line???

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: