Great stuff! Thank you Paul, and thank you Manikus!
Kinda put the "drain" on ya?ST
This script is monster - more than 300 lines. So many places to screw it up.
Quote from: manikus on July 29, 2010, 07:58:40 PMThis script is monster - more than 300 lines. So many places to screw it up. Yep. And we've all seen your typing. Yet you manage to get it done anyway! That's why you're my hero.
$VAR target;$VAR char;$VAR charClass;$VAR charXP;$VAR charHP;$VAR fighter;$VAR cleric;$VAR ranger;$VAR mage;$VAR thief;$VAR druid;target = $TargetIndex();charClass = $GET_CHAR_CLASS(target);char = $GET_CHAR_Lvl(target,charClass);charXP = $GET_CHAR_Exp(target,charClass);charHP = $GET_CHAR_HITPOINTS(target);fighter = $GET_CHAR_Lvl(target,"fighter");cleric = $GET_CHAR_Lvl(target,"cleric");ranger = $GET_CHAR_Lvl(target,"ranger");mage = $GET_CHAR_Lvl(target,"magicUser");thief = $GET_CHAR_Lvl(target,"thief");druid = $GET_CHAR_Lvl(target,"druid");$FUNC Drain(class, hpReduction){ $SET_CHAR_Lvl(target,class,(char -# 1)); $SET_CHAR_Exp(target,class, $DAT_Baseclass_Experience(class, char) -# 1); $SET_CHAR_HITPOINTS(target, charHP -# ($RANDOM(hpReduction) +# 1));} Drain;$SET_CHAR_ASL(target,"charLevel",char);$SET_CHAR_ASL(target,"charExp",charXP);$SET_CHAR_ASL(target,"charHit",charHP);$IF (charClass ==# 0) {Drain("fighter",10);};$IF (charClass ==# 1) {Drain("cleric",8);};$IF (charClass ==# 2) {Drain("ranger",8);};$IF (charClass ==# 3) {Drain("paladin",10);};$IF (charClass ==# 4) {Drain("mage",4);};$IF (charClass ==# 5) {Drain("thief",6);};$IF (charClass ==# 6) {Drain("druid",8);};$IF (charClass ==# 7){ $IF (cleric ># fighter) {Drain("cleric",8);} $ELSE {Drain("fighter",10);};};$IF (charClass ==# 8){ $IF (cleric ># fighter && cleric ># mage) {Drain("cleric",8);$RETURN;}; $IF (fighter ># cleric && fighter ># mage) {Drain("fighter",10);$RETURN;} $ELSE {Drain("mage",4);};};$IF (charClass ==# 9){ $IF (cleric ># ranger) {Drain("cleric",8);} $ELSE {Drain("ranger",8);};};$IF (charClass ==# 10){ $IF (cleric ># mage){Drain("cleric",8);} $ELSE {Drain("mage",4);};};$IF (charClass ==# 11){ $IF (cleric ># thief) {Drain("cleric",8);} $ELSE {Drain("thief",6);};};$IF (charClass ==# 12){ $IF (fighter ># mage) {Drain("fighter",10);} $ELSE {Drain("mage",4);};};$IF (charClass ==# 13){ $IF (thief ># fighter) {Drain("thief",6);} $ELSE {Drain("fighter",10);};};$IF (charClass ==# 14){ $IF (thief ># fighter && thief ># mage) {Drain("thief",6);$RETURN;}; $IF (fighter ># thief && fighter ># mage) {Drain("fighter",10);$RETURN;} $ELSE {Drain("mage",4);};};$IF (charClass ==# 15){ $IF (thief ># mage) {Drain("thief",6);} $ELSE {Drain("mage",4);};};$IF (charClass ==# 16){ $IF (fighter ># druid) {Drain("fighter",10);} $ELSE {Drain("druid",8);};};$IF (charClass ==# 17){ $IF (druid ># mage) {DDrain("druid",8);} $ELSE {Drain("mage",4);};};$IF (charClass ==# 18){ $IF (fighter ># druid && fighter ># mage) {Drain("fighter",10);$RETURN;}; $IF (druid ># fighter && druid ># mage) {Drain("druid",8);$RETURN;} $ELSE {Drain("mage",4);};};