AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment : -20%
Pack Gigabyte Ecran PC Gamer 27″ LED M27Q ...
Voir le deal
749 €

 

 [Résolu] Probleme Gamepad

Aller en bas 
2 participants
AuteurMessage
Gumboy
Débutant
Gumboy


Messages : 10
Localisation : Dijon

[Résolu] Probleme Gamepad Empty
MessageSujet: [Résolu] Probleme Gamepad   [Résolu] Probleme Gamepad EmptyJeu 26 Jan 2017 - 13:26

Bonjour,

Je suis en train de crée un jeu style rogue-like et je rencontre un soucis avec mon script de gamepad :

Code:
if (gamepad_is_connected(0)) {
    gamepad_set_axis_deadzone(0 ,0.35)
    xaxis = gamepad_axis_value(0, gp_axislh);
    yaxis = gamepad_axis_value(0, gp_axislv);
    xdir = gamepad_axis_value(0, gp_axisrh);
    ydir = gamepad_axis_value(0, gp_axisrv);

   if ((xdir != 0) || (ydir != 0))
            {rdir = point_direction(0,0, xdir, ydir); }
            else {
                if ((xaxis != 0) || (yaxis != 0))
                {rdir = point_direction(0,0, xaxis, yaxis);} else {rdir=270;}}
    
    touche_dash = gamepad_button_check_pressed(0,gp_shoulderl);
    touche_atq = gamepad_button_check_pressed(0,gp_shoulderr);

Alors, mon problème se situe lorsque qu'aucun des joystick n'est utilisé (le joystick de gauche contrôle le déplacement (xaxis/yaxis), et celui de droite la visé (xdir/ydir).

Dans mon script, si le joystick de gauche est le seul activé,  la rotation de mon sprite se fait selon sa direction, et si le joystick de droite est activer, il prend le dessus et controle la rotation de ce sprite.

Mais voila, imaginons que je relache le joystick de gauche d'une position (en haut pour l'exemple) la rotation du sprite se remet sur ma valeur "rdir" soit 270 (en bas) dans mon script.

Y-a t'il moyen de retourner l'ancienne valeur du joystick lors du relachement pour faire en sorte que si mon perso marche vers le haut et que je relache le joystick, la direction de base du joystick soit pointé vers le haut ?
Je n'arrive pas trouver cette petite partie de code pour mon "rdir" qui me pose problème...

Merci d'avance pour vos réponses Smile


Dernière édition par Gumboy le Jeu 26 Jan 2017 - 15:54, édité 1 fois
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9178
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

[Résolu] Probleme Gamepad Empty
MessageSujet: Re: [Résolu] Probleme Gamepad   [Résolu] Probleme Gamepad EmptyJeu 26 Jan 2017 - 14:24

Salut,
ça donne quoi sans le "else {rdir=270;}" ?

T'as pensé a utiliser une variable pour mémoriser la direction qui t’intéresse sinon?

_________________
[Résolu] Probleme Gamepad Runningpotato1[Résolu] Probleme Gamepad TvF6GED [Résolu] Probleme Gamepad MdetltS
Revenir en haut Aller en bas
Gumboy
Débutant
Gumboy


Messages : 10
Localisation : Dijon

[Résolu] Probleme Gamepad Empty
MessageSujet: Re: [Résolu] Probleme Gamepad   [Résolu] Probleme Gamepad EmptyJeu 26 Jan 2017 - 14:45

Salut Smile

Alors sans le "else" il y a une erreur vu que le "rdir" est obligé d'avoir une valeur (vu que je peux switch entre clavier et manette, et qu'au clavier "rdir" est toujours actif avec un point_direction de la souris et sert a ma direction global).

A la manette, la valeur de l'axe x et y d'un joystick est = 0 quand il est relaché, donc vu qu'ici je le converti en point_direction, même relacher il me garde la direction "rdir".

Pour la variable, comment ça ?
Je n'arrive pas a voir comment je pourrais formuler ça et surtout sous quelles conditions :/




Dernière édition par Gumboy le Jeu 26 Jan 2017 - 15:59, édité 1 fois
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9178
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

[Résolu] Probleme Gamepad Empty
MessageSujet: Re: [Résolu] Probleme Gamepad   [Résolu] Probleme Gamepad EmptyJeu 26 Jan 2017 - 14:58

Mais le soucis est lié a la transition gamepad/clavier?
Ou c'est vraiment juste la partie gamepad qui t’intéresse?

_________________
[Résolu] Probleme Gamepad Runningpotato1[Résolu] Probleme Gamepad TvF6GED [Résolu] Probleme Gamepad MdetltS
Revenir en haut Aller en bas
Gumboy
Débutant
Gumboy


Messages : 10
Localisation : Dijon

[Résolu] Probleme Gamepad Empty
MessageSujet: Re: [Résolu] Probleme Gamepad   [Résolu] Probleme Gamepad EmptyJeu 26 Jan 2017 - 15:14

Bah en fait le soucis est juste au niveau du gamepad étant donner qu'au clavier l'angle est toujours actif via la position de la souris, en gros mon script partage les deux système clavier/manette, mais a besoin d'être différent l'un de l'autre, car a la manette, "rdir" a besoin d'une valeur de base pour le relâchement du joystic.

D'où mon problème a faire en sorte que "rdir = ancienne position du joystick avant relâchement" et j'ai du mal a voir comment garder en mémoire une direction d'angle).
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9178
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

[Résolu] Probleme Gamepad Empty
MessageSujet: Re: [Résolu] Probleme Gamepad   [Résolu] Probleme Gamepad EmptyJeu 26 Jan 2017 - 15:27

Un truc comme ça j'imagine:
Code:

si joystick gauche appuyé
  rdir = dir_gauche
  prev_dir = rdir
sinon si joystick droit appuyé
  rdir = dir_droite
  prev_dir = rdir
sinon
  rdir = prev_dir

_________________
[Résolu] Probleme Gamepad Runningpotato1[Résolu] Probleme Gamepad TvF6GED [Résolu] Probleme Gamepad MdetltS
Revenir en haut Aller en bas
Gumboy
Débutant
Gumboy


Messages : 10
Localisation : Dijon

[Résolu] Probleme Gamepad Empty
MessageSujet: Re: [Résolu] Probleme Gamepad   [Résolu] Probleme Gamepad EmptyJeu 26 Jan 2017 - 15:54

Han je suis vraiment bête enfait...

Enfait ton script m'a fait pensée que j'avais oublier de donner une valeur de base a rdir (alors que je le répétait si souvent dans mes posts ^^') et qu'il fallait juste que j'en donne une...

Tu avais raison, j'ai juste du enlever le "else" et rajouté la valeur de départ de rdir dans le create du sprite, je me suis embrouillé pour rien ^^' (enchaîner les heures de codage c'est mal ><)

Code:
  if ((xdir != 0) || (ydir != 0))
            {rdir = point_direction(0,0, xdir, ydir);
            } else {
                if ((xaxis != 0) || (yaxis != 0))
                {rdir = point_direction(0,0, xaxis, yaxis);}}

Merci en tout cas pour m'avoir guidé Smile
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9178
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

[Résolu] Probleme Gamepad Empty
MessageSujet: Re: [Résolu] Probleme Gamepad   [Résolu] Probleme Gamepad EmptyJeu 26 Jan 2017 - 16:07

C'est des choses qui arrivent :p

_________________
[Résolu] Probleme Gamepad Runningpotato1[Résolu] Probleme Gamepad TvF6GED [Résolu] Probleme Gamepad MdetltS
Revenir en haut Aller en bas
Contenu sponsorisé





[Résolu] Probleme Gamepad Empty
MessageSujet: Re: [Résolu] Probleme Gamepad   [Résolu] Probleme Gamepad Empty

Revenir en haut Aller en bas
 
[Résolu] Probleme Gamepad
Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Entraide confirmés-
Sauter vers: