private void updateConfig() { try { this.config = PGConfig.inst() .releaseEvent() .getPenguins() .get(penguin.getPenguin().getKind()) .getLevel(penguin.getPenguin().getLevel()); } catch (Exception ex) { this.config = null; } }
private long calcNextSpawnTime() { if (config != null) { return penguin.getLastSpawnTime() + config.getTime(); } return Long.MAX_VALUE; }
@Override public boolean update() { if (config != null) { boolean isSpawnOK = Math.random() < config.getRate(); if (isSpawnOK) { this.lastSpawnedItem = config.getItem(); cote.Items.addEgg(lastSpawnedItem); } else { this.lastSpawnedItem = null; } penguin.setLastSpawnTime(nextSpawnTime); this.updateConfig(); this.nextSpawnTime = calcNextSpawnTime(); return true; } return false; }
private void updateTime(long now) { if (config != null && penguin.getLastSpawnTime() <= 0) { penguin.setLastSpawnTime(now); } }