#ifndef _PARSE_WILEY_H #define _PARSE_WILEY_H /* * Here are the definitions needed to handle the zone file. */ #define ZONE_RESET_NEVER 0 #define ZONE_RESET_PC 1 #define ZONE_RESET_ALWAYS 2 #define ZONE_CMD_MOBILE 'M' #define ZONE_MOBILE 0 #define ZONE_MAX 1 #define ZONE_ROOM 2 #define ZONE_CMD_OBJECT 'O' #define ZONE_OBJECT 0 #define ZONE_CMD_EQUIP 'E' #define ZONE_POSITION 2 #define ZONE_CMD_PUT 'P' #define ZONE_TARGET_OBJ 2 #define ZONE_CMD_DOOR 'D' #define ZONE_DOOR_ROOM 0 #define ZONE_DOOR_EXIT 1 #define ZONE_DOOR_STATE 2 #define ZONE_CMD_GIVE 'G' #define ZONE_CMD_REMOVE 'R' #define ZONE_REMOVE_ROOM 0 #define ZONE_REMOVE_OBJ 1 #define ZONE_CMD_LEAD 'L' #define ZONE_GROUP 1 #define ZONE_CMD_HATE 'H' #define ZONE_HATE_TYPE 0 #define ZONE_HATE_VALUE 1 #define ZONE_CMD_END 'S' /* * This is for the main world file. */ #define EXIT_OPEN 0 #define EXIT_DOOR 1 #define EXIT_NOPICK 2 #define EXIT_SECRET 3 #define EXIT_SECRET_NOPICK 4 #define EXIT_ALIAS_MAGIC 4 #define EXIT_OPEN_ALIAS 5 /* contradiction? the docs say add 4... */ #define EXIT_DOOR_ALIAS 6 #define EXIT_NOPICK_ALIAS 7 #define EXIT_SECRET_ALIAS 8 #define EXIT_SECRET_NOPICK_ALIAS 9 #define EXIT_INVALID -1 /* exit was corrupted somehow */ #define EXIT_NORTH 0 #define EXIT_EAST 1 #define EXIT_SOUTH 2 #define EXIT_WEST 3 #define EXIT_UP 4 #define EXIT_DOWN 5 #define EXIT_OK 0 #define EXIT_NON_EUCLIDEAN 1 #define EXIT_ONE_WAY 2 #define EXIT_DESCRIPTION_ONLY 3 #define EXIT_NO_TARGET 4 #define EXIT_UNKNOWN 5 #define ROOM_DARK 0x00000001 #define ROOM_DEATH 0x00000002 #define ROOM_NOMOB 0x00000004 #define ROOM_INDOORS 0x00000008 #define ROOM_NOATTACK 0x00000010 #define ROOM_NOSTEAL 0x00000020 #define ROOM_NOSUMMON 0x00000040 #define ROOM_NOMAGIC 0x00000080 #define ROOM_UNUSED 0x00000100 #define ROOM_PRIVATE 0x00000200 #define ROOM_SOUND 0x00000400 #define SECT_TELEPORT -1 #define SECT_INDOORS 0 #define SECT_CITY 1 #define SECT_FIELD 2 #define SECT_FOREST 3 #define SECT_HILLS 4 #define SECT_MOUNTAIN 5 #define SECT_WATER_SWIM 6 #define SECT_WATER_NOSWIM 7 #define SECT_AIR 8 #define SECT_UNDERWATER 9 #ifndef _PARSE_WILEY_C extern const int SectorCosts[]; extern const int RevDir[]; #endif /* * And these are the shopkeeper definitions. */ #define SHOP_SELLCOUNT 5 #define SHOP_TRADECOUNT 5 #define SHOP_MESSAGECOUNT 7 #define WEAR_LIGHT 0 #define WEAR_FINGER_R 1 #define WEAR_FINGER_L 2 #define WEAR_NECK_1 3 #define WEAR_NECK_2 4 #define WEAR_BODY 5 #define WEAR_HEAD 6 #define WEAR_LEGS 7 #define WEAR_FEET 8 #define WEAR_HANDS 9 #define WEAR_ARMS 10 #define WEAR_SHIELD 11 #define WEAR_ABOUT 12 #define WEAR_WAIST 13 #define WEAR_WRIST_R 14 #define WEAR_WRIST_L 15 #define WIELD 16 #define HOLD 17 #define TWOH 18 #define DOOR_OPEN 0 #define DOOR_CLOSED 1 #define DOOR_LOCKED 2 #define SEX_NEUTER 0 #define SEX_MALE 1 #define SEX_FEMALE 2 #define RACE_HALFBREED 0 #define RACE_HUMAN 1 #define RACE_ELVEN 2 #define RACE_DWARF 3 #define RACE_HALFLING 4 #define RACE_GNOME 5 #define RACE_REPTILE 6 #define RACE_SPECIAL 7 #define RACE_LYCANTH 8 #define RACE_DRAGON 9 #define RACE_UNDEAD 10 #define RACE_ORC 11 #define RACE_INSECT 12 #define RACE_ARACHNID 13 #define RACE_DINOSAUR 14 #define RACE_FISH 15 #define RACE_BIRD 16 #define RACE_GIANT 17 #define RACE_PREDATOR 18 #define RACE_PARASITE 19 #define RACE_SLIME 20 #define RACE_DEMON 21 #define RACE_SNAKE 22 #define RACE_HERBIV 23 #define RACE_TREE 24 #define RACE_VEGGIE 25 #define RACE_ELEMENT 26 #define RACE_PLANAR 27 #define RACE_DEVIL 28 #define RACE_GHOST 29 #define RACE_GOBLIN 30 #define RACE_TROLL 31 #define RACE_VEGMAN 32 #define RACE_MFLAYER 33 #define RACE_PRIMATE 34 #define RACE_ANIMAL 35 #define RACE_FAERY 36 #define RACE_PLANT 37 #define PULSE_PER_SECOND 4 /* #define PULSE_UPDATE (75 * 5) */ #define PULSE_UPDATE (70 * PULSE_PER_SECOND) #define PULSE_VARIABLE (30 * PULSE_PER_SECOND) #define PULSE_VIOLENCE 6 /* combat rounds */ #define PULSE_RIVER 10 /* These two must be 10 to make the timings */ #define PULSE_TELEPORT 10 /* in the world files come out right. */ #define PULSE_NATURE 19 /* This is checks for falling/drowning */ #define PULSE_MOBILE 25 /* mob movement/specials/etc */ #define PULSE_SOUND 33 /* room sounds */ #define PULSE_ZONE 239 /* zone updates */ #define PULSE_REBOOT 599 /* reboot checking */ #define PULSE_SHOUT 1203 /* replacement for the astral traveller */ #define PULSE_DUMP 3601 /* dump player list */ #define PULSE_MAX 999999 #define WAIT_SEC 4 #define WAIT_ROUND 4 #define ALIGN_REALLY_VILE -1000 #define ALIGN_VILE -900 #define ALIGN_VERY_EVIL -700 #define ALIGN_EVIL -350 #define ALIGN_WICKED -100 #define ALIGN_NEUTRAL 0 #define ALIGN_NICE 100 #define ALIGN_GOOD 350 #define ALIGN_VERY_GOOD 700 #define ALIGN_HOLY 900 #define ALIGN_REALLY_HOLY 1000 #define FIRE_DAMAGE 1 #define COLD_DAMAGE 2 #define ELEC_DAMAGE 3 #define BLOW_DAMAGE 4 #define ACID_DAMAGE 5 #define MAGE_LEVEL_IND 0 #define CLERIC_LEVEL_IND 1 #define WARRIOR_LEVEL_IND 2 #define THIEF_LEVEL_IND 3 #define RANGER_LEVEL_IND 4 #define DRUID_LEVEL_IND 5 #define CLASS_MAGE 1 #define CLASS_CLERIC 2 #define CLASS_WARRIOR 4 #define CLASS_THIEF 8 #define CLASS_RANGER 16 #define CLASS_DRUID 32 #define MAX_CLASS 5 /* 'class' for PC's */ #define CLASS_MAGIC_USER 1 #define CLASS_CLERIC 2 #define CLASS_WARRIOR 4 #define CLASS_THIEF 8 #define CLASS_RANGER 16 #define CLASS_DRUID 32 #define CLASS_ALL ( CLASS_MAGIC_USER | CLASS_CLERIC | CLASS_WARRIOR | CLASS_THIEF | CLASS_RANGER | CLASS_DRUID ) #define CLASS_WIZARD ( CLASS_MAGIC_USER | CLASS_RANGER ) #define CLASS_PRIEST ( CLASS_CLERIC | CLASS_DRUID | CLASS_RANGER ) #define CLASS_MAGICAL ( CLASS_MAGIC_USER | CLASS_CLERIC | CLASS_RANGER | CLASS_DRUID ) #define CLASS_FIGHTER ( CLASS_WARRIOR | CLASS_RANGER ) #define CLASS_SNEAK ( CLASS_THIEF | CLASS_RANGER ) #define HATE_SEX 1 #define HATE_RACE 2 #define HATE_CHAR 4 #define HATE_CLASS 8 #define HATE_EVIL 16 #define HATE_GOOD 32 #define HATE_VNUM 64 #define HATE_RICH 128 #define FEAR_SEX 1 #define FEAR_RACE 2 #define FEAR_CHAR 4 #define FEAR_CLASS 8 #define FEAR_EVIL 16 #define FEAR_GOOD 32 #define FEAR_VNUM 64 #define FEAR_RICH 128 #define IMM_FIRE 1 #define IMM_COLD 2 #define IMM_ELEC 4 #define IMM_ENERGY 8 #define IMM_BLUNT 16 #define IMM_PIERCE 32 #define IMM_SLASH 64 #define IMM_ACID 128 #define IMM_POISON 256 #define IMM_DRAIN 512 #define IMM_SLEEP 1024 #define IMM_CHARM 2048 #define IMM_HOLD 4096 #define IMM_NONMAG 8192 #define IMM_PLUS1 16384 #define IMM_PLUS2 32768 #define IMM_PLUS3 65536 #define IMM_PLUS4 131072 #define MAX_IMM 18 /* Here are the object flags */ /* For 'type_flag' */ #define ITEM_LIGHT 1 #define ITEM_SCROLL 2 #define ITEM_WAND 3 #define ITEM_STAFF 4 #define ITEM_WEAPON 5 /* These are not correct, flipped for sanity */ #define ITEM_FIREWEAPON 6 #define ITEM_MISSILE 7 /* These are not correct, flipped for sanity */ #define ITEM_TREASURE 8 #define ITEM_ARMOR 9 #define ITEM_POTION 10 #define ITEM_WORN 11 #define ITEM_OTHER 12 #define ITEM_TRASH 13 #define ITEM_TRAP 14 #define ITEM_CONTAINER 15 #define ITEM_NOTE 16 #define ITEM_DRINKCON 17 #define ITEM_KEY 18 #define ITEM_FOOD 19 #define ITEM_MONEY 20 #define ITEM_PEN 21 #define ITEM_BOAT 22 #define ITEM_AUDIO 23 #define ITEM_BOARD 24 #define ITEM_KENNEL 25 /* Bitvector For 'wear_flags' */ #define ITEM_TAKE 1 #define ITEM_WEAR_FINGER 2 #define ITEM_WEAR_NECK 4 #define ITEM_WEAR_BODY 8 #define ITEM_WEAR_HEAD 16 #define ITEM_WEAR_LEGS 32 #define ITEM_WEAR_FEET 64 #define ITEM_WEAR_HANDS 128 #define ITEM_WEAR_ARMS 256 #define ITEM_WEAR_SHIELD 512 #define ITEM_WEAR_ABOUT 1024 #define ITEM_WEAR_WAISTE 2048 #define ITEM_WEAR_WRIST 4096 #define ITEM_WIELD 8192 #define ITEM_HOLD 16384 #define ITEM_WIELD_TWOH 32768 #define MAX_WEAR 16 /* UNUSED, CHECKS ONLY FOR ITEM_LIGHT #define ITEM_LIGHT_SOURCE 65536 */ /* Bitvector for 'extra_flags' */ #define ITEM_GLOW 1 #define ITEM_HUM 2 #define ITEM_METAL 4 /* undefined... */ #define ITEM_MINERAL 8 /* undefined? */ #define ITEM_ORGANIC 16 /* undefined? */ #define ITEM_INVISIBLE 32 #define ITEM_MAGIC 64 #define ITEM_NODROP 128 #define ITEM_BLESS 256 #define ITEM_ANTI_GOOD 512 /* not usable by good people */ #define ITEM_ANTI_EVIL 1024 /* not usable by evil people */ #define ITEM_ANTI_NEUTRAL 2048 /* not usable by neutral people */ #define ITEM_ANTI_CLERIC 4096 #define ITEM_ANTI_MAGE 8192 #define ITEM_ANTI_THIEF 16384 #define ITEM_ANTI_FIGHTER 32768 #define ITEM_ANTI_RANGER 65536 #define ITEM_PARISH 131072 #define MAX_ITEM_FLAGS 18 /* Some different kind of liquids */ #define LIQ_WATER 0 #define LIQ_BEER 1 #define LIQ_WINE 2 #define LIQ_ALE 3 #define LIQ_DARKALE 4 #define LIQ_WHISKY 5 #define LIQ_LEMONADE 6 #define LIQ_FIREBRT 7 #define LIQ_LOCALSPC 8 #define LIQ_SLIME 9 #define LIQ_MILK 10 #define LIQ_TEA 11 #define LIQ_COFFE 12 #define LIQ_BLOOD 13 #define LIQ_SALTWATER 14 #define LIQ_COKE 15 /* for containers - value[1] */ #define CONT_CLOSEABLE 1 #define CONT_PICKPROOF 2 #define CONT_CLOSED 4 #define CONT_LOCKED 8 #define MAX_CONT_CLOSE 4 /* Bitvector for 'affected_by' */ #define AFF_BLIND 0x00000001 #define AFF_INVISIBLE 0x00000002 #define AFF_DETECT_EVIL 0x00000004 #define AFF_DETECT_INVISIBLE 0x00000008 #define AFF_DETECT_MAGIC 0x00000010 #define AFF_SENSE_LIFE 0x00000020 #define AFF_SILENCED 0x00000040 /* this may have to go */ #define AFF_SANCTUARY 0x00000080 #define AFF_GROUP 0x00000100 /* there is one missing here....... */ #define AFF_CURSE 0x00000400 #define AFF_FLYING 0x00000800 #define AFF_POISON 0x00001000 #define AFF_PROTECT_EVIL 0x00002000 #define AFF_PARALYSIS 0x00004000 #define AFF_INFRAVISION 0x00008000 #define AFF_WATERBREATH 0x00010000 #define AFF_SLEEP 0x00020000 #define AFF_DRUG_FREE 0x00040000 /* i.e. can't be stoned */ #define AFF_SNEAK 0x00080000 #define AFF_HIDE 0x00100000 #define AFF_FEAR 0x00200000 /* this may have to go */ #define AFF_CHARM 0x00400000 #define AFF_FOLLOW 0x00800000 #define AFF_UNDEF_1 0x01000000 /* saved objects?? */ #define AFF_TRUE_SIGHT 0x02000000 #define AFF_SCRYING 0x04000000 /* seeing other rooms */ #define AFF_FIRESHIELD 0x08000000 #define AFF_RIDE 0x10000000 #define AFF_UNDEF_6 0x20000000 #define AFF_UNDEF_7 0x40000000 #define AFF_UNDEF_8 0x80000000 #define MAX_AFFECTED_BY 32 /* modifiers to char's abilities */ #define APPLY_NONE 0 #define APPLY_STR 1 #define APPLY_DEX 2 #define APPLY_INT 3 #define APPLY_WIS 4 #define APPLY_CON 5 #define APPLY_SEX 6 #define APPLY_CLASS 7 #define APPLY_LEVEL 8 #define APPLY_AGE 9 #define APPLY_CHAR_WEIGHT 10 #define APPLY_CHAR_HEIGHT 11 #define APPLY_MANA 12 #define APPLY_HIT 13 #define APPLY_MOVE 14 #define APPLY_GOLD 15 #define APPLY_EXP 16 #define APPLY_AC 17 #define APPLY_ARMOR 17 #define APPLY_HITROLL 18 #define APPLY_DAMROLL 19 #define APPLY_SAVING_PARA 20 #define APPLY_SAVING_ROD 21 #define APPLY_SAVING_PETRI 22 #define APPLY_SAVING_BREATH 23 #define APPLY_SAVING_SPELL 24 #define APPLY_SAVE_ALL 25 #define APPLY_IMMUNE 26 #define APPLY_SUSC 27 #define APPLY_M_IMMUNE 28 #define APPLY_SPELL 29 #define APPLY_WEAPON_SPELL 30 #define APPLY_EAT_SPELL 31 #define APPLY_BACKSTAB 32 #define APPLY_KICK 33 #define APPLY_SNEAK 34 #define APPLY_HIDE 35 #define APPLY_BASH 36 #define APPLY_PICK 37 #define APPLY_STEAL 38 #define APPLY_TRACK 39 #define APPLY_HITNDAM 40 /* positions */ #define POSITION_DEAD 0 #define POSITION_MORTALLYW 1 #define POSITION_INCAP 2 #define POSITION_STUNNED 3 #define POSITION_SLEEPING 4 #define POSITION_RESTING 5 #define POSITION_SITTING 6 #define POSITION_FIGHTING 7 #define POSITION_STANDING 8 #define POSITION_MOUNTED 9 /* for mobile actions: specials.act */ #define ACT_SPEC (1<<0) /* special routine to be called if exist */ #define ACT_SENTINEL (1<<1) /* this mobile not to be moved */ #define ACT_SCAVENGER (1<<2) /* pick up stuff lying around */ #define ACT_ISNPC (1<<3) /* This bit is set for use with IS_NPC() */ #define ACT_NICE_THIEF (1<<4) /* Set if a thief should NOT be killed */ #define ACT_AGGRESSIVE (1<<5) /* Set if automatic attack on NPC's */ #define ACT_STAY_ZONE (1<<6) /* MOB Must stay inside its own zone */ #define ACT_WIMPY (1<<7) /* MOB Will flee when injured, and if */ /* * aggressive only attack sleeping players */ #define ACT_ANNOYING (1<<8) /* MOB is so utterly irritating that other */ /* * monsters will attack it... */ #define ACT_HATEFUL (1<<9) /* MOB will attack a PC or NPC matching a */ /* * specified name */ #define ACT_AFRAID (1<<10) /* MOB is afraid of a certain PC or NPC, */ /* * and will always run away .... */ #define ACT_IMMORTAL (1<<11) /* MOB is a natural event, can't be kiled */ #define ACT_HUNTING (1<<12) /* MOB is hunting someone */ #define ACT_DEADLY (1<<13) /* MOB has deadly poison */ #define ACT_POLYSELF (1<<14) /* MOB is a polymorphed person */ #define ACT_POLYOTHER (1<<15) /* MOB is a polymorphed person */ #define ACT_GUARDIAN (1<<16) /* MOB will guard master */ #define ACT_USE_ITEM (1<<17) /* Will use an item when picked up */ #define ACT_FIGHTER_MOVES (1<<18) /* mob will attack like a fighter */ #define ACT_FOOD_PROVIDE (1<<19) #define ACT_PROTECTOR (1<<20) /* mob will come to aid those that call */ /* * this is inter zonal only */ #define ACT_MOUNT (1<<21) /* mobile can act as a mount */ #define ACT_SWITCH (1<<22) /* we are a wizard switch to a mob */ #define MAX_ACT 23 /**/ #define SPELL_RESERVED_DBC 0 /* SKILL NUMBER ZERO */ #define SPELL_ARMOR 1 #define SPELL_TELEPORT 2 #define SPELL_BLESS 3 #define SPELL_BLINDNESS 4 #define SPELL_BURNING_HANDS 5 #define SPELL_CALL_LIGHTNING 6 #define SPELL_CHARM_PERSON 7 #define SPELL_CHILL_TOUCH 8 #define SPELL_CLONE 9 #define SPELL_COLOUR_SPRAY 10 #define SPELL_CONTROL_WEATHER 11 #define SPELL_CREATE_FOOD 12 #define SPELL_CREATE_WATER 13 #define SPELL_CURE_BLIND 14 #define SPELL_CURE_CRITIC 15 #define SPELL_CURE_LIGHT 16 #define SPELL_CURSE 17 #define SPELL_DETECT_EVIL 18 #define SPELL_DETECT_INVISIBLE 19 #define SPELL_DETECT_MAGIC 20 #define SPELL_DETECT_POISON 21 #define SPELL_DISPEL_EVIL 22 #define SPELL_EARTHQUAKE 23 #define SPELL_ENCHANT_WEAPON 24 #define SPELL_ENERGY_DRAIN 25 #define SPELL_FIREBALL 26 #define SPELL_HARM 27 #define SPELL_HEAL 28 #define SPELL_INVISIBLE 29 #define SPELL_LIGHTNING_BOLT 30 #define SPELL_LOCATE_OBJECT 31 #define SPELL_MAGIC_MISSILE 32 #define SPELL_POISON 33 #define SPELL_PROTECT_FROM_EVIL 34 #define SPELL_REMOVE_CURSE 35 #define SPELL_SANCTUARY 36 #define SPELL_SHOCKING_GRASP 37 #define SPELL_SLEEP 38 #define SPELL_STRENGTH 39 #define SPELL_SUMMON 40 #define SPELL_VENTRILOQUATE 41 #define SPELL_WORD_OF_RECALL 42 #define SPELL_REMOVE_POISON 43 #define SPELL_SENSE_LIFE 44 /* Skills 45 - 52 already in use! */ /* Skills 45 - 52 already in use! */ /* Skills 45 - 52 already in use! */ /* Skills 45 - 52 already in use! */ /* Skills 45 - 52 already in use! */ /* Skills 45 - 52 already in use! */ /* Skills 45 - 52 already in use! */ /* Skills 45 - 52 already in use! */ #define SPELL_IDENTIFY 53 #define SPELL_INFRAVISION 54 #define SPELL_CAUSE_LIGHT 55 #define SPELL_CAUSE_CRITICAL 56 #define SPELL_FLAMESTRIKE 57 #define SPELL_DISPEL_GOOD 58 #define SPELL_WEAKNESS 59 #define SPELL_DISPEL_MAGIC 60 #define SPELL_KNOCK 61 #define SPELL_KNOW_ALIGNMENT 62 #define SPELL_ANIMATE_DEAD 63 #define SPELL_PARALYSIS 64 #define SPELL_REMOVE_PARALYSIS 65 #define SPELL_FEAR 66 #define SPELL_ACID_BLAST 67 #define SPELL_WATER_BREATH 68 #define SPELL_FLY 69 #define SPELL_CONE_OF_COLD 70 #define SPELL_METEOR_SWARM 71 #define SPELL_ICE_STORM 72 #define SPELL_SHIELD 73 #define SPELL_MON_SUM_1 74 #define SPELL_MON_SUM_2 75 #define SPELL_MON_SUM_3 76 #define SPELL_MON_SUM_4 77 #define SPELL_MON_SUM_5 78 #define SPELL_MON_SUM_6 79 #define SPELL_MON_SUM_7 80 #define SPELL_FIRESHIELD 81 #define SPELL_CHARM_MONSTER 82 #define SPELL_CURE_SERIOUS 83 #define SPELL_CAUSE_SERIOUS 84 #define SPELL_REFRESH 85 #define SPELL_SECOND_WIND 86 #define SPELL_TURN 87 #define SPELL_SUCCOR 88 #define SPELL_LIGHT 89 #define SPELL_CONT_LIGHT 90 #define SPELL_CALM 91 #define SPELL_STONE_SKIN 92 #define SPELL_CONJURE_ELEMENTAL 93 #define SPELL_TRUE_SIGHT 94 #define SPELL_MINOR_CREATE 95 #define SPELL_FAERIE_FIRE 96 #define SPELL_FAERIE_FOG 97 #define SPELL_CACAODEMON 98 #define SPELL_POLY_SELF 99 #define SPELL_MANA 100 #define SPELL_ASTRAL_WALK 101 #define SPELL_FLY_GROUP 102 #define SPELL_AID 103 #define SPELL_SHELTER 104 #define SPELL_DRAGON_BREATH 105 #define SPELL_GOODBERRY 106 #define SPELL_VISIONS 107 #define SPELL_MAJOR_TRACK 108 #define SPELL_GOLEM 109 #define SPELL_FAMILIAR 110 #define SPELL_CHANGESTAFF 111 #define SPELL_HOLY_WORD 112 #define SPELL_UNHOLY_WORD 113 #define SPELL_PWORD_KILL 114 #define SPELL_PWORD_BLIND 115 #define SPELL_CHAIN_LIGHTNING 116 #define SPELL_SCARE 117 #define SPELL_COMMAND 119 #define SPELL_CHANGE_FORM 120 /* druid... */ #define SPELL_FEEBLEMIND 121 #define SPELL_SHILLELAGH 122 /* 123? */ #define SPELL_FLAME_BLADE 124 #define SPELL_ANIMAL_GROWTH 125 #define SPELL_INSECT_GROWTH 126 #define SPELL_CREEPING_DEATH 127 #define SPELL_COMMUNE 128 /* whatzone */ #define SPELL_ANIMAL_SUM_1 129 #define SPELL_ANIMAL_SUM_2 130 #define SPELL_ANIMAL_SUM_3 131 #define SPELL_FIRE_SERVANT 132 #define SPELL_EARTH_SERVANT 133 #define SPELL_WATER_SERVANT 134 #define SPELL_WIND_SERVANT 135 #define SPELL_REINCARNATE 136 #define SPELL_CHARM_VEGGIE 137 #define SPELL_VEGGIE_GROWTH 138 #define SPELL_TREE 139 #define SPELL_ANIMATE_ROCK 140 #define SPELL_TREE_TRAVEL 141 #define SPELL_TRAVELLING 142 /* faster move outdoors */ #define SPELL_ANIMAL_FRIENDSHIP 143 #define SPELL_INVIS_TO_ANIMALS 144 #define SPELL_SLOW_POISON 145 #define SPELL_ENTANGLE 146 #define SPELL_SNARE 147 #define SPELL_GUST_OF_WIND 148 #define SPELL_BARKSKIN 149 #define SPELL_SUNRAY 150 #define SPELL_WARP_WEAPON 151 #define SPELL_HEAT_STUFF 152 #define SPELL_FIND_TRAPS 153 #define SPELL_FIRESTORM 154 #define SPELL_HASTE 155 /* other */ #define SPELL_SLOW 156 #define SPELL_DUST_DEVIL 157 #define SPELL_KNOW_MONSTER 158 #define SPELL_TRANSPORT_VIA_PLANT 159 #define SPELL_SPEAK_WITH_PLANT 160 #define SPELL_SILENCE 161 #define SPELL_SENDING 162 #define SPELL_TELEPORT_WO_ERROR 163 #define SPELL_PORTAL 164 #define SPELL_DRAGON_RIDE 165 #define SPELL_MOUNT 166 #define SPELL_GREEN_SLIME 199 #define SPELL_GEYSER 200 #define SPELL_FIRE_BREATH 201 #define SPELL_GAS_BREATH 202 #define SPELL_FROST_BREATH 203 #define SPELL_ACID_BREATH 204 #define SPELL_LIGHTNING_BREATH 205 #define SKILL_SNEAK 45 /* r,t */ #define SKILL_HIDE 46 /* r,t */ #define SKILL_STEAL 47 /* t */ #define SKILL_BACKSTAB 48 /* t */ #define SKILL_PICK_LOCK 49 /* t */ #define SKILL_KICK 50 /* f */ #define SKILL_BASH 51 /* f */ #define SKILL_RESCUE 52 /* f,r */ #define SKILL_DOOR_BASH 149 /* f,r */ #define SKILL_READ_MAGIC 150 /* f,m,c,t,r */ #define SKILL_SCRIBE 151 /* m,c */ #define SKILL_BREW 152 /* m,c */ #define SKILL_PUNCH 153 /* f,c,r */ #define SKILL_TWO_HANDED 154 /* f,m,c,t,r */ #define SKILL_TWO_WEAPON 155 /* NONE */ #define SKILL_BANDAGE 156 /* f,m,c,t,r */ #define SKILL_SEARCH 157 /* t,r */ #define SKILL_SWIMMING 158 /* f,m,c,t,r */ #define SKILL_ENDURANCE 159 /* f,m,c,r,t */ #define SKILL_BARE_HAND 160 /* f,m,c,t,r */ #define SKILL_BLIND_FIGHTING 161 /* f,c,m,r,t */ #define SKILL_PARRY 162 /* f,r,t NOT PUT IN */ #define SKILL_APRAISE 163 /* f,m,c,t,r */ #define SKILL_SPEC_SMITE 164 /* f */ #define SKILL_SPEC_STAB 165 #define SKILL_SPEC_WHIP 166 #define SKILL_SPEC_SLASH 167 #define SKILL_SPEC_SMASH 168 #define SKILL_SPEC_CLEAVE 169 #define SKILL_SPEC_CRUSH 170 #define SKILL_SPEC_BLUDGE 171 #define SKILL_SPEC_PIERCE 172 /* f */ #define SKILL_PEER 173 /* t,r */ #define SKILL_DETECT_NOISE 174 /* t,r */ #define SKILL_DODGE 175 /* m,c,t,r NOT PUT IN */ #define SKILL_BARTER 176 /* m,c,t */ #define SKILL_KNOCK_OUT 177 /* m,c,t NOT PUT IN */ #define SKILL_SPELLCRAFT 178 /* m,c */ #define SKILL_MEDITATION 179 /* m,c */ #define SKILL_TRACK 180 /* r,t */ #define SKILL_FIND_TRAP 181 /* t */ #define SKILL_DISARM_TRAP 182 /* t */ #define SKILL_DISARM 183 /* f,r */ #define SKILL_BASH_W_SHIELD 184 /* not a useable skill, but included with bash */ #define SKILL_RIDE 185 #define TYPE_HIT 206 #define TYPE_BLUDGEON 207 #define TYPE_PIERCE 208 #define TYPE_SLASH 209 #define TYPE_WHIP 210 /* EXAMPLE */ #define TYPE_CLAW 211 /* NO MESSAGES WRITTEN YET! */ #define TYPE_BITE 212 /* NO MESSAGES WRITTEN YET! */ #define TYPE_STING 213 /* NO MESSAGES WRITTEN YET! */ #define TYPE_CRUSH 214 /* NO MESSAGES WRITTEN YET! */ #define TYPE_CLEAVE 215 #define TYPE_STAB 216 #define TYPE_SMASH 217 #define TYPE_SMITE 218 #define TYPE_SUFFERING 220 #define TYPE_HUNGER 221 zones *load_zones(char *infile); char *zone_reset_name(int Reset); int remap_zone_vnum(zones *Zones, int VNum); char *zone_name(zones *Zones, int VNum); char *exit_name(int Direction); char *exit_name_lower(int Direction); int remap_room_vnum(rooms *Rooms, int VNum); char *room_name(rooms *Rooms, int VNum); void fix_exit_vnums(rooms *Rooms); void check_duplicate_rooms(rooms *Rooms); void verify_exits(rooms *Rooms); void fix_zone_ids(zones *Zones, rooms *Rooms); rooms *load_rooms(char *infile, zones *Zones); char *room_flag_name(int Flag); char *sector_name(int Sector); char *exittype_name(int Type); char *room_flags(int Flags); shops *load_shops(char *infile); char *shop_attitude_name(int Attitude); char *shop_immortal_name(int Immortal); int remap_shop_vnum(shops *Shops, int VNum); char *equip_name(int Position); char *doorstate_name(int State); char *sex_name(int State); char *race_name(int Race); char *alignment_name(int Alignment); char *damage_type_name(int Type); char *class_name(int Class); /* returns ALL classes of a character */ char *hate_name(int Type, int Value); #define fear_name(x,y) hate_name((x),(y)) char *immunity_name(int Imms); char *item_type_name(int Type); char *item_equip_name(int Position); char *item_flag_name(int Type); char *liquid_name(int Type); char *container_closeable(int Value); char *affected_by_name(int Flag); char *apply_name(int Flag); char *position_name(int Flag); char *act_name(int Flag); char *item_wear_name(int Type); int remap_obj_vnum(objects *Objects, int VNum); char *obj_name(objects *Objects, int VNum); void check_duplicate_objs(objects *Objects); void set_obj_zones(zones *Zones, objects *Objects); objects *load_objects(char *infile, zones *Zones); char *spell_name(int Spell); #define skill_name(x) spell_name(x) #define MAX_SKILLS 222 #define ASSIGN_SPELL( num, a, b, name, c, d, e, f, g, h, i, j, k, l, m, n, o, p ) { spell[(num)]= my_strdup(name); } char *damage_name(int Type); int remap_mob_vnum(mobs *Mobs, int VNum); char *mob_name(mobs *Mobs, int VNum); void check_duplicate_mobs(mobs *Mobs); void set_mob_zones(zones *Zones, mobs *Mobs); mobs *load_mobs(char *infile, zones *Zones); void check_room_zone_mismatch(zones *Zones, rooms *Rooms); void check_object_zone_mismatch(zones *Zones, objects *Objects); void check_mob_zone_mismatch(zones *Zones, mobs *Mobs); #endif