Nagad's post in Modify exp rates for specific class only was marked as the answer
In this case, if for example an Assassin become high novice without logging out, will still have the bonus?
Is this script consuming high resources?
EDIT:
Definitely solved in this way:
- script FloatingClassRates -1,{
OnRefresh:
OnPCLoginEvent:
addtimer( 10000, strnpcinfo(3) + "::OnRefresh" );
.@boostActive = getstatus( SC_CASH_PLUSEXP, 0 );
.@classBonusApplies = ( Class == 10 || Class == 12 || Class == 16 || Class == 4046 || Class == 4047 || Class == 4048 || Class == 4049 || Class == 23 || Class == 24 || Class == 25 );
if( .@classBonusApplies && .@boostActive ) end;
if( .@classBonusApplies )
sc_start( SC_CASH_PLUSEXP, -1, 100 );
else if( .@boostActive )
sc_end( SC_CASH_PLUSEXP );
}
Thanks everyone for your help