Re: [DG SCRIPTS] [OBJECTS] Adding a new command

From: Phillip A. Ames (kirk47@JUNO.COM)
Date: 10/10/98


Ok, this is how the command looks...

OCMD(do_oset)
{
    char arg1[MAX_INPUT_LENGTH], arg2[MAX_INPUT_LENGTH];
    obj_data *object;
    int value = 0;
        int     new_value = 0;
        two_arguments(argument, arg1, arg2);
    value = atoi(arg1);
        new_value = atoi(arg2);

        if (!arg1 || !arg2 || !is_number(arg1) || !is_number(arg2))
    {
        obj_log(obj, "oset: bad syntax");
        return;
    }
        GET_OBJ_VAL(object, value) = new_value;
}

Here's the entry in the command tree:
    { "oset"       , do_oset     , 0 },

And the trigger looks like this:
Trigger Intended Assignment: Objects
Trigger Type: Get , Numeric Arg: 100, Arg list: None
Commands:
   oecho %actor.name% The value 0 is now 1
   oset 0 1
   wait 120
   oecho %actor.name% The value 0 is now 0
   oset 0 0

Here's what happens in the game:

32000H/32000H 100M/100M 100V/100V > get test
Gowron The value 0 is now 1
You get a test object.

32000H/32000H 100M/100M 100V/100V > stat test
Name: 'a standard issue communicator', Aliases: a test object
VNum: [  115], RNum: [   25], Type: OTHER, SpecProc: None
L-Des: A test object is here
Can be worn on: TAKE COMM
Set char bits : NOBITS
Extra flags   : !SELL
Weight: 1, Value: 100, Cost/day: 100, Timer: 0
In room: Nowhere, In object: None, Carried by: Gowron, Worn by: Nobody
Values 0-3: [0] [0] [0] [0]
Affections: None
Script information:
Global Variables: None
Global context: 0

  Trigger: Osetval test, VNum: [   20], RNum: [   18]
  Trigger Intended Assignment: Objects
  Trigger Type: Get , Numeric Arg: 100, Arg list: None
    Wait: 83, Current line: oecho %actor.name% The value 0 is now 0
  Variables:
              actor:  Gowron

32000H/32000H 100M/100M 100V/100V >
Gowron The value 0 is now 0

32000H/32000H 100M/100M 100V/100V > stat test
Name: 'a standard issue communicator', Aliases: a test object
VNum: [  115], RNum: [   25], Type: OTHER, SpecProc: None
L-Des: A test object is here
Can be worn on: TAKE COMM
Set char bits : NOBITS
Extra flags   : !SELL
Weight: 1, Value: 100, Cost/day: 100, Timer: 0
In room: Nowhere, In object: None, Carried by: Gowron, Worn by: Nobody
Values 0-3: [0] [0] [0] [0]
Affections: None
Script information:
Global Variables: None
Global context: 0

  Trigger: Osetval test, VNum: [   20], RNum: [   18]
  Trigger Intended Assignment: Objects
  Trigger Type: Get , Numeric Arg: 100, Arg list: None


Nothing changes in the 2 stats, and if I drop the object, and take it
again, this error pops up:

32000H/32000H 100M/100M 100V/100V > drop test
You drop a test object.

32000H/32000H 100M/100M 100V/100V > get test
Gowron The value 0 is now 1
[ SCRIPT ERR: Obj (a test object, VNum 115): Unknown object cmd: 'oset '
]
You get a test object.

32000H/32000H 100M/100M 100V/100V >
Gowron The value 0 is now 0

Can anyone see what might be going on here?  Thanks, cos I'm really
clueless.

-Phillip

Phillip Ames    | Satisfaction is not guaranteed.
kirk47@juno.com | -Ferengi Rule of Acquisition #19
ICQ: 8778335    | AOL IM: Grathol
http://members.xoom.com/Gowron/index.html(Unfinished)

___________________________________________________________________
You don't need to buy Internet access to use free Internet e-mail.
Get completely free e-mail from Juno at http://www.juno.com
or call Juno at (800) 654-JUNO [654-5866]


     +------------------------------------------------------------+
     | Ensure that you have read the CircleMUD Mailing List FAQ:  |
     | http://democracy.queensu.ca/~fletcher/Circle/list-faq.html |
     +------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 12/15/00 PST