Déclaration de function

  1. Déclaré une function
  2. Déclaré une function a retour
  3. Déclaré une function avançée

Créé le 29/09/2002
Dernière mise à jour le 27/11/2003

1) Déclaré une function

On peut mettre les functions directement dans une classe ou en début d'état.

Exemple d'une déclaration simple:

function Myfunction()
{
    // Ecrire la fonction ici
}

Exemple d'une déclaration à paramètres:

function Myfunction(bool b, int MyNumber)
{
    // Ecrire la fonction ici
}

Dans cet exemple, la function autodéclare une bool et un nombre entier, mais c'est plus compliqué a faire appel a cette function.

Exemple d'une déclaration à paramètres optionels:

function Myfunction(bool b, optional float MyNumber)
{
    // Ecrire la fonction ici
}

Dans cet autre exemple la seconde option est dite optionelle, on est donc pas obligé d'utilisé cette variable lors de l'appel.
Quand une option est optionnelle les autres éventuelles options aprés celle-ci doivent être également optionnelle.

Top

2) Déclaré une function a retour

Le principe d'une function a retour est quelle renvoi immédiatement une valeur, celle valeur dépend de la déclaration de la function en question.
Si je précise bien immédiatement, c'est parceque là où on déclare une function de ce type, il faut ce dire que ca serra l'équivalent de la variable renvoyé.

Juste aprés function ou event mettre le type de variable a renvoyé.

Exemple avec une function int:

function int CalcPercent(int Number, int Percent)
{
    if(Percent > 99) return Number;
    return (Number * (Percent / 100));
}

Cette function renverra un nombre diminué jusqu'a un poucentage donné.

Expliquatif du code:

Exemple avec une function bool: (pour UT2003)

function bool UseSpeedCombo(Pawn P)
{
    if((P != None)
    && (P.IsA('xPawn'))
    && (xPawn(P).CurrentCombo != None)
    && (xPawn(P).CurrentCombo.IsA('ComboSpeed')))
        return True;

    return False;
}

// ou

function bool UseSpeedCombo(Pawn P)
{
    return ((P != None)
        && (P.IsA('xPawn'))
        && (xPawn(P).CurrentCombo != None)
        && (xPawn(P).CurrentCombo.IsA('ComboSpeed')));
}

Cette function indiquera par True ou par False que le Pawn visé est entreint d'utilisé le combo de vitesse.

Expliquatif du code:

Top

3) Déclaré une function avançée

event: Remplace "function", à mettre aux functions importantes qui sont utiliséent dans les sous-classes.
final: A mettre juste avant "function", déclare cette function comme finalle, elle est donc non modifiable dans les sous-classes.
singular: A mettre juste avant "function", évite a la function de s'appelé elle même.
static: A mettre juste avant "function", une function statique est trés spéciale, cette function pourra être appelé par une classe qui n'a aucune référence avec celle-ci.
Une function statique peux qu'appeler d'autre function statique mais pas de function non-statique, et peut accéder qu'a des variables par défault.

Top