퀘스트템 자동 지급 소스
아래 소스는 퀘스트템 자동 지급 소스부분입니다.
레벨업시 15/30/45/50 렙에 지급되며, 렙다했다가 다시 올리더라도 지급안되며,
퀘스트템 들어오면 퀘스트까지 클리어 자동으로 되게 처리했습니다.
L1PcInstance.java
try {
// DB에 캐릭터 정보를 기입한다
save();
} catch (Exception e) {
_log.log(Level.SEVERE, e.getLocalizedMessage(), e); //<<검색
}
////////////////// 레벨별 퀘스트템 자동지급 .By군주 ////////////////////////// <<추가
L1Quest quest = getQuest();
int lv15_step = quest.get_step(L1Quest.QUEST_LEVEL15);
if (getLevel() >= 15 && lv15_step != L1Quest.QUEST_END) {
switch (getType()){ // <--케릭 클래스 구분
case 0://군주라면
{ L1ItemInstance l1item = getInventory().storeItem(40226, 1);//트루타겟
if (l1item != null)
sendPackets(new S_SystemMessage("\fWLevel(15)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL15);
break;
}
case 1:
{ L1ItemInstance item = getInventory().storeItem(20027, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(15)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL15);
}
break;
case 2:
{
L1ItemInstance item = getInventory().storeItem(20021, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(15)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL15);
}
break;
case 3:
{
L1ItemInstance item = getInventory().storeItem(20226, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(15)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL15);
}
break;
case 4:
{
L1ItemInstance item = getInventory().storeItem(40598, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(15)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL15);
}
break;
}
}
int lv30_step = quest.get_step(L1Quest.QUEST_LEVEL30);
if (getLevel() >= 30 && lv30_step != L1Quest.QUEST_END) {
switch (getType()){ // <--케릭 클래스 구분
case 0:
{ L1ItemInstance item = getInventory().storeItem(40570, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(30)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL30);
}
break;
case 1:
{ L1ItemInstance item = getInventory().storeItem(20230, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(30)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL30);
}
break;
case 2:
{
L1ItemInstance item = getInventory().storeItem(40588, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(30)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL30);
}
break;
case 3:
{
L1ItemInstance item = getInventory().storeItem(115, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(30)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL30);
}
break;
case 4:
{
L1ItemInstance item = getInventory().storeItem(40545, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(30)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL30);
}
break;
}
}
int lv45_step = quest.get_step(L1Quest.QUEST_LEVEL45);
if (getLevel() >= 45 && lv45_step != L1Quest.QUEST_END) {
switch (getType()){ // <--케릭 클래스 구분
case 0:
{ L1ItemInstance item = getInventory().storeItem(20287, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(45)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL45);
}
break;
case 1:
{ L1ItemInstance item = getInventory().storeItem(20318, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(45)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL45);
}
break;
case 2:
{
L1ItemInstance item = getInventory().storeItem(40546, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(45)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL45);
}
break;
case 3:
{
L1ItemInstance item = getInventory().storeItem(40599, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(45)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL45);
}
break;
case 4:
{
L1ItemInstance item = getInventory().storeItem(40553, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(45)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL45);
}
break;
}
}
int lv50_step = quest.get_step(L1Quest.QUEST_LEVEL50);
if (getLevel() >= 50 && lv50_step != L1Quest.QUEST_END) {
switch (getType()){ // <--케릭 클래스 구분
case 0:
{ L1ItemInstance item = getInventory().storeItem(51, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(50)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL50);
}
break;
case 1:
{ L1ItemInstance item = getInventory().storeItem(56, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(50)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL50);
}
break;
case 2:
{
L1ItemInstance item = getInventory().storeItem(184, 1);
L1ItemInstance item1 = getInventory().storeItem(50, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(50)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL50);
}
break;
case 3:
{
L1ItemInstance item = getInventory().storeItem(20225, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(50)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL50);
}
break;
case 4:
{
L1ItemInstance item = getInventory().storeItem(13, 1);
if(item != null)
sendPackets(new S_SystemMessage("\fWLevel(50)퀘스트를 완료 하였습니다."));
getQuest().set_end(L1Quest.QUEST_LEVEL50);
}
break;
}
}////////////////// 레벨별 퀘스트템 자동지급 .By군주 ///////////////////////////
// 보너스 스테이터스
if (getLevel() >= 51 && getLevel() - 50 > getBonusStats()) { // <<기존 소스
if ((getBaseStr() + getBaseDex() + getBaseCon()
+ getBaseInt() + getBaseWis() + getBaseCha()) < 150) {
sendPackets(new S_bonusstats(getId(), 1));

김닉넴 님의 최근 댓글
클라는 있나요? 2023 04.29 클라 있나요? 2023 03.23 감사합니다 2016 06.06 ㄳ합니다 2016 06.05 ㄳ합니다 2016 06.05