version 1.39 | | version 1.40 |
---|
| | |
/* | | /* |
* static char *rcsid_living_c = | | * static char *rcsid_living_c = |
* "$Id: living.c,v 1.39 2002/10/12 05:34:29 mwedel Exp $"; | | * "$Id: living.c,v 1.40 2002/10/14 07:03:16 mwedel Exp $"; |
*/ | | */ |
| | |
/* | | /* |
| | |
| | |
loss_20p = tmp->stats.exp * 0.20; | | loss_20p = tmp->stats.exp * 0.20; |
loss_3l = tmp->stats.exp - levels[MAX(0,tmp->level -3)]; | | loss_3l = tmp->stats.exp - levels[MAX(0,tmp->level -3)]; |
| | |
| | /* With the revised exp system, you can get cases where |
| | * losing 3 levels would still require that you have more |
| | * exp than you current have - this is true if the levels |
| | * tables is a lot harder. |
| | */ |
| | if (loss_3l < 0) loss_3l = 0; |
| | |
if(loss_3l < loss_20p) | | if(loss_3l < loss_20p) |
loss = check_exp_loss(tmp, loss_3l); | | loss = check_exp_loss(tmp, loss_3l); |
else | | else |
loss = check_exp_loss(tmp, loss_20p); | | loss = check_exp_loss(tmp, loss_20p); |
| | |
tmp->stats.exp -= loss; | | tmp->stats.exp -= loss; |
del_exp += loss; | | del_exp += loss; |
player_lvl_adj(op,tmp); | | player_lvl_adj(op,tmp); |