At 09:38 PM 5/6/98 -0500, you wrote:
>This code will go into class.c I think. Their are some pretty big tables
>set up right before all the titles. Also, the way you want to do this
>seems to me to be a recursive function because you would have to keep
>calling it until you got down to level two where you have a set
>expeirence. Also, on your formula, it should be:
>
>exp_to_level = current_exp * (1 + (100/level)) * number(1,1000)
I can't say that this would work all that well. Formulas never work as
intended unless they form a specific line or curve on a graph. Perhaps you
want one arm of a parabola? A random number is a TERRIBLE idea because it
will evaluate differently each time.
Put this in int exp_to_level or some such.
Try this:
float modifier;
^^^^^ I'm bad with typing, I believe you want this.
switch (GET_CLASS(ch)) {
case CLASS_WARRIOR:
case CLASS_THIEF:
modifier = 1.01;
break;
case CLASS_CLERIC:
case CLASS_MAGIC_USER:
modifier = 1;
break;
default:
modifier = 1;
break;
}
/* The above makes it so that clerics and magi get the amount returned by
the formula, while warriors and thieves get a little more difficult
formula. */
exp_to_level = 0;
for (i = 1;i <= level;i++) // level is the argument from the character
exp_to_level += handy formula (write one... Think parabola...)
}
exp_to_level * modifier;
return exp_to_level;
bleh, finish it.
-B.
+------------------------------------------------------------+
| Ensure that you have read the CircleMUD Mailing List FAQ: |
| http://democracy.queensu.ca/~fletcher/Circle/list-faq.html |
+------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/15/00 PST