Fonctionnement du test de collision.

Résolu/Fermé
pierre_5858 Messages postés 2 Date d'inscription lundi 30 avril 2018 Statut Membre Dernière intervention 30 avril 2018 - 30 avril 2018 à 18:14
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 - 1 mai 2018 à 16:12
Bonjour,
Je programme actuellement un jeu avec le langage python et je rencontre quelques problèmes.
Le joueur est de type dictionnaire et doit éviter un obstacle de type dictionnaire également.
Mon problème est au niveau du test de collision de ces deux éléments, je voudrais que lorsque la position de la balle est la même que la position de l'obstacle, l'obstacle et la balle disparaissent.
Je ne vois pas comment effacer la balle et l'obstacle du terminal.

J'ai également une seconde question.
Comment effectuer ce même test de collision si l'obstacle et la balle ont des tailles différentes.
Ma balle est modélisée par un caractère "0" et l'obstacle par la chaîne de caractère "===="
ici, la position de l'obstacle a une coordonnée "x" et une coordonnée "y" mais dans le cas de l'obstacle je ne comprends pas comment fonctionne sa position.
Merci beaucoup pour vos conseils et votre temps.
Cordialement,


A voir également:

3 réponses

Chris 94 Messages postés 50978 Date d'inscription mardi 8 janvier 2008 Statut Modérateur Dernière intervention 17 février 2023 7 323
30 avril 2018 à 18:19
Bonjour,

Pour rappel, à tout hasard :

CCM ne fait pas les exercices !.. De l'aide peut être demandée si on montre l'avancée du travail qu'on a soi-même réalisé.

--
Les gens qui se battent peuvent perdre. Les gens qui ne se battent pas ont déjà perdu.
(Bertolt BRECHT)
0
Bonsoir.

Le truc, c'est que tu ne définis pas le contexte, ni quelle librairie tu utilises dans ton script dans ton sujet.

Et là tu parles de terminal, un test de collisions dans un terminal ? Hum, c'est bizarre :-D
A part regarder si tels caractères se situent à proximité immédiates de tel caractère (donc regarder les positions lignes et colonnes), je vois pas trop ce que tu entends par collision dans un terminal.

Un peu plus de précisions s'imposent et évetuellement un simple exemple de script.
0
pierre_5858 Messages postés 2 Date d'inscription lundi 30 avril 2018 Statut Membre Dernière intervention 30 avril 2018
30 avril 2018 à 23:05
j'effectue mon codage en mode terminal,je n'utilise que les modules interne a python (sys,os,time,select,tty,termios...) et aucune librairie extérieure.

voici l'état actuel de ma fonction gérant ce type de collision
def collide_balleObstacle(obstacle,yMax, ball) :
#gestion des collision entre les obstacles et la balle
	x1 = obstacle['x']
	x2 = ball['x']
	y1 = obstacle['y']
	y2 = ball['y']
	if y1 == y2:
		if x1 == x2:
			#supprimer ball
			#supprimer obstacle

je ne voit pas comment réaliser les fonctions #supprimer balle et #supprimer obstacle
0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
1 mai 2018 à 16:12
bonjour, pose-toi la question de ce que signifie "supprimer", dans ton cas.
0