Подскажите пожалуйста что не так, как бы беру квест и т д, дохожу до того что меня отсылают бить айтемы, бю итемы с мобов всё норм, а тот что с рб итем не даётся, прописываю вручную его подхожу к нпс продолжения нету выбивает html данный rb_wings_q0933_0106.htm
package quests;
import l2.commons.util.Rnd;
import l2.gameserver.model.instances.NpcInstance;
import l2.gameserver.model.quest.Quest;
import l2.gameserver.model.quest.QuestState;
import l2.gameserver.scripts.ScriptFile;
public class _933_WingsQuest extends Quest implements ScriptFile
{
//NPC
private static int START_NPC = 40031;
//MOB
private static int MOBS_NPC = 40029;
private static int BOSS_NPC = 40030;
//Quest items
private static int QUEST_ITEM1 = 10004;
private static int QUEST_ITEM2 = 10005;
private static int REWARD_ITEM = 10006;
public _933_WingsQuest()
{
super(true);
addStartNpc(START_NPC);
addKillId(MOBS_NPC,BOSS_NPC);
addQuestItem(QUEST_ITEM1,QUEST_ITEM2,REWARD_ITEM);
}
@Override
public String onEvent(String event, QuestState st, NpcInstance npc)
{
String htmltext = event;
if(event.equalsIgnoreCase("rb_wings_q0933_0104.htm"))
{
st.setState(STARTED);
st.setCond(1);
st.playSound(SOUND_ACCEPT);
}
else if(event.equalsIgnoreCase("rb_wings_q0933_0201.htm"))
if(st.getQuestItemsCount(QUEST_ITEM1) == 300 && st.getQuestItemsCount(QUEST_ITEM2) == 1)
{
st.takeItems(QUEST_ITEM1, -1);
st.takeItems(QUEST_ITEM2, -1);
st.giveItems(REWARD_ITEM, 1);
st.playSound(SOUND_FINISH);
st.exitCurrentQuest(true);
}
else
htmltext = "rb_wings_q0933_0202.htm";
return htmltext;
}
@Override
public String onTalk(NpcInstance npc, QuestState st)
{
String htmltext = "noquest";
int condition = st.getCond();
int npcId = npc.getNpcId();
if(npcId == START_NPC)
if(condition == 0)
{
htmltext = "rb_wings_q0933_0101.htm";
}
else if(condition == 1)
htmltext = "rb_wings_q0933_0106.htm";
else if(condition == 2 && st.getQuestItemsCount(QUEST_ITEM1) == 300 && st.getQuestItemsCount(QUEST_ITEM2) == 1)
htmltext = "rb_wings_q0933_0105.htm";
return htmltext;
}
@Override
public String onKill(NpcInstance npc, QuestState st)
{
if(st.getState() != STARTED)
return null;
int npcId = npc.getNpcId();
if(npcId == MOBS_NPC)
{
if(st.getCond() == 1 && Rnd.chance(70) && st.getQuestItemsCount(QUEST_ITEM1) < 300)
{
st.giveItems(QUEST_ITEM1, 1);
}
if(npcId == BOSS_NPC)
{
if(st.getCond() == 1 && st.getQuestItemsCount(QUEST_ITEM2) < 1)
{
st.giveItems(QUEST_ITEM2, 1);
}
}
if(st.getCond() == 1 && st.getQuestItemsCount(QUEST_ITEM1) == 300 && st.getQuestItemsCount(QUEST_ITEM2) == 1)
{
st.playSound(SOUND_MIDDLE);
st.setCond(2);
}
else
st.playSound(SOUND_ITEMGET);
}
return null;
}
@Override
public void onLoad()
{}
@Override
public void onReload()
{}
@Override
public void onShutdown()
{}
}
package quests;
import l2.commons.util.Rnd;
import l2.gameserver.model.instances.NpcInstance;
import l2.gameserver.model.quest.Quest;
import l2.gameserver.model.quest.QuestState;
import l2.gameserver.scripts.ScriptFile;
public class _933_WingsQuest extends Quest implements ScriptFile
{
//NPC
private static int START_NPC = 40031;
//MOB
private static int MOBS_NPC = 40029;
private static int BOSS_NPC = 40030;
//Quest items
private static int QUEST_ITEM1 = 10004;
private static int QUEST_ITEM2 = 10005;
private static int REWARD_ITEM = 10006;
public _933_WingsQuest()
{
super(true);
addStartNpc(START_NPC);
addKillId(MOBS_NPC,BOSS_NPC);
addQuestItem(QUEST_ITEM1,QUEST_ITEM2,REWARD_ITEM);
}
@Override
public String onEvent(String event, QuestState st, NpcInstance npc)
{
String htmltext = event;
if(event.equalsIgnoreCase("rb_wings_q0933_0104.htm"))
{
st.setState(STARTED);
st.setCond(1);
st.playSound(SOUND_ACCEPT);
}
else if(event.equalsIgnoreCase("rb_wings_q0933_0201.htm"))
if(st.getQuestItemsCount(QUEST_ITEM1) == 300 && st.getQuestItemsCount(QUEST_ITEM2) == 1)
{
st.takeItems(QUEST_ITEM1, -1);
st.takeItems(QUEST_ITEM2, -1);
st.giveItems(REWARD_ITEM, 1);
st.playSound(SOUND_FINISH);
st.exitCurrentQuest(true);
}
else
htmltext = "rb_wings_q0933_0202.htm";
return htmltext;
}
@Override
public String onTalk(NpcInstance npc, QuestState st)
{
String htmltext = "noquest";
int condition = st.getCond();
int npcId = npc.getNpcId();
if(npcId == START_NPC)
if(condition == 0)
{
htmltext = "rb_wings_q0933_0101.htm";
}
else if(condition == 1)
htmltext = "rb_wings_q0933_0106.htm";
else if(condition == 2 && st.getQuestItemsCount(QUEST_ITEM1) == 300 && st.getQuestItemsCount(QUEST_ITEM2) == 1)
htmltext = "rb_wings_q0933_0105.htm";
return htmltext;
}
@Override
public String onKill(NpcInstance npc, QuestState st)
{
if(st.getState() != STARTED)
return null;
int npcId = npc.getNpcId();
if(npcId == MOBS_NPC)
{
if(st.getCond() == 1 && Rnd.chance(70) && st.getQuestItemsCount(QUEST_ITEM1) < 300)
{
st.giveItems(QUEST_ITEM1, 1);
}
if(npcId == BOSS_NPC)
{
if(st.getCond() == 1 && st.getQuestItemsCount(QUEST_ITEM2) < 1)
{
st.giveItems(QUEST_ITEM2, 1);
}
}
if(st.getCond() == 1 && st.getQuestItemsCount(QUEST_ITEM1) == 300 && st.getQuestItemsCount(QUEST_ITEM2) == 1)
{
st.playSound(SOUND_MIDDLE);
st.setCond(2);
}
else
st.playSound(SOUND_ITEMGET);
}
return null;
}
@Override
public void onLoad()
{}
@Override
public void onReload()
{}
@Override
public void onShutdown()
{}
}