Adventure Games Studio fr
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.


Forum d'entraide à la création de jeux d'aventure
 
PortailAccueilRechercherS'enregistrerConnexion
Le Deal du moment : -40%
-40% sur Logitech Z207 Système de ...
Voir le deal
30 €

 

 fonction afficher/effacer

Aller en bas 
AuteurMessage
hanakin
Cliqueur Amateur
Cliqueur Amateur
hanakin

Nombre de messages : 490

Age : 55

Localisation : Angers

Date d'inscription : 12/09/2012


fonction afficher/effacer Empty
MessageSujet: fonction afficher/effacer   fonction afficher/effacer EmptyDim 5 Oct 2014 - 20:30

petite fonction qui permet d'afficher et d'effacer progressivement un gui ou un objet
se trouve ici

Merci a Kitai pour l'aide (comme d'hab.)

_________________
Ce qui est utile à beaucoup l'emporte sur les désirs du petit nombre. (Spock)
fonction afficher/effacer Sup210
Revenir en haut Aller en bas
http://dinomania.chez-alice.fr/index.htm
Atavismus
Grand Cliqueur Royal
Grand Cliqueur Royal
Atavismus

Nombre de messages : 1857

Localisation : France

Date d'inscription : 27/01/2014


fonction afficher/effacer Empty
MessageSujet: Re: fonction afficher/effacer   fonction afficher/effacer EmptyDim 5 Oct 2014 - 21:44

Merci de partager hanakin.
Ca me rappelle une vieille fonction que j'ai faite il y a des années mais que j'utilise toujours :
Code:

function myFade(String type, int id, int val)
{
  int trans;
  int limit;
  if(val < 0)
  {
    limit = 0;
    if(type=="g")
    {
      gui[id].Transparency = 100;
      gui[id].Visible = true;
    }
    else if(type=="o")
    {
      object[id].Transparency = 100;
      object[id].Visible = true;
    }
    trans = 100;
  }
  else
  {
    limit = 100;
    if(type=="g") gui[id].Transparency = 0;
    else if(type=="o") object[id].Transparency = 0;
    trans = 0;
  }
  
  while (trans != limit)
  {
    trans+=val;
    if(trans < 0) trans = 0;
    if(trans > 100) trans = 100;
    if(type=="g") gui[id].Transparency = trans;
    else if(type=="o") object[id].Transparency = trans;
    Wait(1);
  }
  if(val > 0 && type=="g") gui[id].Visible = false;
  if(val > 0 && type=="o") object[id].Visible = false;
}
type : "o" pour un objet, "g" pour un gui
id : id de cet objet ou de ce gui
val : une valeur négative pour un fade in ou une valeur positive pour un fade out.
Plus la valeur est grande, plus ça fade rapidement (la pause est toujours de 1).


L'approche et l'utilisation sont un peu différentes, mais le résultat est le même.

_________________
fonction afficher/effacer Sw_b10fonction afficher/effacer Db_b10
Revenir en haut Aller en bas
http://store.steampowered.com/app/367110/
hanakin
Cliqueur Amateur
Cliqueur Amateur
hanakin

Nombre de messages : 490

Age : 55

Localisation : Angers

Date d'inscription : 12/09/2012


fonction afficher/effacer Empty
MessageSujet: fonction afficher/effacer   fonction afficher/effacer EmptyDim 5 Oct 2014 - 23:12

Bah la je crois que ta fonction est nettement mieux tu fais tout en une seule fonction il y a bien moins de code , moi qui croyait économiser du code j'ai quand même bien plus de ligne il faudra que j'essaie ça. Merci pour le code

_________________
Ce qui est utile à beaucoup l'emporte sur les désirs du petit nombre. (Spock)
fonction afficher/effacer Sup210
Revenir en haut Aller en bas
http://dinomania.chez-alice.fr/index.htm
Atavismus
Grand Cliqueur Royal
Grand Cliqueur Royal
Atavismus

Nombre de messages : 1857

Localisation : France

Date d'inscription : 27/01/2014


fonction afficher/effacer Empty
MessageSujet: Re: fonction afficher/effacer   fonction afficher/effacer EmptyLun 6 Oct 2014 - 8:06

Je crois que tu devrais essayer de mixer les deux hanakin. clin d'oeil
Avec une boucle while, c'est plus "élégant".
Mais utiliser la référence au gui ou à l'objet, c'est mieux que d'utiliser l'id comme je le fais.
Pour cela, tu peux peut-être passer les deux références (gui et objet) et mettre null pour celle que tu ne veux pas.
Tu vois ce que je veux dire ?
(Cela dit, Kitai a certainement une meilleure solution encore... grand sourire)

_________________
fonction afficher/effacer Sw_b10fonction afficher/effacer Db_b10
Revenir en haut Aller en bas
http://store.steampowered.com/app/367110/
hanakin
Cliqueur Amateur
Cliqueur Amateur
hanakin

Nombre de messages : 490

Age : 55

Localisation : Angers

Date d'inscription : 12/09/2012


fonction afficher/effacer Empty
MessageSujet: Re: fonction afficher/effacer   fonction afficher/effacer EmptyLun 6 Oct 2014 - 15:08

T'as raison c'est plus propre comme ça:
Code:
function afficher_GUI(this GUI*,int X)
{
  this.Visible=true;
  int Trans;
  Trans=100;
  while (Trans!=0) {
    Wait(X);
  this.Transparency=Trans ;
  Trans=Trans-10 ;
}
}

_________________
Ce qui est utile à beaucoup l'emporte sur les désirs du petit nombre. (Spock)
fonction afficher/effacer Sup210


Dernière édition par hanakin le Lun 6 Oct 2014 - 21:21, édité 1 fois
Revenir en haut Aller en bas
http://dinomania.chez-alice.fr/index.htm
Atavismus
Grand Cliqueur Royal
Grand Cliqueur Royal
Atavismus

Nombre de messages : 1857

Localisation : France

Date d'inscription : 27/01/2014


fonction afficher/effacer Empty
MessageSujet: Re: fonction afficher/effacer   fonction afficher/effacer EmptyLun 6 Oct 2014 - 15:30

@hanakin a écrit:
T'as raison c'est plus prope comme ça
clin d'oeil
Un ordinateur, c'est fait pour faire une bonne partie du travail à ta place.
Tout ce qui peut être automatisé (ou presque) doit l'être.
Du coup, si tu vois du code dupliqué ou qui se ressemble, c'est que tu peux optimiser tout ça (après, ce n'est pas une obligation, le tout et la finalité, c'est que ça fonctionne).

En tout cas, tu peux encore pousser le truc par rapport à tes autres fonctions. clin d'oeil

_________________
fonction afficher/effacer Sw_b10fonction afficher/effacer Db_b10
Revenir en haut Aller en bas
http://store.steampowered.com/app/367110/
Contenu sponsorisé




fonction afficher/effacer Empty
MessageSujet: Re: fonction afficher/effacer   fonction afficher/effacer Empty

Revenir en haut Aller en bas
 
fonction afficher/effacer
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Impossible d'afficher la page http://192.168.0.1
» Comment afficher l'horloge dans chessbase 11?
» 8077 ► J'aimerais effacer les douleurs du passé comme on efface la craie.
» De la nécessité d'afficher ses prétentions au Conseil Comtal
» N'effacer pas vos tours

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Adventure Games Studio fr :: CREATION DE JEUX :: Ressources à télécharger-
Sauter vers: