Bonjour,
Je suis de retour, j'ai un projet de jeu qui est de créer un plateformer, et donc une bonne gravité.
Comme la gravité fais pas tout je dois bien sur m’occuper des
collision horizontale.
Le soucis est que je ne sais pas trop comment faire, je sais que c'est tout con mais je ne sais pas comment faire avec la méthode que je veux utiliser.
Je m'explique :
J'ai créer une variable x_speed qui a un cap de ~ 6 et donc qui augmente assez vite quand j’appuie sur Q ou D , afin de faire une sorte d'inertie celle ci baisse tout le temps.
Le problème est pour les
collision envers les object de gauche et de droite , j'ai ceci :
- Code:
-
if ( keyboard_check(ord("Q")) && !keyboard_check(ord("D"))){
if (x_speed > -global.speed_cap)x_speed -= global.p_speed;
sens = 0;
}
if ( keyboard_check(ord("D")) && !keyboard_check(ord("Q"))){
if (x_speed < global.speed_cap)x_speed += global.p_speed;
sens = 1;
}
if (x_speed > 0 )x_speed -=global.speed_i; // Inertie
if (x_speed < 0 )x_speed +=global.speed_i; // Inertie
if (!colR()){x+=x_speed;};
if (!colL()){x+=x_speed;};
// col R et L fonctionne comme ceci :
return place_meeting(x + x_speed + 1, y,gr_solid);
col L
return place_meeting(x - x_speed - 1, y,gr_solid);
Sauf que bien évidement si il n'y a pas de
collision la vitesse est double, j'ai donc fais :
- Code:
-
if ( keyboard_check(ord("Q")) && !keyboard_check(ord("D")) and !colL()){
if (x_speed > -global.speed_cap)x_speed -= global.p_speed;
sens = 0;
}
if ( keyboard_check(ord("D")) && !keyboard_check(ord("Q")) and !colR()){
if (x_speed < global.speed_cap)x_speed += global.p_speed;
sens = 1;
}
if (x_speed > 0 )x_speed -=global.speed_i; // Inertie
if (x_speed < 0 )x_speed +=global.speed_i; // Inertie
x+=x_speed;
Sauf que la mon personnage rentre dans l'objet :/
Je sais que c'est tout bète mais je ne sais pas trop comment faire :/
De plus si vous savez comme je pourrais faire pour avec un système comme celui si qui prend en charge une monté , car celui ci n'est pas pensé pour cela :/
Merci d'avance.
Et si vous avez besoin d'aide pour le nouveau site, je suis plus fort en HTML CSS PHP