Alignment update 2

This commit is contained in:
kinther 2025-12-31 08:06:03 -08:00
parent 1b7a53f953
commit a765351be9
7 changed files with 58 additions and 96 deletions

View file

@ -236,9 +236,6 @@ static void show_obj_modifiers(struct obj_data *obj, struct char_data *ch)
if (OBJ_FLAGGED(obj, ITEM_INVISIBLE))
send_to_char(ch, " (invisible)");
if (OBJ_FLAGGED(obj, ITEM_BLESS) && AFF_FLAGGED(ch, AFF_DETECT_ALIGN))
send_to_char(ch, " ..It glows blue!");
if (OBJ_FLAGGED(obj, ITEM_MAGIC) && AFF_FLAGGED(ch, AFF_DETECT_MAGIC))
send_to_char(ch, " ..It glows yellow!");

View file

@ -404,7 +404,6 @@ static void apply_class_skills(int chclass, struct char_data *ch)
apply_class_skill(chclass, ch, SPELL_CREATE_FOOD, 5, 90);
apply_class_skill(chclass, ch, SPELL_CREATE_WATER, 5, 90);
apply_class_skill(chclass, ch, SPELL_DETECT_POISON, 5, 90);
apply_class_skill(chclass, ch, SPELL_DETECT_ALIGN, 5, 90);
apply_class_skill(chclass, ch, SPELL_CURE_BLIND, 5, 90);
apply_class_skill(chclass, ch, SPELL_BLESS, 5, 90);
apply_class_skill(chclass, ch, SPELL_DETECT_INVIS, 5, 90);
@ -420,8 +419,6 @@ static void apply_class_skills(int chclass, struct char_data *ch)
apply_class_skill(chclass, ch, SPELL_WORD_OF_RECALL, 5, 90);
apply_class_skill(chclass, ch, SPELL_DARKNESS, 5, 90);
apply_class_skill(chclass, ch, SPELL_EARTHQUAKE, 5, 90);
apply_class_skill(chclass, ch, SPELL_DISPEL_EVIL, 5, 90);
apply_class_skill(chclass, ch, SPELL_DISPEL_GOOD, 5, 90);
apply_class_skill(chclass, ch, SPELL_SANCTUARY, 5, 90);
apply_class_skill(chclass, ch, SPELL_CALL_LIGHTNING, 5, 90);
apply_class_skill(chclass, ch, SPELL_HEAL, 5, 90);
@ -778,7 +775,6 @@ void init_spell_levels(void)
spell_level(SPELL_CREATE_FOOD, CLASS_CLERIC, 1);
spell_level(SPELL_CREATE_WATER, CLASS_CLERIC, 1);
spell_level(SPELL_DETECT_POISON, CLASS_CLERIC, 1);
spell_level(SPELL_DETECT_ALIGN, CLASS_CLERIC, 1);
spell_level(SPELL_CURE_BLIND, CLASS_CLERIC, 1);
spell_level(SPELL_BLESS, CLASS_CLERIC, 1);
spell_level(SPELL_DETECT_INVIS, CLASS_CLERIC, 1);
@ -794,8 +790,6 @@ void init_spell_levels(void)
spell_level(SPELL_WORD_OF_RECALL, CLASS_CLERIC, 1);
spell_level(SPELL_DARKNESS, CLASS_CLERIC, 1);
spell_level(SPELL_EARTHQUAKE, CLASS_CLERIC, 1);
spell_level(SPELL_DISPEL_EVIL, CLASS_CLERIC, 1);
spell_level(SPELL_DISPEL_GOOD, CLASS_CLERIC, 1);
spell_level(SPELL_SANCTUARY, CLASS_CLERIC, 1);
spell_level(SPELL_CALL_LIGHTNING, CLASS_CLERIC, 1);
spell_level(SPELL_HEAL, CLASS_CLERIC, 1);

View file

@ -290,7 +290,6 @@ const char *affected_bits[] =
"\0", /* DO NOT REMOVE!! */
"BLIND",
"INVIS",
"DET-ALIGN",
"DET-INVIS",
"DET-MAGIC",
"SENSE-LIFE",

View file

@ -235,14 +235,6 @@ int mag_damage(int level, struct char_data *ch, struct char_data *victim,
break;
/* Mostly clerics */
case SPELL_DISPEL_EVIL:
dam = dice(6, 8) + 6;
break;
case SPELL_DISPEL_GOOD:
dam = dice(6, 8) + 6;
break;
case SPELL_CALL_LIGHTNING:
dam = dice(7, 8) + 7;
break;
@ -384,13 +376,6 @@ void mag_affects(int level, struct char_data *ch, struct char_data *victim,
to_vict = "You feel very uncomfortable.";
break;
case SPELL_DETECT_ALIGN:
af[0].duration = 12 + level;
SET_BIT_AR(af[0].bitvector, AFF_DETECT_ALIGN);
accum_duration = TRUE;
to_vict = "Your eyes tingle.";
break;
case SPELL_DETECT_INVIS:
af[0].duration = 12 + level;
SET_BIT_AR(af[0].bitvector, AFF_DETECT_INVIS);

View file

@ -795,9 +795,6 @@ void mag_assign_spells(void) {
spello(SPELL_DARKNESS, "darkness", 30, 5, 4, POS_STANDING,
TAR_IGNORE, FALSE, MAG_ROOMS, NULL);
spello(SPELL_DETECT_ALIGN, "detect alignment", 20, 10, 2, POS_STANDING,
TAR_CHAR_ROOM | TAR_SELF_ONLY, FALSE, MAG_AFFECTS, "You feel less aware.");
spello(SPELL_DETECT_INVIS, "detect invisibility", 20, 10, 2, POS_STANDING,
TAR_CHAR_ROOM | TAR_SELF_ONLY, FALSE, MAG_AFFECTS,
"Your eyes stop tingling.");
@ -810,12 +807,6 @@ void mag_assign_spells(void) {
TAR_CHAR_ROOM | TAR_OBJ_INV | TAR_OBJ_ROOM, FALSE, MAG_MANUAL,
"The detect poison wears off.");
spello(SPELL_DISPEL_EVIL, "dispel evil", 40, 25, 3, POS_FIGHTING,
TAR_CHAR_ROOM | TAR_FIGHT_VICT, TRUE, MAG_DAMAGE, NULL);
spello(SPELL_DISPEL_GOOD, "dispel good", 40, 25, 3, POS_FIGHTING,
TAR_CHAR_ROOM | TAR_FIGHT_VICT, TRUE, MAG_DAMAGE, NULL);
spello(SPELL_EARTHQUAKE, "earthquake", 40, 25, 3, POS_FIGHTING,
TAR_IGNORE, TRUE, MAG_AREAS, NULL);

View file

@ -56,45 +56,42 @@
#define SPELL_CURE_CRITIC 15 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_CURE_LIGHT 16 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_CURSE 17 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_DETECT_ALIGN 18 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_DETECT_INVIS 19 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_DETECT_MAGIC 20 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_DETECT_POISON 21 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_DISPEL_EVIL 22 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_EARTHQUAKE 23 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_ENCHANT_WEAPON 24 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_ENERGY_DRAIN 25 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_FIREBALL 26 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_HARM 27 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_HEAL 28 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_INVISIBLE 29 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_LIGHTNING_BOLT 30 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_LOCATE_OBJECT 31 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_MAGIC_MISSILE 32 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_POISON 33 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_PROT_FROM_EVIL 34 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_REMOVE_CURSE 35 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_SANCTUARY 36 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_SHOCKING_GRASP 37 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_SLEEP 38 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_STRENGTH 39 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_SUMMON 40 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_VENTRILOQUATE 41 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_WORD_OF_RECALL 42 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_REMOVE_POISON 43 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_SENSE_LIFE 44 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_ANIMATE_DEAD 45 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_DISPEL_GOOD 46 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_GROUP_ARMOR 47 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_GROUP_HEAL 48 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_GROUP_RECALL 49 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_INFRAVISION 50 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_WATERWALK 51 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_IDENTIFY 52 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_FLY 53 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_DARKNESS 54
#define SPELL_DETECT_INVIS 18 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_DETECT_MAGIC 19 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_DETECT_POISON 20 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_EARTHQUAKE 21 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_ENCHANT_WEAPON 22 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_ENERGY_DRAIN 23 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_FIREBALL 24 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_HARM 25 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_HEAL 26 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_INVISIBLE 27 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_LIGHTNING_BOLT 28 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_LOCATE_OBJECT 29 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_MAGIC_MISSILE 30 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_POISON 31 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_PROT_FROM_EVIL 32 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_REMOVE_CURSE 33 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_SANCTUARY 34 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_SHOCKING_GRASP 35 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_SLEEP 36 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_STRENGTH 37 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_SUMMON 38 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_VENTRILOQUATE 39 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_WORD_OF_RECALL 40 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_REMOVE_POISON 41 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_SENSE_LIFE 42 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_ANIMATE_DEAD 43 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_GROUP_ARMOR 44 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_GROUP_HEAL 45 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_GROUP_RECALL 46 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_INFRAVISION 47 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_WATERWALK 48 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_IDENTIFY 49 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_FLY 50 /* Reserved Skill[] DO NOT CHANGE */
#define SPELL_DARKNESS 51
/** Total Number of defined spells */
#define NUM_SPELLS 54
#define NUM_SPELLS 51
/* Insert new spells here, up to MAX_SPELLS */
#define MAX_SPELLS 130

View file

@ -312,31 +312,30 @@
#define AFF_DONTUSE 0 /**< DON'T USE! This allows 0 to mean "no bits set" in the database */
#define AFF_BLIND 1 /**< (R) Char is blind */
#define AFF_INVISIBLE 2 /**< Char is invisible */
#define AFF_DETECT_ALIGN 3 /**< Char is sensitive to align */
#define AFF_DETECT_INVIS 4 /**< Char can see invis chars */
#define AFF_DETECT_MAGIC 5 /**< Char is sensitive to magic */
#define AFF_SENSE_LIFE 6 /**< Char can sense hidden life */
#define AFF_WATERWALK 7 /**< Char can walk on water */
#define AFF_SANCTUARY 8 /**< Char protected by sanct */
#define AFF_UNUSED 9 /**< (R) Char is grouped */
#define AFF_CURSE 10 /**< Char is cursed */
#define AFF_INFRAVISION 11 /**< Char can see in dark */
#define AFF_POISON 12 /**< (R) Char is poisoned */
#define AFF_RESERVED13 13 /**< Reserved (unused) */
#define AFF_RESERVED14 14 /**< Reserved (unused) */
#define AFF_SLEEP 15 /**< (R) Char magically asleep */
#define AFF_NOTRACK 16 /**< Char can't be tracked */
#define AFF_FLYING 17 /**< Char is flying */
#define AFF_SCUBA 18 /**< Room for future expansion */
#define AFF_SNEAK 19 /**< Char can move quietly */
#define AFF_HIDE 20 /**< Char is hidden */
#define AFF_SCAN 21 /**< Actively scanning for hidden threats */
#define AFF_CHARM 22 /**< Char is charmed */
#define AFF_BANDAGED 23 /**< Character was bandaged recently */
#define AFF_LISTEN 24 /**< Actively eavesdropping */
#define AFF_MOUNTED 25 /**< Riding a mount */
#define AFF_DETECT_INVIS 3 /**< Char can see invis chars */
#define AFF_DETECT_MAGIC 4 /**< Char is sensitive to magic */
#define AFF_SENSE_LIFE 5 /**< Char can sense hidden life */
#define AFF_WATERWALK 6 /**< Char can walk on water */
#define AFF_SANCTUARY 7 /**< Char protected by sanct */
#define AFF_UNUSED 8 /**< (R) Char is grouped */
#define AFF_CURSE 9 /**< Char is cursed */
#define AFF_INFRAVISION 10 /**< Char can see in dark */
#define AFF_POISON 11 /**< (R) Char is poisoned */
#define AFF_RESERVED13 12 /**< Reserved (unused) */
#define AFF_RESERVED14 13 /**< Reserved (unused) */
#define AFF_SLEEP 14 /**< (R) Char magically asleep */
#define AFF_NOTRACK 15 /**< Char can't be tracked */
#define AFF_FLYING 16 /**< Char is flying */
#define AFF_SCUBA 17 /**< Room for future expansion */
#define AFF_SNEAK 18 /**< Char can move quietly */
#define AFF_HIDE 19 /**< Char is hidden */
#define AFF_SCAN 20 /**< Actively scanning for hidden threats */
#define AFF_CHARM 21 /**< Char is charmed */
#define AFF_BANDAGED 22 /**< Character was bandaged recently */
#define AFF_LISTEN 23 /**< Actively eavesdropping */
#define AFF_MOUNTED 24 /**< Riding a mount */
/** Total number of affect flags */
#define NUM_AFF_FLAGS 26
#define NUM_AFF_FLAGS 25
/* Modes of connectedness: used by descriptor_data.state */
#define CON_PLAYING 0 /**< Playing - Nominal state */