L2CubicInstance doAction() .... case VIPER_CUBIC: _actionTask = ThreadPoolManager.getInstance().scheduleEffectAtFixedRate(new Action(30), 0, 20000) ....... private class Action implements Runnable { private int _chance; Action(int chance) { _chance = chance; // run task } ...... if( if (Rnd.get(1, 100) < _chance)) ..... useSkill(....);