예제 #1
0
 @Override
 public String onKill(NpcInstance npc, QuestState st) {
   int cond = st.getCond();
   boolean doneKill = updateKill(npc, st);
   if (cond == 1) {
     if (ArrayUtils.contains(Mobs, npc.getNpcId())) {
       Party party = st.getPlayer().getParty();
       if (party != null) {
         for (Player member : party.getPartyMembers()) {
           QuestState qs = member.getQuestState(getClass());
           if (qs != null && qs.isStarted()) {
             if (st.getQuestItemsCount(Deadmans_Flesh) < 40) {
               qs.giveItems(Deadmans_Flesh, 1);
               qs.playSound(SOUND_ITEMGET);
               if (doneKill && st.getQuestItemsCount(Deadmans_Flesh) == 40) {
                 st.setCond(2);
               }
             }
           }
         }
       } else {
         if (st.getQuestItemsCount(Deadmans_Flesh) < 50) {
           st.giveItems(Deadmans_Flesh, 1);
           st.playSound(SOUND_ITEMGET);
           if (doneKill && st.getQuestItemsCount(Deadmans_Flesh) == 40) {
             st.setCond(2);
           }
         }
       }
     }
     if (npc.getNpcId() == Scaldisect) {
       Party party = st.getPlayer().getParty();
       if (party != null) {
         for (Player member : party.getPartyMembers()) {
           QuestState qs = member.getQuestState(getClass());
           if (qs != null && qs.isStarted()) {
             updateKill(npc, st);
             if (st.getQuestItemsCount(Deadmans_Flesh) == 40) {
               st.setCond(2);
             }
           }
         }
       } else {
         updateKill(npc, st);
         if (st.getQuestItemsCount(Deadmans_Flesh) == 40) {
           st.setCond(2);
         }
       }
     }
   }
   return null;
 }