monster.c -proposal v. 1.0

set_name(string);   //for name and aliases
set_short(string);  //for short description
set_long(string);   //for long description
set_level(int);     //monster level (1-100)
set_race(string);   //setting race for monster to inherit some
                    //basic abilities and stats
set_stat(int)       //stats are: str,con,dex,agi,wis,int,pow,cha,stu,siz
set_alignx(int);    //alignment from good to evil
                    //good (1500 - 501), neutral (500 - (-500))
                    //evil (-501 - (-1500))
set_aligny(int);    //alignment from lawful to chaotic
                    //lawful (1500 - 501), neutral (500 - (-500))
                    //chaotic (-501 - (-1500))
set_aggressive(1);  //when set, monster will automatically attack
set_no_stun(1);     //prevents monster from being stunned by player
set_gender(int);    //sets up the gender, 0=neuter, 1=male,	2=female
set_undead(1);      //if set, monster is undead
set_hp(int amount); //the amount of hp's monster has
set_wimpy(int chance, int amount);
            //the chance defines if the monster will wimpy from room
            //when it has hps same or less than int amount
add_chat(int chance,string * emotes);
            //this is used to monster to do an emote or say things
            //when not in combat
add_comchat(int chance,string * emotes);
            //this is used to monster to do an emote or say things
            //when in combat
add_say(string trigger,string message,int substr);
            //this is used to interact with monster. if you say something
            //monster could react. example: you could say 'open door' to
            //a monster and he could then open the door
set_spell(string spell_name,int chance,int who,int when);
            //this is used to set a monster to have a spell. name defines
            //what spell is being used, chance is the percentual chance to
            //cast the spell,who defines where the spell may be targeted
            //and when defines the situation when the spell is cast
set_skill(string skill_name,int chance,int who,int when);
            //sames as spells
add_armour(string filename);
            //this gives the monster an armour
            //monster should automatically wear this
add_weapon(string filename);
            //this gives the monster a weapon
            //monster should automatically wield this
add_object(string filename);
            //this gives the monster an item
            //this is placed in monster's "inventory"
add_money(int amount,string type_of_money);
            //adds the amount of money given of defined type to monster
set_no_money(1);
            //if this is set, monster has no random money
set_invulnerability(int damagetype);
            //this sets monster an invulnerability of the chosen
            //type
add_resistance(int dmgtype, int percent);
            //sets resistance to dmgtype chosen
set_slash_prot(int amount);
            //protection against slash-type dmg (edged wpns)
set_pierce_prot(int amount);
            //protection against pierce-type dmg (pointed wpns)
set_bludgeon_prot(int amount);
            //protection against bludgeon-type dmg (club wpns)
set_general_prot(int amount);
            //general protection against all dmg types
set_limbs   //at the moment i don't know for sure what kind of
            //should be included in limbs (dmg,amount etc. at least)
set_wander_4(int delay);
            //moves randomly n,e,s,w. delay is in seconds
set_wander_8(int delay);
            //moves randomly n,ne,e,se,s,sw,w,nw. delay in seconds
set_wander_6(int delay);
            //moves randomly n,e,s,w,u,d. delay in seconds
set_wander_10(int delay);
            //moves randomly n,ne,e,se,s,sw,w,nw,u,d delay in secs.
set_spec_wander(int delay, array);
            //moves monster between the directions in array
set_route_wander(array,delay,int stop_in_combat);
            //moves monster as route given. in array should be the
            //route the monster walks by (({"south","east",west"...
            //delay defines the time between executing the commands
            //if stop_in_combat is 1 the monster will stop moving
            //while in battle
set_party_call(int *);
            //if monster is attacked it will call others in party or
            //parties '*'. for example, if monster has
            //set_party_call (({1,2,3})) it will ask other monsters
            //from parties 1,2 and 3 to join him
set_party_respond(int *);
            //if monster is called to join a fight by another party
            //of monsters it will join them if the int in party call
            //matches the party respond int. for example, if monster
            //is set_party_respond (({1,2})); and it is called to
            //join a fight by party 1 or 2, it will join the fight
set_defender(1);
            //this makes a monster to defend all other monsters in
            //the same room. also, other monsters will join this
            //monsters in a fight if attacked. 
            //combines set_party -functions
set_random_pick(int chance);
            //chance that monster will try to pick up an object in room

//comments & suggestions welcome
//21.09.1997
<<< Sinister >>>
EOF
