Re: [CODE] Object Affections

From: Roger Smith (sexycoder@HOTMAIL.COM)
Date: 09/19/98


Now that I have the bitvector part saving, I am having a difficult time
trying to get the object affects to "take affect."  I want it so that
when the player wears a piece of equipment that has a permanent affect
on it, the player will have that affection for an unlimited amount of
time until the eq is removed.

I want it to give the player a message (like "You begin to move
faster.") when they put on the eq, but I don't know how exactly to do
that.  Do I make it do some sort of spellcast or is there a better way?
Thank you.

>Here's how I would change it for 128-bit:
>
>  case 'C':
>    get_line(obj_f, line);
>    if ((retval = sscanf(line, " %d %d %d %d", t, t + 1, t + 2, t + 3))
>!= 4) {
>      log("SYSERR: Format error in 'C' field, %s\n"
>          "...expecting 4 arguments, got %d\n"
>          "...offending line: '%s'", buf2, retval, line);
>      exit(1);
>    }
>    obj_proto[i].obj_flags.bitvector[0] =
>obj_proto[i].obj_flags.bitvector[0] | t[0];
>    obj_proto[i].obj_flags.bitvector[1] =
>obj_proto[i].obj_flags.bitvector[1] | t[1];
>    obj_proto[i].obj_flags.bitvector[2] =
>obj_proto[i].obj_flags.bitvector[2] | t[2];
>    obj_proto[i].obj_flags.bitvector[3] =
>obj_proto[i].obj_flags.bitvector[3] | t[3];
>    break;
>
>So, in your object files, you'd have
>
>    #1000
>    .
>    .
>    .
>    C
>    2 0 0 0
>
>to add the whatever affection you have defined as 2 to object 1000.


______________________________________________________
Get Your Private, Free Email at http://www.hotmail.com


     +------------------------------------------------------------+
     | 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