1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
bx = SkillFactory.getSkill(31110009);
bof = chra.getTotalSkillLevel(bx);
if (bof > 0) {
final int DFRecovery = 2 * bof;
if(chra.getDFRecoveryTimer() != null){
chra.getDFRecoveryTimer().cancel();
chra.getDFRecoveryTimer().purge();
}
chra.setDFRecoveryTimer(new java.util.Timer());
TimerTask healTask = new TimerTask(){
@Override
public void run(){
if(chra.getStat().getMp() < chra.getMaxMp() && chra.isAlive()){
chra.handleForceGain(0,0,DFRecovery);
}
}
};
chra.getDFRecoveryTimer().scheduleAtFixedRate(healTask, 4000, 4000);
}