コード例 #1
0
  /**
   * Method onDeath.
   *
   * @param killer Creature
   */
  @Override
  protected void onDeath(Creature killer) {
    super.onDeath(killer);

    switch (getId()) {
      case 18120:
      case 18121:
      case 18122:
      case 18123:
      case 18124:
      case 18125:
      case 18126:
      case 18127:
      case 18128:
      case 18129:
      case 18130:
      case 18131:
      case 18149:
      case 18158:
      case 18159:
      case 18160:
      case 18161:
      case 18162:
      case 18163:
      case 18164:
      case 18165:
      case 18183:
      case 18184:
      case 18212:
      case 18213:
      case 18214:
      case 18215:
      case 18216:
      case 18217:
      case 18218:
      case 18219:
        if (_onDeadEventTask != null) {
          _onDeadEventTask.cancel(false);
        }

        _onDeadEventTask = ThreadPoolManager.getInstance().schedule(new OnDeadEvent(this), 3500);
        break;

      case 18150:
      case 18151:
      case 18152:
      case 18153:
      case 18154:
      case 18155:
      case 18156:
      case 18157:
        if (_victimSpawnKeyBoxTask != null) {
          _victimSpawnKeyBoxTask.cancel(false);
          _victimSpawnKeyBoxTask = null;
        }

        if (_victimShout != null) {
          _victimShout.cancel(false);
          _victimShout = null;
        }

        if (_onDeadEventTask != null) {
          _onDeadEventTask.cancel(false);
        }

        _onDeadEventTask = ThreadPoolManager.getInstance().schedule(new OnDeadEvent(this), 3500);
        break;

      case 18141:
      case 18142:
      case 18143:
      case 18144:
      case 18145:
      case 18146:
      case 18147:
      case 18148:
        if (FourSepulchersSpawn.isViscountMobsAnnihilated(mysteriousBoxId)
            && !hasPartyAKey(killer.getPlayer())) {
          if (_onDeadEventTask != null) {
            _onDeadEventTask.cancel(false);
          }

          _onDeadEventTask = ThreadPoolManager.getInstance().schedule(new OnDeadEvent(this), 3500);
        }
        break;

      case 18220:
      case 18221:
      case 18222:
      case 18223:
      case 18224:
      case 18225:
      case 18226:
      case 18227:
      case 18228:
      case 18229:
      case 18230:
      case 18231:
      case 18232:
      case 18233:
      case 18234:
      case 18235:
      case 18236:
      case 18237:
      case 18238:
      case 18239:
      case 18240:
        if (FourSepulchersSpawn.isDukeMobsAnnihilated(mysteriousBoxId)) {
          if (_onDeadEventTask != null) {
            _onDeadEventTask.cancel(false);
          }

          _onDeadEventTask = ThreadPoolManager.getInstance().schedule(new OnDeadEvent(this), 3500);
        }
        break;
    }
  }