/* Normal char */
(*cp) = c;
/* Multi-hued attr */
/* VJI - Special attributes for shimmering monsters! */
int value; /* VJI 0 = Dark, 1 = Light, 2 = White */
value=rand_int(2); /* Get a random integer value from the set {0,1} */
// if(randint(20)==0) /* One time in 20... */
// value = 2; /* make it flash white */
// if(value==2) (*ap)=TERM_WHITE; /* Eliminates redundant code below */
(*ap)=TERM_L_DARK; /* Default value = L.Dark */
if(r_ptr->flags2 & RF2_ATTR_MULTI_RED) { /* Red and Pink */
if(value == 0) (*ap) = TERM_RED;
else if(value == 1) (*ap) = TERM_L_RED;
} else if(r_ptr->flags2 & RF2_ATTR_MULTI_YELLOW) { /* Orange and Yellow */
if(value == 0) (*ap) = TERM_ORANGE;
else if(value == 1) (*ap) = TERM_YELLOW;
} else if(r_ptr->flags2 & RF2_ATTR_MULTI_GREEN) { /* Greens */
if(value == 0) (*ap) = TERM_GREEN;
else if(value == 1) (*ap) = TERM_L_GREEN;
} else if(r_ptr->flags2 & RF2_ATTR_MULTI_BLUE) { /* Blues */
if(value == 0) (*ap) = TERM_BLUE;
else if(value == 1) (*ap) = TERM_L_BLUE;
} else if(r_ptr->flags2 & RF2_ATTR_MULTI_UMBER) { /* Umbers (Browns) */
if(value == 0) (*ap) = TERM_UMBER;
else if(value == 1) (*ap) = TERM_L_UMBER;
} else if(r_ptr->flags2 & RF2_ATTR_MULTI_PURPLE) { /* Medium Purple and Pink */
if(value == 0) (*ap) = TERM_VIOLET;
else if(value == 1) (*ap) = TERM_L_RED;
} else if(r_ptr->flags2 & RF2_ATTR_MULTI_LIGHT) { /* Dark gray, gray, light gray, and white */
value=rand_int(4); /* random integer from the set {0,1,2,3} */
if(value == 0) (*ap) = TERM_L_DARK;
else if(value == 1) (*ap) = TERM_SLATE;
else if(value == 2) (*ap) = TERM_L_WHITE;
else if(value == 3) (*ap) = TERM_WHITE;
} else { /* Normal ATTR_MULTI behavior */
(*ap) = randint(15);
}
Users browsing this forum: No registered users and 1 guest