Les functions

  1. Appel d'une function
  2. Ecraser une function
  3. Reécrire une function sans l'écraser
  4. Quelques functions de base

Créé le 30/09/2002
Dernière mise à jour le 01/06/2003

1) Appel d'une function

On ne peut appelé une function que si elle est écrite dans la classe ou dans ses classe supérieure.

Exemples: (de 3 functions cité précédament)

MyFunction();
MyFunction(True, 4);
MyFunction(255); /* ou */ MyFunction(255, 33.3);

Exemple pour une function statique:

class'nom-de-la-classe-où-se-trouve-la-function'.static.nom-de-la-function;

Top

2) Ecraser une function

Il suffit de créé une sous-classe, de reécrire la function a écraser de changer le contenu (mais pas les éventuelle options).
Ou d'écrasé cette function dans un autre état.

Note:
Ne fonctionne pas pour les functions finales.

Top

3) Reécrire une function sans l'écraser

On redéclare la function, puis on rappelle la version de la classe supérieure. (ce qui évite de bêtement la reécrire)
Super.NomDeLaFunction(): Rappelle la funtion de la classe supérieure a l'endroit voulu.
Super(NomDeLaClasseSupérieure).NomDeLaFunction(): Rappelle la funtion de la classe encore plus supérieure (en oubliant la classe juste au dessus par exemple) a l'endroit voulu.

Exemple:

function PostBeginPlay()
{
    Super.PostBeginPlay();

    // mon code
}

Top

4) Quelques functions de base

Functions de début dans la partie:

PreBeginPlay(); // fonction appelé juste avant BeginPlay

BeginPlay(); // fonction appelé dés l'ouverture de la map ou dés que c'est spawné

PostBeginPlay(); // fonction appelé juste BeginPlay

PostNetBeginPlay(); // fonction appelé aprés PostBeginPlay() juste aprés l'initialisation des réplications

Function de nombre: (int)

Clamp(int V, int A, int B); // limite V a être au minimum égal a A et au maximum égal a B puis le renvoi

Max(int A, int B); // renvoi le plus grand nombre de A et B

Min(int A, int B); // renvoi le plus petit nombre de A et B

Rand(int Max); // renvoi un nombre au hasard compris entre 0 et Max

Function de nombre floattant: (float)

Abs(float A); // renvoi l'absolu de A, soit converti A d'un nombre négatif en nombre positif

FClamp(float V, float A, float B); // limite V a être au minimum égal a A et au maximum égal a B puis le renvoi

FMax(float A, float B); // renvoi le plus grand nombre de A et B

FMin(float A, float B); // renvoi le plus petit nombre de A et B

FRand(); // renvoi un nombre au hasard compris entre 0.0 et 1.0

RandRange(float Min, float Max); // renvoi un nombre au hasard compris entre Min et Max

Square(float A); // renvoi la racine carré de A (A*A)

Function de rotation: (rotator)

RotRand(optional bool bRoll); // renvoi une rotation au hasard, bRoll permet de calculer aussi un Roll au hasard de cette rotation

Function de vecteur: (vector)

VRand(); // renvoi une vecteur au hasard, par exemple a partir d'une location multiplié le pour obtenir un point au hasard dans un rayon

Function de dégat:

TakeDamage(int Damage, Pawn EventInstigator, vector HitLocation, vector Momentum, name DamageType); // quand l'acteur qui la déclare prend des dégats (nécéssite une collision bCollideActors)

Function de son:

PlaySound(sound Sound, optional ESoundSlot Slot, optional float Volume, optional bool bNoOverride, optional float Radius, optional float Pitch); // éxécute un son

Functions de temps:

SetTimer(float NewTimerRate, bool bLoop); // indique le delay de la function Timer, indique si ce delay tourne en boucle

Timer(); // fonction qui peut se répété (voir SetTimer)

Tick(float DeltaTime); // fonction qui se répéte aussi rapidement que la machine le peu sous un temps équivalent en seconde, DeltaTime permet d'accéder a cette vitesse

Functions de contact:

Touch(Actor Other); // fonction appelé lorsqu'on touche l'acteur qui la déclare

UnTouch(Actor Other); // fonction appelé lorsqu'on ne touche plus l'acteur qui la déclare

Function d'évenement:

Trigger(Actor Other, Pawn Instigator); // fonction appelé lorsqu'on actionne son Trigger (le Tag de cet acteur doit être égal à l'Event du Trigger)

UnTrigger(Actor Other, Pawn Instigator); // fonction appelé lorsqu'on a fini d'actionné son Trigger

TriggerEvent(name EventName, Actor Other, Pawn EventInstigator); // Déclenché un évènement

Autres functions:

Destroy(); // détruit l'acteur qui la déclarre (SI bNoDelete = FAUX), retourne FALSE si l'acteur ne peut pas être détruit.

SetLocation(vector newLocation); // donne une nouvelle location a l'acteur qui la déclare

SetRotation(rotator newRotation); // donne une nouvelle rotation a l'acteur qui la déclare

Spawn(class<actor> SpawnClass, optional actor SpawnOwner, optional name SpawnTag, optional vector SpawnLocation, optional rotator SpawnRotation) // fait apparaître un acteur

Note:
Reportez-vous au tutorial Déclaration de variable pour connaîttre a quoi correspondent les options et savoir par quelle valeur les remplacez lors de l'appel.

Top