@Override public String onKill(L2NpcInstance npc, L2PcInstance killer, boolean isPet) { int npcId = npc.getNpcId(); Integer status = GrandBossManager.getInstance().getBossStatus(ZAKEN); if (npcId == ZAKEN) { npc.broadcastPacket( new PlaySound(1, "BS02_D", 1, npc.getObjectId(), npc.getX(), npc.getY(), npc.getZ())); GrandBossManager.getInstance().setBossStatus(ZAKEN, DEAD); // time is 36hour +/- 17hour long respawnTime = (long) (Config.ZAKEN_RESP_FIRST + Rnd.get(Config.ZAKEN_RESP_SECOND)); startQuestTimer("zaken_unlock", respawnTime, null, null); cancelQuestTimer("1001", npc, null); cancelQuestTimer("1003", npc, null); // also save the respawn time so that the info is maintained past reboots StatsSet info = GrandBossManager.getInstance().getStatsSet(ZAKEN); info.set("respawn_time", System.currentTimeMillis() + respawnTime); GrandBossManager.getInstance().setStatsSet(ZAKEN, info); } else if (status == ALIVE) { if (npcId != ZAKEN) { startQuestTimer("CreateOnePrivateEx", ((30 + Rnd.get(60)) * 1000), npc, null); } } return super.onKill(npc, killer, isPet); }