Forum d'entraide à la création de jeux d'aventure
 
PortailPortail  AccueilAccueil  RechercherRechercher  S'enregistrerS'enregistrer  Connexion  
-50%
Le deal à ne pas rater :
-50% Baskets Nike Air Huarache Runner
69.99 € 139.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 : 67

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)
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 : 67

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 : 67

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;}
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 : 67

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: