----- Original Message ----- From: "Jesper Röjestål" <rk@ARADJA.COM> > the problem is: how do i do to get affect_total to set aff_abils not > over the real_abils > and still have stradd calculated properly, currently when you are at > 19str and get an -2str affect > your str will drop to 17 not 18(90), please someone help me with this, > before i scratch all my hair of my head... I'd say this is the desired behaviour, actually. When a player/mob with strength of 19 wears a -2 str object it _should_ have a strength of 17. Also, when a warrior with strength 18/45 wears a +1 strength object (and he's of a race who cannot become stronger than 18/00), the standard strength calculation formula should kick in, changing his strength to 18/55. This also implies that a player of a race that easily becomes stronger then 18/100 (let's say giants, for example), just like mobs, just jumps from 18 to 19 strength. What you want is something like this: if (IS_NPC(ch)) { GET_STR(ch) = MIN(GET_STR(ch), i); } else { switch GET_RACE(ch) { case RACE_1: case RACE_2: case RACE_3: if (GET_STR(ch) > 18) { i = GET_ADD(ch) + ((GET_STR(ch) - 18) * 10); GET_ADD(ch) = MIN(i, 100); GET_STR(ch) = 18; } break; case RACE_4: case RACE_5: default: GET_STR(ch) = MIN(GET_STR(ch), class_str_limit[GET_CLASS(ch)]); break; } } If you don't agree, at least I hope you get the ideas from the code... Welcor -- +---------------------------------------------------------------+ | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html | +---------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/06/01 PST