FloatingTextStringOnCreature(), nouveaux paramètres...

Répondre
Partager Rechercher
J'ai constaté ça, alors que je mangeais une crêpe :

D'habitude, avec la fonction FloatingTextStringOnCreature(), on n'a droit qu'au message qui défile et tout ça. Par contre, en écrivant la fonction et en ouvrant la parenthèse (le truc qui fait que l'édition du script se bloque de manière super lourde tout en affichant la fonction avec tous les paramètres, et qui oblige à cliquer quelque part pour s'en libérer), j'ai découvert un détail intéressant. J'ai donc analysé un peu la chose. On peut définir une couleur uniforme ou un dégradé pour le texte. J'ai donc fait une petite fonction pour faciliter la création des couleurs, et l'utilisation donne ça :
Code PHP:

// Convertit trois couleurs RGB en une valeur int.
 // * nRed/nGreen/nBlue sont des valeurs comprises
 //   entre 0 et 255 inclus.
 // * Retournera 0 (noir) si une valeur est incorrecte.
 
int DeclareIntColor(int nRed=0int nGreen=0int nBlue=0);

 
int DeclareIntColor(int nRed=0int nGreen=0int nBlue=0)
 {
     if((
nRed<|| nRed>255) ||
        (
nGreen<|| nGreen>255) ||
        (
nBlue<|| nBlue>255))
         return 
0;

     return ((
nRed*65536)+(nGreen*256)+nBlue);
 } 
Code PHP:

// La fonction ci dessous n'est pas une fonction personnalisée. Je l'ai seulement
 // marquée dans son intégralité, tout en commentant les paramètres en français.

 // Affiche un texte flottant au dessus de la créature désignée.
 // Le texte apparaîtra également dans le journal de combat de chaque joueur
 // pouvant recevoir le texte flottant.
 // - sStringToDisplay : Texte à afficher.
 // - oCreatureToFloatAbove : Créature au dessus de laquelle le texte apparaîtra
 // - bBroadcastToFaction : Si TRUE, seules les créatures appartenant à la même
 //   faction que oCreatureToFloatAbove, et se trouvant à portée (30 mètres),
 //   pourront voir le texte flottant.
 //   Si FALSE, seule oCreatureToFloatAbove verra le texte.
 // - fDuration : Temps en secondes pendant lequel le texte restera visible
 //   à l'écran. 5.0 est la valeur par défaut.
 // - nStartColor : Couleur du texte lors de son apparition.
 //   * Cf. la fonction personnalisée "DeclareIntColor()" pour désigner une couleur
 // - nEndColor : Couleur qu'aura le texte lors de sa disparition.
 //   * Si nEndColor est différent de nStartColor, le texte changera de couleur
 //     progressivement pendant son défilement.
 //   * Cf. la fonction personnalisée "DeclareIntColor()" pour désigner une couleur
 // - fSpeed : Vitesse du défilement du texte.
 //   * 0.5 semble être la vitesse par défaut.
 // - vDirection : Direction vers laquelle le texte défilera en partant du
 //   centre de l'écran.
 //   * la manière dont le texte défile est régit comme pour une zone, c-à-d
 //     vue de dessus. une valeur entre 0.0 et 1.0 pour une coordonnée x/y/z
 //     suffira à déterminer la direction.
 //   * Le texte est ancré au joueur, pas à l'interface. Mais il suit les axes de
 //     la zone. Le texte se déplacera donc en même temps que le personnage.
 //     Mais en faisant un défilement horizontal, on remarque bien que le texte
 //     suit les axes x/y/z de la zone lorsqu'on change l'angle de vue.
 //   * Par exemple, un vecteur de (0.0,0.0,1.0) fera défiler le texte selon
 //     l'axe Z de la zone, tout en suivant oCreatureToFloatAbove.
 
void FloatingTextStringOnCreature(string sStringToDisplayobject oCreatureToFloatAboveint bBroadcastToFactionfloat fDurationint nStartColorint EndColorfloat fSpeedvector vDirection
Citation :
// Si FALSE, seule oCreatureToFloatAbove verra le texte.
Tu as testé ? je pensais que si FALSE, même les créatures hors faction pouvaient voir le texte
J'ai testé les valeurs négatives :
Comme tu dois t'en douter, elles font aller le texte dans le sens inverse.

-1.0 à z fait que le texte part vers le bas..

[Edit] C'est vraiment très sympa tous ces paramètres encore merci d'avoir fait partager ta découverte [/Edit]
Pour la condition N° 3 bBroadcastToFaction tu as raison mettre FALSE empêche tout le monde de voir le texte



En ce qui concerne les valeur du vecteur ([edit]si l'on garde la position Nord/Sud d'origine sur la map [/edit]

1.0, 0.0, 0.0 = OUEST
-1.0, 0.0, 0.0 = EST

0.0, 1.0, 0.0 = NORD
0.0, -1.0, 0.0 = SUD

0.0, 0.0, 1.0 = HAUT
0.0, 0.0, -1.0 = BAS

et d'après ce que j'ai pu voir
0.5, 0.5, 0.5 a le même effet que 1.0,1.0,1.0 (ce qui paraît logique)
__________________
http://img91.imageshack.us/img91/9666/yingyangwm8jt3.gif
http://simaon.free.fr/
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés