From 5056bd2e242db2ceae6dafb7ead2ea85976f7de0 Mon Sep 17 00:00:00 2001
From: Zoey76 <zoey_76@msn.com>
Date: Tue, 28 Jan 2014 10:49:00 +0000
Subject: [PATCH] BETA: Minor script fixes: 	* Sailren item take fix. 
 * Pailaka - Song of Ice and Fire fix for script value from [9665]. 	
 * Reported by: St3eT 	* Grim Collector (325) misleading use of `ItemHolder`
 fix.

---
 .../ai/individual/Sailren/Sailren.java        |  2 +-
 .../Pailaka/PailakaSongOfIceAndFire.java      |  6 ++--
 .../Q00325_GrimCollector.java                 | 28 +++++++++----------
 3 files changed, 17 insertions(+), 19 deletions(-)

diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/ai/individual/Sailren/Sailren.java b/L2J_DataPack_BETA/dist/game/data/scripts/ai/individual/Sailren/Sailren.java
index 8aec88bc9f..f0d34c09f8 100644
--- a/L2J_DataPack_BETA/dist/game/data/scripts/ai/individual/Sailren/Sailren.java
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/ai/individual/Sailren/Sailren.java
@@ -120,7 +120,7 @@ public final class Sailren extends AbstractNpcAI
 				}
 				else
 				{
-					takeItems(player, 1, GAZKH);
+					takeItems(player, GAZKH, 1);
 					STATUS = Status.IN_FIGHT;
 					_lastAttack = System.currentTimeMillis();
 					for (L2PcInstance member : player.getParty().getMembers())
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/instances/Pailaka/PailakaSongOfIceAndFire.java b/L2J_DataPack_BETA/dist/game/data/scripts/instances/Pailaka/PailakaSongOfIceAndFire.java
index 5b6e7c8333..6bcbdb0676 100644
--- a/L2J_DataPack_BETA/dist/game/data/scripts/instances/Pailaka/PailakaSongOfIceAndFire.java
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/instances/Pailaka/PailakaSongOfIceAndFire.java
@@ -190,8 +190,6 @@ public final class PailakaSongOfIceAndFire extends Quest
 		13293,
 		13129
 	};
-	/** Flag for "see creature". */
-	private boolean _seenCreature = false;
 	
 	private PailakaSongOfIceAndFire()
 	{
@@ -534,9 +532,9 @@ public final class PailakaSongOfIceAndFire extends Quest
 	@Override
 	public String onSeeCreature(L2Npc npc, L2Character creature, boolean isSummon)
 	{
-		if (!_seenCreature && creature.isPlayer())
+		if (npc.isScriptValue(0) && creature.isPlayer())
 		{
-			_seenCreature = true;
+			npc.setScriptValue(1);
 			startQuestTimer("GARGOS_LAUGH", 1000, npc, creature.getActingPlayer());
 		}
 		return super.onSeeCreature(npc, creature, isSummon);
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00325_GrimCollector/Q00325_GrimCollector.java b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00325_GrimCollector/Q00325_GrimCollector.java
index d3b5ea77c3..055f9d600f 100644
--- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00325_GrimCollector/Q00325_GrimCollector.java
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00325_GrimCollector/Q00325_GrimCollector.java
@@ -25,7 +25,7 @@ import java.util.Map;
 
 import com.l2jserver.gameserver.model.actor.L2Npc;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
-import com.l2jserver.gameserver.model.holders.ItemHolder;
+import com.l2jserver.gameserver.model.holders.QuestItemHolder;
 import com.l2jserver.gameserver.model.quest.Quest;
 import com.l2jserver.gameserver.model.quest.QuestState;
 import com.l2jserver.gameserver.model.quest.State;
@@ -55,19 +55,19 @@ public final class Q00325_GrimCollector extends Quest
 	// Misc
 	private static final int MIN_LEVEL = 15;
 	// Monsters
-	private static final Map<Integer, List<ItemHolder>> MONSTER_DROPS = new HashMap<>();
+	private static final Map<Integer, List<QuestItemHolder>> MONSTER_DROPS = new HashMap<>();
 	static
 	{
-		MONSTER_DROPS.put(20026, Arrays.asList(new ItemHolder(ZOMBIE_HEAD, 30), new ItemHolder(ZOMBIE_HEART, 50), new ItemHolder(ZOMBIE_LIVER, 75)));
-		MONSTER_DROPS.put(20029, Arrays.asList(new ItemHolder(ZOMBIE_HEAD, 30), new ItemHolder(ZOMBIE_HEART, 52), new ItemHolder(ZOMBIE_LIVER, 75)));
-		MONSTER_DROPS.put(20035, Arrays.asList(new ItemHolder(SKULL, 5), new ItemHolder(RIB_BONE, 15), new ItemHolder(SPINE, 29), new ItemHolder(THIGH_BONE, 79)));
-		MONSTER_DROPS.put(20042, Arrays.asList(new ItemHolder(SKULL, 6), new ItemHolder(RIB_BONE, 19), new ItemHolder(ARM_BONE, 69), new ItemHolder(THIGH_BONE, 86)));
-		MONSTER_DROPS.put(20045, Arrays.asList(new ItemHolder(SKULL, 9), new ItemHolder(SPINE, 59), new ItemHolder(ARM_BONE, 77), new ItemHolder(THIGH_BONE, 97)));
-		MONSTER_DROPS.put(20051, Arrays.asList(new ItemHolder(SKULL, 9), new ItemHolder(RIB_BONE, 59), new ItemHolder(SPINE, 79), new ItemHolder(ARM_BONE, 100)));
-		MONSTER_DROPS.put(20457, Arrays.asList(new ItemHolder(ZOMBIE_HEAD, 40), new ItemHolder(ZOMBIE_HEART, 60), new ItemHolder(ZOMBIE_LIVER, 80)));
-		MONSTER_DROPS.put(20458, Arrays.asList(new ItemHolder(ZOMBIE_HEAD, 40), new ItemHolder(ZOMBIE_HEART, 70), new ItemHolder(ZOMBIE_LIVER, 100)));
-		MONSTER_DROPS.put(20514, Arrays.asList(new ItemHolder(SKULL, 6), new ItemHolder(RIB_BONE, 21), new ItemHolder(SPINE, 30), new ItemHolder(ARM_BONE, 31), new ItemHolder(THIGH_BONE, 64)));
-		MONSTER_DROPS.put(20515, Arrays.asList(new ItemHolder(SKULL, 5), new ItemHolder(RIB_BONE, 20), new ItemHolder(SPINE, 31), new ItemHolder(ARM_BONE, 33), new ItemHolder(THIGH_BONE, 69)));
+		MONSTER_DROPS.put(20026, Arrays.asList(new QuestItemHolder(ZOMBIE_HEAD, 30), new QuestItemHolder(ZOMBIE_HEART, 50), new QuestItemHolder(ZOMBIE_LIVER, 75)));
+		MONSTER_DROPS.put(20029, Arrays.asList(new QuestItemHolder(ZOMBIE_HEAD, 30), new QuestItemHolder(ZOMBIE_HEART, 52), new QuestItemHolder(ZOMBIE_LIVER, 75)));
+		MONSTER_DROPS.put(20035, Arrays.asList(new QuestItemHolder(SKULL, 5), new QuestItemHolder(RIB_BONE, 15), new QuestItemHolder(SPINE, 29), new QuestItemHolder(THIGH_BONE, 79)));
+		MONSTER_DROPS.put(20042, Arrays.asList(new QuestItemHolder(SKULL, 6), new QuestItemHolder(RIB_BONE, 19), new QuestItemHolder(ARM_BONE, 69), new QuestItemHolder(THIGH_BONE, 86)));
+		MONSTER_DROPS.put(20045, Arrays.asList(new QuestItemHolder(SKULL, 9), new QuestItemHolder(SPINE, 59), new QuestItemHolder(ARM_BONE, 77), new QuestItemHolder(THIGH_BONE, 97)));
+		MONSTER_DROPS.put(20051, Arrays.asList(new QuestItemHolder(SKULL, 9), new QuestItemHolder(RIB_BONE, 59), new QuestItemHolder(SPINE, 79), new QuestItemHolder(ARM_BONE, 100)));
+		MONSTER_DROPS.put(20457, Arrays.asList(new QuestItemHolder(ZOMBIE_HEAD, 40), new QuestItemHolder(ZOMBIE_HEART, 60), new QuestItemHolder(ZOMBIE_LIVER, 80)));
+		MONSTER_DROPS.put(20458, Arrays.asList(new QuestItemHolder(ZOMBIE_HEAD, 40), new QuestItemHolder(ZOMBIE_HEART, 70), new QuestItemHolder(ZOMBIE_LIVER, 100)));
+		MONSTER_DROPS.put(20514, Arrays.asList(new QuestItemHolder(SKULL, 6), new QuestItemHolder(RIB_BONE, 21), new QuestItemHolder(SPINE, 30), new QuestItemHolder(ARM_BONE, 31), new QuestItemHolder(THIGH_BONE, 64)));
+		MONSTER_DROPS.put(20515, Arrays.asList(new QuestItemHolder(SKULL, 5), new QuestItemHolder(RIB_BONE, 20), new QuestItemHolder(SPINE, 31), new QuestItemHolder(ARM_BONE, 33), new QuestItemHolder(THIGH_BONE, 69)));
 	}
 	
 	private Q00325_GrimCollector(int questId, String name, String descr)
@@ -203,9 +203,9 @@ public final class Q00325_GrimCollector extends Quest
 		}
 		
 		final int rnd = getRandom(100);
-		for (ItemHolder drop : MONSTER_DROPS.get(npc.getId()))
+		for (QuestItemHolder drop : MONSTER_DROPS.get(npc.getId()))
 		{
-			if (rnd < drop.getCount())
+			if (rnd < drop.getChance())
 			{
 				qs.giveItemRandomly(npc, drop.getId(), 1, 0, 1.0, true);
 				break;
-- 
GitLab