Forum d'entraide à la création de jeux d'aventure
 
PortailPortail  AccueilAccueil  RechercherRechercher  S'enregistrerS'enregistrer  Connexion  
-25%
Le deal à ne pas rater :
PC Portable Gamer 16,1” HP Victus 16 – 16 Go /512 Go
749.99 € 999.99 €
Voir le deal

 

 [résolu]vérifier si player est passé par une room

Aller en bas 
3 participants
AuteurMessage
dominouche
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue
dominouche


Nombre de messages : 145

Age : 68

Localisation : Olonne sur mer, Vendée

Date d'inscription : 19/04/2016


[résolu]vérifier si player est passé par une room Empty
MessageSujet: [résolu]vérifier si player est passé par une room   [résolu]vérifier si player est passé par une room EmptyMar 2 Mai 2017 - 16:51

Bonjour,
je voudrais vérifier si mon personnage est passé par une room.
Dans le code ci-dessous, je ne sais pas comment formuler:

  • à la ligne 6 "si cBrett est passé par la room 59"


  • à la ligne 9 "si cBrett n'est pas passé par 59"

Code:
function Marais_OnClick(GUIControl *control, MouseButton button)
 {
    if(player.InventoryQuantity[10]== 1)    
      {cBrett.ChangeRoom (53, 667, 521); gCarte.Visible = false;}
          
    else if  cBrett passé par room 59 && player.InventoryQuantity[10]== 0)
      {cBrett.ChangeRoom (49, 397, 634); gCarte.Visible = false;}
        
    else if cBrett pas passé room 59 && (player.InventoryQuantity[10]== 0
      {cBrett.ChangeRoom (45, 417, 687); gCarte.Visible = false;}
 }


Dernière édition par dominouche le Mar 2 Mai 2017 - 19:19, édité 1 fois
Revenir en haut Aller en bas
Kitai
Délégué de la tasse bleue
Délégué de la tasse bleue
Kitai


Nombre de messages : 2907

Date d'inscription : 01/08/2006


[résolu]vérifier si player est passé par une room Empty
MessageSujet: Re: [résolu]vérifier si player est passé par une room   [résolu]vérifier si player est passé par une room EmptyMar 2 Mai 2017 - 18:11

Tu peux utiliser la fonction HasPlayerBeenInRoom. Par ailleurs, tes else if expriment des conditions redondantes : le else t'assure déjà que la condition du (else) if situé plus haut n'est pas remplie. (Bien que techniquement en ce qui concerne les conditions sur l'objet d'inventaire, il y a toujours la possibilité que le personnage possède plus d'une copie et donc spécifier == 0 peut se défendre)

_________________
Ga is Ga
Vous pouvez consulter l'aide d'AGS 3.2 en français et contribuer à la traduction et à l'amélioration si le cœur vous en dit !
Revenir en haut Aller en bas
http://admin.no.uchi.free.fr/dokuwiki-2008-05-05/doku.php
dominouche
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue
dominouche


Nombre de messages : 145

Age : 68

Localisation : Olonne sur mer, Vendée

Date d'inscription : 19/04/2016


[résolu]vérifier si player est passé par une room Empty
MessageSujet: Re: [résolu]vérifier si player est passé par une room   [résolu]vérifier si player est passé par une room EmptyMar 2 Mai 2017 - 18:22

Super, merci.
Je modifie les conditions redondantes.
Revenir en haut Aller en bas
dominouche
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue
dominouche


Nombre de messages : 145

Age : 68

Localisation : Olonne sur mer, Vendée

Date d'inscription : 19/04/2016


[résolu]vérifier si player est passé par une room Empty
MessageSujet: Re: [résolu]vérifier si player est passé par une room   [résolu]vérifier si player est passé par une room EmptyMar 2 Mai 2017 - 18:50

J'ai une erreur:
GlobalScript.asc(805): Error (line 805): PE04: parse error at '('
C'est la ligne 6 du code ci-dessous.
Code:
function Marais_OnClick(GUIControl *control, MouseButton button)
 {
    if(player.InventoryQuantity[10]== 1)    
      {cBrett.ChangeRoom (53, 667, 521); gCarte.Visible = false;}
          
    else (HasPlayerBeenInRoom(59))  
      {cBrett.ChangeRoom (49, 397, 634); gCarte.Visible = false;}
        
    else
      {cBrett.ChangeRoom (45, 417, 687); gCarte.Visible = false;}
 }
Revenir en haut Aller en bas
valoulef
Délégué de la tasse bleue
Délégué de la tasse bleue
valoulef


Nombre de messages : 1791

Age : 35

Localisation : Condate

Date d'inscription : 01/08/2011


[résolu]vérifier si player est passé par une room Empty
MessageSujet: Re: [résolu]vérifier si player est passé par une room   [résolu]vérifier si player est passé par une room EmptyMar 2 Mai 2017 - 18:58

Tu as oublié un if.

Code:
else (HasPlayerBeenInRoom(59))

Pourrait se traduire littéralement comme ça : "sinon, le joueur a été dans la room 59". Ce qui ne veut rien dire.
Ce que toi tu veux dire c'est "sinon, si le joueur a été dans la room 59..."

Il faut donc écrire :
Code:
 else if (HasPlayerBeenInRoom(59)) 
      {cBrett.ChangeRoom (49, 397, 634); gCarte.Visible = false;}

_________________
Vous êtes déjà allés à Condate ? Ils ont un petit vin qui à un goût de pierre à catapulte. C'est Toutatis en culotte de velours si j'ose m'exprimer ainsi.
Revenir en haut Aller en bas
dominouche
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue
dominouche


Nombre de messages : 145

Age : 68

Localisation : Olonne sur mer, Vendée

Date d'inscription : 19/04/2016


[résolu]vérifier si player est passé par une room Empty
MessageSujet: Re: [résolu]vérifier si player est passé par une room   [résolu]vérifier si player est passé par une room EmptyMar 2 Mai 2017 - 19:18

Merci Valoulef.
Revenir en haut Aller en bas
Contenu sponsorisé





[résolu]vérifier si player est passé par une room Empty
MessageSujet: Re: [résolu]vérifier si player est passé par une room   [résolu]vérifier si player est passé par une room Empty

Revenir en haut Aller en bas
 
[résolu]vérifier si player est passé par une room
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [résolu] bug déplacement player avec room de +640 de large.
» [Résolu] "Si mon perso est passé par telle ou telle room"
» [résolu]Vérifier si un objet/hotspot/personnage a déjà été cliqué
» [résolu] Gestion des teintes/régions avec player.Walk...
» [résolu]room, new folder

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Adventure Games Studio fr :: CREATION DE JEUX :: Questions / Réponses-
Sauter vers: