Author Sticky: Post Working Scripts Here
Sarryn Posted: Tuesday, 02 July 01:22AM
There is probably a better way to do this
but its my very first script that worked (albeit most of it came from the module tutorial) tinkering with it and writing it away from the computer and original script taught me a lot.

I hope this went into one of the script window boxes, apologies in advance if I got that wrong.


NWScript:
//::///////////////////////////////////////////////

//:: Name  Item Guardian Attacks PC if Item is taken.

//:: FileName   me_acquireitem.nss

//:: Copyright (c) 2001 Bioware Corp.

//:://////////////////////////////////////////////

/*  If the a PC picks up the item(oItem) that has a guardian

    creature (oElemental) then it adds several actions to the guardian's

    action queue.

    1st. Changes his faction to hostile

    2nd. Makes him say a bit of flavour text/trash talk etc

    3rd. The actual attack command itself

*/

//:://////////////////////////////////////////////

//:: Created By:  D. Stokes (Sarryn) after Jay Watamaniuk's tutorial OnAcquireItem script

//:: Created On:  2nd July, 2002

//:://////////////////////////////////////////////

void main()

{

    // variable declarations

    object oPC; // the PC that acquires the item

    object oItem; // the item that was acquired

    object oElemental; //the guardian elemental

     //find the elemental guardian

    oElemental = GetObjectByTag("ct_summonedwater");

    // get the item that was acquired

    oItem = GetModuleItemAcquired();

    // if this item is a valid object

    if (GetIsObjectValid(oItem) == TRUE)

        {

        // if the valid item's tag is "it_wateramulet"

        if (GetTag(oItem) == "it_wateramulet")

            {

            // get the PC that acquired the item

            oPC = GetItemPossessor(oItem);

            //this set of commands tells the guardian elemental to become hostile then attack the pc

            AssignCommand(oElemental, ChangeToStandardFaction(oElemental, STANDARD_FACTION_HOSTILE));   //Put any commands you want the

            AssignCommand(oElemental, ActionSpeakString("Return the Amulet! Thief!!"));                 //guardian to perform here.

            AssignCommand(oElemental, ActionAttack(oPC));

            } // if

        } // if

}