AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
Le deal à ne pas rater :
Bon plan achat en duo : 2ème robot cuiseur Moulinex Companion ...
600 €
Voir le deal
Le Deal du moment : -26%
Bosch BBS8214 Aspirateur Balai Multifonction sans fil ...
Voir le deal
249.99 €

 

 [Résolu] Variable locale "image_speed" non exécuté

Aller en bas 
4 participants
AuteurMessage
Invité
Invité




[Résolu] Variable locale "image_speed" non exécuté Empty
MessageSujet: [Résolu] Variable locale "image_speed" non exécuté   [Résolu] Variable locale "image_speed" non exécuté EmptyMer 14 Sep 2011 - 21:10

Bonsoir,

J'ai un problème tout simple mais je ne trouve aucune solution. Le code est divisé en 2 parties :

  • Une partie pour le déplacement du personnage à gauche.
  • Une partie pour le déplacement du personnage à droite.


CODE :

// Gauche
if keyboard_check(vk_left) || keyboard_check(ord('A'))
{
if place_free(x-4,y)
{
image_speed = 0.3;
image_xscale = -1;
x -= 4;
}
}
else
{
image_speed = 0;
}

// Droite
if keyboard_check(vk_right) || keyboard_check(ord('D'))
{
if place_free(x+4,y)
{
image_speed = 0.3;
image_xscale = 1;
x += 4;
}
}
else
{
image_speed = 0;
}

  • Le déplacement à droite est correct, la fonction image_speed est bien exécuté.
  • Le déplacement à gauche n'est pas correct, la fonction image_speed n'est pas exécuté.


Ma question : pourquoi ?!


Dernière édition par Fresh le Mer 14 Sep 2011 - 23:05, édité 1 fois
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


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

[Résolu] Variable locale "image_speed" non exécuté Empty
MessageSujet: Re: [Résolu] Variable locale "image_speed" non exécuté   [Résolu] Variable locale "image_speed" non exécuté EmptyMer 14 Sep 2011 - 21:35

Essaye

// Gauche
if keyboard_check(vk_left) || keyboard_check(ord('A'))
{
if place_free(x-4,y)
{
image_speed = 0.3;
image_xscale = -1;
x -= 4;
}
}
else
if keyboard_check(vk_right) || keyboard_check(ord('D'))
{
if place_free(x+4,y)
{
image_speed = 0.3;
image_xscale = 1;
x += 4;
}
}
else
{
image_speed = 0;
}

_________________
[Résolu] Variable locale "image_speed" non exécuté Runningpotato1[Résolu] Variable locale "image_speed" non exécuté TvF6GED [Résolu] Variable locale "image_speed" non exécuté MdetltS
Revenir en haut Aller en bas
Caly
Utilisateur confirmé: Rang ****
Caly


Messages : 1285
Localisation : Haute Normandie
Projet Actuel : Capturer, apprivoiser et dresser des Pokémons sauvages pour faire des spectacles de rue et en faire mon métier.

[Résolu] Variable locale "image_speed" non exécuté Empty
MessageSujet: Re: [Résolu] Variable locale "image_speed" non exécuté   [Résolu] Variable locale "image_speed" non exécuté EmptyMer 14 Sep 2011 - 21:36

Bonsoir tu peut essayer :

Code:

if keyboard_check(vk_left) or keyboard_check(ord('A')) or keyboard_check(vk_right) or keyboard_check(ord('D'))
{
    dh = -4;
    ixscale = -1;

    if ( ( keyboard_check(vk_left) || keyboard_check(ord('A')) ) and place_free(x-4,y) )
    {
        image_xscale = ixscale;
        x -= dh; 
    }
    else if ( ( keyboard_check(vk_right) or keyboard_check(ord('D')) ) and  place_free(x+4,y) )
    {
        image_xscale = abs(ixscale);
        x += abs(dh);
    }
   
    image_speed = 0.3;
}
else
    image_speed = 0;


Edition: dépassé par maître onilink_
Revenir en haut Aller en bas
Oculus
Utilisateur confirmé: Rang *****



Messages : 1688

[Résolu] Variable locale "image_speed" non exécuté Empty
MessageSujet: Re: [Résolu] Variable locale "image_speed" non exécuté   [Résolu] Variable locale "image_speed" non exécuté EmptyMer 14 Sep 2011 - 21:48

Je te conseille d'utiliser des boucles pour avoir des collsions au pixel près + séparer déplacement et draw
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


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

[Résolu] Variable locale "image_speed" non exécuté Empty
MessageSujet: Re: [Résolu] Variable locale "image_speed" non exécuté   [Résolu] Variable locale "image_speed" non exécuté EmptyMer 14 Sep 2011 - 21:52

Ouai enfin vu son code on vois bien qu'il s'entraine.
Et sinon image_speed c'est pas une fonction, c'est une variable locale Wink

ps:quand tu sentiras chaud passe a l'atelier 2, c'est spécial jeux de plateforme.

_________________
[Résolu] Variable locale "image_speed" non exécuté Runningpotato1[Résolu] Variable locale "image_speed" non exécuté TvF6GED [Résolu] Variable locale "image_speed" non exécuté MdetltS
Revenir en haut Aller en bas
Invité
Invité




[Résolu] Variable locale "image_speed" non exécuté Empty
MessageSujet: Re: [Résolu] Variable locale "image_speed" non exécuté   [Résolu] Variable locale "image_speed" non exécuté EmptyMer 14 Sep 2011 - 22:23

Merci beaucoup pour votre aide !

Jbg > J'aimerais bien mais je sais pas comment faire. sweat
Oni > Oui, je regarderai le 2ème atelier dès que possible.

J'ai juste une autre question avant de clore le sujet, mon sprite devient flou quand il se déplace (mais pas toujours), pourquoi ?

  • À gauche : sprite normal
  • À droite : sprite flouté sans raisons (?)

[Résolu] Variable locale "image_speed" non exécuté 80cb52c16d97a6028272980562949

Voici le code en entier qui tient dans un Step :

Spoiler:

Si quelqu'un peut m'aider pour ça, ce serait vraiment bien ! coeur
Merci par avance.
Revenir en haut Aller en bas
D-z
Utilisateur confirmé: Rang *****
D-z


Messages : 1611
Localisation : Montpellier

[Résolu] Variable locale "image_speed" non exécuté Empty
MessageSujet: Re: [Résolu] Variable locale "image_speed" non exécuté   [Résolu] Variable locale "image_speed" non exécuté EmptyMer 14 Sep 2011 - 22:35

Essaye de mettre à la toute fin du Step :
Code:
x=round(x);
y=round(y);

(Je mise sur un problème d'interpolation)

_________________
 
Home is not a place, it's a feeling.
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


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

[Résolu] Variable locale "image_speed" non exécuté Empty
MessageSujet: Re: [Résolu] Variable locale "image_speed" non exécuté   [Résolu] Variable locale "image_speed" non exécuté EmptyMer 14 Sep 2011 - 22:36

Ça c'est surement un problème de coordonnées flottantes.

Essaye de mettre :
#draw event
draw_sprite_ext(sprite_index, image_index, round(x), round(y), image_xscale, image_yscale, image_angle, image_blend, image_alpha)


Lol Deezee qu'a la flemme d’écrire un draw_sprite :p

_________________
[Résolu] Variable locale "image_speed" non exécuté Runningpotato1[Résolu] Variable locale "image_speed" non exécuté TvF6GED [Résolu] Variable locale "image_speed" non exécuté MdetltS
Revenir en haut Aller en bas
Invité
Invité




[Résolu] Variable locale "image_speed" non exécuté Empty
MessageSujet: Re: [Résolu] Variable locale "image_speed" non exécuté   [Résolu] Variable locale "image_speed" non exécuté EmptyMer 14 Sep 2011 - 23:04

Deezee > Au début du jeu, le personnage tombe sur une plateforme. Avec ton code, il devenait flou mais tout le reste, c'était ok.

Onilink > Avec le tiens, ça marche nickel du début à la fin.

Merci beaucoup ! coeur
Revenir en haut Aller en bas
D-z
Utilisateur confirmé: Rang *****
D-z


Messages : 1611
Localisation : Montpellier

[Résolu] Variable locale "image_speed" non exécuté Empty
MessageSujet: Re: [Résolu] Variable locale "image_speed" non exécuté   [Résolu] Variable locale "image_speed" non exécuté EmptyMer 14 Sep 2011 - 23:15

(Dire que c'est censé faire exactement la même chose...)

_________________
 
Home is not a place, it's a feeling.
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


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

[Résolu] Variable locale "image_speed" non exécuté Empty
MessageSujet: Re: [Résolu] Variable locale "image_speed" non exécuté   [Résolu] Variable locale "image_speed" non exécuté EmptyMer 14 Sep 2011 - 23:38

Nan je touche pas au coordonnées, toi si :p

_________________
[Résolu] Variable locale "image_speed" non exécuté Runningpotato1[Résolu] Variable locale "image_speed" non exécuté TvF6GED [Résolu] Variable locale "image_speed" non exécuté MdetltS
Revenir en haut Aller en bas
D-z
Utilisateur confirmé: Rang *****
D-z


Messages : 1611
Localisation : Montpellier

[Résolu] Variable locale "image_speed" non exécuté Empty
MessageSujet: Re: [Résolu] Variable locale "image_speed" non exécuté   [Résolu] Variable locale "image_speed" non exécuté EmptyJeu 15 Sep 2011 - 15:04

Oui, mais au final le sprite (qui s'affiche en (x,y)) devrait être affiché correctement... Mystère de GM ?

_________________
 
Home is not a place, it's a feeling.
Revenir en haut Aller en bas
Oculus
Utilisateur confirmé: Rang *****



Messages : 1688

[Résolu] Variable locale "image_speed" non exécuté Empty
MessageSujet: Re: [Résolu] Variable locale "image_speed" non exécuté   [Résolu] Variable locale "image_speed" non exécuté EmptyJeu 15 Sep 2011 - 18:18

Citation :
J'aimerais bien mais je sais pas comment faire.
Code:
//SPRITE ET ANIMATION
if (keyboard_check(vk_left))// Si j'appuie sur fleche gauche
  image_xscale=-1;//mon sprite se tourne vers la gauche
else if (keyboard_check(vk_right))// Si j'appuie sur fleche droite
  image_xscale=1; //mon sprite se tourne vers la droite
 
if (x==xprevious && y==yprevious && not place_free(x,y+1))//si x=xd'avant et y=yd'avant donc si je bouge pas et qu'il n'y pas de place en dessous
  action="idle";//mon action est l'arret
else if (vsp==0 && y==yprevious && not place_free(x,y+1))//si la gravité est nul et que y==yprevious et qu'il n'y pas de place en dessous
  action="walk";//mon action est la marche
else//sinon mon action forcement le saut
  action="jump";//mon action est le saut
 
switch(action)//swith de condition pour la variable action
  {
    case "idle"://si action==idle
      sprite_index=spr_player_idle//mon sprite est égale au sprite arret
    break;
    case "walk"://si action==walk
      sprite_index=spr_player_walk//mon sprite est égale au sprite marche
      image_speed=0.125//l'image speed = 0.125 de la vitesse de la room
    break
    case "jump"://si action==jump
      sprite_index=spr_player_jump//mon sprite est égale au sprite saut
    break
  }
 

Le reste ici :
http://www.host-a.net/u/jbg77/%5BGmk%5DVery%20Simple%20platform%20engine%20de%20jbg77.gmk
Revenir en haut Aller en bas
D-z
Utilisateur confirmé: Rang *****
D-z


Messages : 1611
Localisation : Montpellier

[Résolu] Variable locale "image_speed" non exécuté Empty
MessageSujet: Re: [Résolu] Variable locale "image_speed" non exécuté   [Résolu] Variable locale "image_speed" non exécuté EmptyJeu 15 Sep 2011 - 18:44

jbg77, c'est bien beau de spammer les templates mais c'est bien aussi de laisser les gens faire leur sauce histoire d'apprendre...

_________________
 
Home is not a place, it's a feeling.
Revenir en haut Aller en bas
Oculus
Utilisateur confirmé: Rang *****



Messages : 1688

[Résolu] Variable locale "image_speed" non exécuté Empty
MessageSujet: Re: [Résolu] Variable locale "image_speed" non exécuté   [Résolu] Variable locale "image_speed" non exécuté EmptyJeu 15 Sep 2011 - 19:22

Il me pose une question je lui répond...
Revenir en haut Aller en bas
Contenu sponsorisé





[Résolu] Variable locale "image_speed" non exécuté Empty
MessageSujet: Re: [Résolu] Variable locale "image_speed" non exécuté   [Résolu] Variable locale "image_speed" non exécuté Empty

Revenir en haut Aller en bas
 
[Résolu] Variable locale "image_speed" non exécuté
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [résolu] Une variable globale ou une variable locale persistante?
» "draw" une variable locale [résolu]
» problème variable locale
» [Résolu]Condition bugguer ou mal exécuté
» [Résolu] Affichage aide execute code

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: