LlSetPayPrice/fr

From Second Life Wiki

Jump to: navigation, search
Image:Emblem-important-red.png Avertissement : sécurité

Controlez toujours (TOUJOURS!) le montant payé dans votre évènement money(). Cette fonction a eu quelques bugs par le passé qui avaient alors été exploités. Ne considérez pas cette méthode comme le seul moyen de limiter les montants réglés. Ne partez Jamais du principe que le client est sécurisé.

Fonction: llSetPayPrice( integer prix, list boutons_paiement );

Configure l’interface de paiement lorsque quelqu’un souhaite payer un objet (montant par défaut de la zone libre et valeurs des 4 boutons).

• integer prix code PAY_* ou des valeurs positives
• list boutons_paiement quatre codes PAY_* et/ou des integers positifs


Cette fonction est sans effet si elle est appellée d’un état qui ne gère pas l’évènement money.

Constantes Alt Descriptions
PAY_HIDE -1
0
Cache le bouton ou la zone libre.
PAY_DEFAULT -2 Utilise la valeur par défaut.
Ordre des boutons
1
2
3
4
Valeurs par défauts
$1 $5
$10 $20

Inconvénients

  • Cette fonction ne doit pas être considérée comme un moyen de limiter les montants payables à un objet.

Exemples

Cet exemple renverra une fenêtre sans zone libre et avec un seul bouton de 150$L.

llSetPayPrice(PAY_HIDE, [150,PAY_HIDE,PAY_HIDE,PAY_HIDE])

integer price = 10;
 
default
{
    state_entry()
    {
        llSetPayPrice(PAY_HIDE, [PAY_HIDE ,PAY_HIDE, PAY_HIDE, PAY_HIDE]);
        llRequestPermissions(llGetOwner(), PERMISSION_DEBIT);
    }
    run_time_permissions(integer perm)
    {
        if(perm & PERMISSION_DEBIT)
            state cash;
    }
}
 
state cash
{
    state_entry()
    {
        llSetPayPrice(price, [price ,PAY_HIDE, PAY_HIDE, PAY_HIDE]);
    }
    money(key id, integer amount)
    {
        if(amount != price)
        {
            llGiveMoney(id, amount);
            llInstantMessage(id, "Vous avez payé "+(string)amount+", hors le bon prix est : "+(string)price);
        }
        else
        {
            //insérer le code pour donner un objet ici
            llInstantMessage(id, "Vous avez payé le bon prix");
        }
    }
}

Voir également

Evènement

•  money Evènement déclenché lorsque de l’argent est donné à un objet

Fonctions

•  llGiveMoney Donne de l’argent à un avatar

Historique

Bugs

• Bug VWR-3048[c] llSetPayPrice ne fonctionne pas sur les prims filles.- Marcoh Larsen
Personal tools