Forum d'entraide à la création de jeux d'aventure
 
PortailPortail  AccueilAccueil  RechercherRechercher  S'enregistrerS'enregistrer  Connexion  

 

 [résolu]Info sur les GUI

Aller en bas 
3 participants
AuteurMessage
hanakin
Cliqueur Amateur
Cliqueur Amateur
hanakin


Nombre de messages : 492

Age : 59

Localisation : Angers

Date d'inscription : 12/09/2012


[résolu]Info sur les GUI Empty
MessageSujet: [résolu]Info sur les GUI   [résolu]Info sur les GUI EmptyMar 16 Avr 2013 - 10:23

Bonjours

est-ce que quelqu'un aurait la manip ou un lien vers une question déjà posé concernant les GUI
Je m'explique j'ai trois salles niveau 1 niveau 2 niveau 3 j'utilise un GUI qui m'affiche les étages en quelques sorte(ascenseur) je voudrais qu'une fois arrivé au niveau 2
(par exemple ) le bouton du gui niveau 2 soit inopérant car le player est déjà au niveau.
Même chose pour le 1 et 3

je pense utiliser le commande Player Room = X mais pour le bouton du Gui je ne sais pas trop


Merci d'avance (j'espère que j'ai été assez clair)


Dernière édition par hanakin le Jeu 18 Avr 2013 - 8:10, édité 1 fois
Revenir en haut Aller en bas
http://dinomania.chez-alice.fr/index.htm
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]Info sur les GUI Empty
MessageSujet: Re: [résolu]Info sur les GUI   [résolu]Info sur les GUI EmptyMar 16 Avr 2013 - 11:07

Salut hanakin,

Je vois ce que tu veux faire.
Pour le niveau, tu as plusieurs possibilités. Tu peux soit gérer l'activation/la désactivation des boutons dans la fonction Player enters room (Le joueur entre dans la pièce) de chaque pièce/niveau séparément ; ou bien tu peux gérer ça dans le script global dans une fonction comme on_event. Dans ce dernier cas, la condition à regarder concerne bien la propriété Room sur le personnage joueur.
Concernant la commande pour rendre un bouton inutilisable, il s'agit simplement de la propriété Enabled qu'il faut désactiver (sur les éléments des interfaces, l'aide est un peu particulière puisqu'une bonne partie des propriétés sont partagées par tous les éléments et donc ne figurent pas dans les pages consacrées à chaque élément particulier).

Au final, ça te donne quelque chose dans cette idée-là (un simple copier/coller ne marchera probablement pas) si tu choisis la première option, qui consiste à mettre un code dans le script de chaque pièce :
Code:
// Dans la fonction Player Enters Room de la pièce 2
bouton1.Enabled = true;
bouton2.Enabled = false;
bouton3.Enabled = true;
Sinon, si tu choisis l'option du script global, tu auras quelque chose comme ça :
Code:
function on_event (EventType evenement, int data) {
  if (evenement == eEventEnterRoomBeforeFadein) {
    // On active d'abord tous les boutons, et ensuite on désactivera le bouton de la pièce en question
    bouton1. Enabled = true;
    bouton2. Enabled = true;
    bouton3. Enabled = true;
    if (player.Room == 1) bouton1.Enabled = false;
    else if (player.Room == 2) bouton2.Enabled = false;
    else if (player.Room == 3) bouton3.Enabled = false;
  }
}

_________________
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
Billbis
Disciple de la Grande Tasse Bleue
Disciple de la Grande Tasse Bleue
Billbis


Nombre de messages : 1346

Date d'inscription : 10/05/2012


[résolu]Info sur les GUI Empty
MessageSujet: Re: [résolu]Info sur les GUI   [résolu]Info sur les GUI EmptyMar 16 Avr 2013 - 16:46

Troisième façon de procéder, sans doute pas la solution la plus élégante, mais sans doute la plus rapide et la plus simple :
Ajouter
Code:
  if (player.Room == 100) {
    return;
  }
au début du sctipt des chacun des trois boutons en remplaçant, bien sûr, le "100" par le numéro des pièces en questions.

Ca donnerai un truc un peu comme ça:

Code:
function bEtage2_OnClick(GUIControl *control, MouseButton button)
{
  if (player.Room == 2) {
    return; //si le joueur est déjà au deuxième étage, on interromps tout ici.
  }
  player.ChangeRoom (2) //sinon, on envoie le joueur dans la pièce numéro 2
}

_________________
Mon petit DevBlog


Dernière édition par Billbis le Mer 17 Avr 2013 - 10:06, édité 1 fois
Revenir en haut Aller en bas
http://nothingaboutthedog.blogspot.fr/
hanakin
Cliqueur Amateur
Cliqueur Amateur
hanakin


Nombre de messages : 492

Age : 59

Localisation : Angers

Date d'inscription : 12/09/2012


[résolu]Info sur les GUI Empty
MessageSujet: Resolu   [résolu]Info sur les GUI EmptyMer 17 Avr 2013 - 7:49

Merci Les gars

C'est tellement clair lorsque l'on a des experts avec de bonnes informations

je vais essayer ça.

Impécable la solution de Kitai est très simple et fonctionne très bien

Merci sourire
Revenir en haut Aller en bas
http://dinomania.chez-alice.fr/index.htm
Contenu sponsorisé





[résolu]Info sur les GUI Empty
MessageSujet: Re: [résolu]Info sur les GUI   [résolu]Info sur les GUI Empty

Revenir en haut Aller en bas
 
[résolu]Info sur les GUI
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [résolu]info Compteur/Timer
» [résolu]Info concernant une action en boucle
» [résolu]Comment importer un dessin papier/une photo dans AGS?resolu
» [résolu]Importation fichiers Speech, [résolu]idle View coupée, résolution bords
» aborder efficacement le template LW_bass

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: