Scriptmöglichkeiten

Scriptbeispiele

Jetzt muss ich mich aber wieder meinen eigentlichen Aufgaben zuwenden und das solltet ihr wohl besser auch tun.
Ihr wollt noch ein paar Beispiele? Irgendwann solltet ihr euch mal Gedanken machen, mit wem ihr redet und wie weit ihr euer Glück herausfordert. Für Beispiele habe ich derzeit wirklich keine Zeit. Nehmt diese Schriftrollen, sie sollten Scripte enthalten und nun geht.

Das folgende Script führt eine Fähigkeitenprüfung durch. Es geht davon aus, dass der Spieler auf ein Objekt klickt (einen Schalter oder etwas in der Art). Diesem haftet gewissermaßen ein Schwierigkeitsgrad von 18 an. Der Spieler muss diesen durch einen Wurf mit einem 20seitigen Würfel und seinem Geschicklichkeitswert erreichen. Gelingt es ihm, so wird er in ein neues Gebiet teleportiert. Misslingt ihm der Versuch hingegen, so erleidet er beträchtlichen Schaden:


void main()
{
    object oPlayer = GetClickingObject();
    int nDexMod = GetAbilityModifier(ABILITY_DEXTERITY, oPlayer);
    int nRoll = d20();
    if ( (nRoll+nDexMod) > 17)
    {
        object oWaypoint = GetWaypointByTag("waypoint001");
        AssignCommand(oPlayer, ActionJumpToObject(oWaypoint));
    }
    else
    {
        ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDamage(5000), oPlayer);
    }
}


Dieses Script durchforstet das Inventar eines oder mehrerer SCs. Betritt ein SC Morgrins Gruft ohne den gesuchten Gegenstand, so geschieht nichts. Hat er hingegen den Silberreif bei sich, so holt das Script die Position des Spielers ein und erschafft vor ihm eine zuvor im Werkzeugset erschaffene Kreatur namens Morgrin, die zu ihm sagt: "Das Ritual ist abgeschlossen!".

void main()
{
    object oPc;
    object oItem;
    object oMorgrin;
    oPc=GetEnteringObject();
    oItem=GetItemPossessedBy(oPc,"Silberreif");
    if(GetIsObjectValid(oItem) == TRUE)
    {
        location lPlayerlocation;
        lPlayerlocation=GetLocation(oPc);
        oMorgrin=CreateObject(OBJECT_TYPE_CREATURE, "Morgrin",lPlayerlocation);
        AssignCommand(oMorgrin, SpeakString(
        "Das Ritual ist abgeschlossen!"));
    }
} 


Das folgende Script ist lediglich etwas für's Auge. Es teleportiert einen Räuber zu einem Punkt, der mit W1 markiert ist. Um das Ganze jedoch etwas eindrucksvoller darzustellen, erscheint im selben Augenblick der grafische Effekt eines Feuerballes.

void main() 
{ 
    location lLoc=GetLocation(GetWaypointByTag("W1")); 
    ApplyEffectAtLocation(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_FNF_FIREBALL),lLoc); 
    CreateObject(OBJECT_TYPE_CREATURE,"NW_BANDIT005",lLoc); 
}


Indandiriel
Meisterin des Südturms

Erstellt von Pandur | am 18.07.2007