> We know there's ch->fighting, right? > Why not semi-temporary values of > ch->fightingmaxhp and > ch->fightinghptaken, where > ch->fightingmaxhp is a copy of the mob's max HP at the beginning of combat and > ch->fightinghptaken is incremented with each hit.
Was something like that i was thinking, but what about mob 1 mob 12 mob 1001? you want to have more of it? what if the player has 100 or 1000 unfinished fights? ch->fightingmaxhp1 ch->fightingmaxhp2 ch->fightingmaxhp3 ch->fightingmaxhp4 ... ch->fightinghptaken1 ch->fightinghptaken2 ch->fightinghptaken3 ch->fightinghptaken4 ... > You'd calc exp by doing, for example: > if ((ch->fightinghptaken/ch->fightingmaxhp) > 1) > return exp; > else > exp = exp*ch->fightinghptaken/ch->fightingmaxhp; > Etc. something like that proberly.