Instructions Jenkins Doxygen

[added] Polished Krayt Dragon Skull Epic Quest 41/2041/2
authorMiztah <myztah@gmail.com>
Sat, 12 Jul 2014 16:24:02 +0000 (16:24 +0000)
committerMiztah <myztah@gmail.com>
Sat, 12 Jul 2014 18:24:28 +0000 (18:24 +0000)
[updated] Themepark logic's prerequisite item handling
[added] Screenplay state quest prerequisite capability to themepark
logic

Change-Id: I2e2ba3303c859f496efb123474815e04bffedfe6

42 files changed:
MMOCoreORB/bin/scripts/loot/groups.lua
MMOCoreORB/bin/scripts/loot/groups/task_loot/task_loot_kavas_briefcase.lua [deleted file]
MMOCoreORB/bin/scripts/loot/groups/task_loot/task_loot_quest_briefcase.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/loot/groups/task_loot/task_loot_quest_keepsakes.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/loot/groups/task_loot/task_loot_quest_ledger.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/loot/groups/task_reward/task_reward_huff_quest_borvos_money.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/loot/groups/task_reward/task_reward_huff_quest_corsec_badge.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/loot/groups/task_reward/task_reward_huff_quest_krayt_dragon_skull.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/loot/groups/task_reward/task_reward_huff_quest_tusken_king_rifle.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/loot/items.lua
MMOCoreORB/bin/scripts/loot/items/task_loot/quest_briefcase.lua [moved from MMOCoreORB/bin/scripts/loot/items/task_loot/kavas_briefcase.lua with 74% similarity]
MMOCoreORB/bin/scripts/loot/items/task_loot/quest_keepsakes.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/loot/items/task_loot/quest_ledger.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/loot/items/task_reward/huff_quest_borvos_money.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/loot/items/task_reward/huff_quest_corsec_badge.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/loot/items/task_reward/huff_quest_krayt_dragon_skull.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/loot/items/task_reward/huff_quest_tusken_king_rifle.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/mobile/conversations/themepark/logic/mission_giver_conv.lua
MMOCoreORB/bin/scripts/mobile/conversations/themepark/logic/mission_target_conv.lua
MMOCoreORB/bin/scripts/mobile/corellia/serverobjects.lua
MMOCoreORB/bin/scripts/mobile/naboo/serverobjects.lua
MMOCoreORB/bin/scripts/mobile/quest/corellia/maerzen.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/mobile/quest/corellia/thale_dustrunner.lua [moved from MMOCoreORB/bin/scripts/mobile/corellia/thale_dustrunner.lua with 88% similarity]
MMOCoreORB/bin/scripts/mobile/quest/naboo/borvo_the_hutt.lua [moved from MMOCoreORB/bin/scripts/mobile/naboo/borvo_the_hutt.lua with 87% similarity]
MMOCoreORB/bin/scripts/mobile/quest/naboo/borvos_guard.lua [moved from MMOCoreORB/bin/scripts/mobile/naboo/borvos_guard.lua with 88% similarity]
MMOCoreORB/bin/scripts/mobile/quest/naboo/dagorel.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/mobile/quest/naboo/frangee.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/mobile/quest/naboo/montrus.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/mobile/quest/naboo/srio.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/mobile/quest/serverobjects.lua
MMOCoreORB/bin/scripts/mobile/quest/tatooine/huff_darklighter.lua [moved from MMOCoreORB/bin/scripts/mobile/tatooine/huff_darklighter.lua with 87% similarity]
MMOCoreORB/bin/scripts/mobile/quest/tatooine/huff_delivery_guy.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/mobile/quest/tatooine/huff_niece.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/mobile/quest/tatooine/huffs_guard.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/mobile/quest/tatooine/kavas_jabba_assassin.lua
MMOCoreORB/bin/scripts/mobile/tatooine/serverobjects.lua
MMOCoreORB/bin/scripts/screenplays/cities/corellia_coronet.lua
MMOCoreORB/bin/scripts/screenplays/screenplays.lua
MMOCoreORB/bin/scripts/screenplays/tasks/epic_quests/kraytDragonSkull.lua [new file with mode: 0644]
MMOCoreORB/bin/scripts/screenplays/tasks/epic_quests/zicxBugBomb.lua
MMOCoreORB/bin/scripts/screenplays/themepark/conversations/mission_giver_conv_handler.lua
MMOCoreORB/bin/scripts/screenplays/themepark/themeParkLogic.lua

index 97a6c13..b95d9f4 100644 (file)
@@ -153,7 +153,9 @@ includeFile("groups/task_loot/task_loot_haleen_snowline_evidence.lua")
 includeFile("groups/task_loot/task_loot_igbi_freemo_spice.lua")
 includeFile("groups/task_loot/task_loot_ind_petrified_avian_egg.lua")
 includeFile("groups/task_loot/task_loot_kaeline_ungasan_jabbas_enforcers.lua")
-includeFile("groups/task_loot/task_loot_kavas_briefcase.lua")
+includeFile("groups/task_loot/task_loot_quest_briefcase.lua")
+includeFile("groups/task_loot/task_loot_quest_keepsakes.lua")
+includeFile("groups/task_loot/task_loot_quest_ledger.lua")
 includeFile("groups/task_loot/task_loot_lian_byrne_rebel_spy_report.lua")
 includeFile("groups/task_loot/task_loot_mozo_bondog_bondogs_backpack.lua")
 includeFile("groups/task_loot/task_loot_nurla_slinthiss_datadisc.lua")
@@ -179,6 +181,10 @@ includeFile("groups/task_reward/task_reward_bren_kingal_q3.lua")
 includeFile("groups/task_reward/task_reward_bren_kingal_q4.lua")
 includeFile("groups/task_reward/task_reward_drakka_judarrl.lua")
 includeFile("groups/task_reward/task_reward_hedon_istee.lua")
+includeFile("groups/task_reward/task_reward_huff_quest_borvos_money.lua")
+includeFile("groups/task_reward/task_reward_huff_quest_corsec_badge.lua")
+includeFile("groups/task_reward/task_reward_huff_quest_krayt_dragon_skull.lua")
+includeFile("groups/task_reward/task_reward_huff_quest_tusken_king_rifle.lua")
 includeFile("groups/task_reward/task_reward_ind_q1.lua")
 includeFile("groups/task_reward/task_reward_ind_q3.lua")
 includeFile("groups/task_reward/task_reward_jatrian_lytus.lua")
diff --git a/MMOCoreORB/bin/scripts/loot/groups/task_loot/task_loot_kavas_briefcase.lua b/MMOCoreORB/bin/scripts/loot/groups/task_loot/task_loot_kavas_briefcase.lua
deleted file mode 100644 (file)
index 2691330..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-task_loot_kavas_briefcase = {
-       description = "",
-       minimumLevel = 0,
-       maximumLevel = 0,
-       lootItems = {
-               {itemTemplate = "kavas_briefcase", weight = 10000000}
-       }
-}
-
-addLootGroupTemplate("task_loot_kavas_briefcase", task_loot_kavas_briefcase)
\ No newline at end of file
diff --git a/MMOCoreORB/bin/scripts/loot/groups/task_loot/task_loot_quest_briefcase.lua b/MMOCoreORB/bin/scripts/loot/groups/task_loot/task_loot_quest_briefcase.lua
new file mode 100644 (file)
index 0000000..cc5e2a8
--- /dev/null
@@ -0,0 +1,10 @@
+task_loot_quest_briefcase = {
+       description = "",
+       minimumLevel = 0,
+       maximumLevel = 0,
+       lootItems = {
+               {itemTemplate = "quest_briefcase", weight = 10000000}
+       }
+}
+
+addLootGroupTemplate("task_loot_quest_briefcase", task_loot_quest_briefcase)
\ No newline at end of file
diff --git a/MMOCoreORB/bin/scripts/loot/groups/task_loot/task_loot_quest_keepsakes.lua b/MMOCoreORB/bin/scripts/loot/groups/task_loot/task_loot_quest_keepsakes.lua
new file mode 100644 (file)
index 0000000..11bb8d3
--- /dev/null
@@ -0,0 +1,10 @@
+task_loot_quest_keepsakes = {
+       description = "",
+       minimumLevel = 0,
+       maximumLevel = 0,
+       lootItems = {
+               {itemTemplate = "quest_keepsakes", weight = 10000000}
+       }
+}
+
+addLootGroupTemplate("task_loot_quest_keepsakes", task_loot_quest_keepsakes)
\ No newline at end of file
diff --git a/MMOCoreORB/bin/scripts/loot/groups/task_loot/task_loot_quest_ledger.lua b/MMOCoreORB/bin/scripts/loot/groups/task_loot/task_loot_quest_ledger.lua
new file mode 100644 (file)
index 0000000..83c3890
--- /dev/null
@@ -0,0 +1,10 @@
+task_loot_quest_ledger = {
+       description = "",
+       minimumLevel = 0,
+       maximumLevel = 0,
+       lootItems = {
+               {itemTemplate = "quest_ledger", weight = 10000000}
+       }
+}
+
+addLootGroupTemplate("task_loot_quest_ledger", task_loot_quest_ledger)
\ No newline at end of file
diff --git a/MMOCoreORB/bin/scripts/loot/groups/task_reward/task_reward_huff_quest_borvos_money.lua b/MMOCoreORB/bin/scripts/loot/groups/task_reward/task_reward_huff_quest_borvos_money.lua
new file mode 100644 (file)
index 0000000..a8b6869
--- /dev/null
@@ -0,0 +1,10 @@
+task_reward_huff_quest_borvos_money = {
+       description = "",
+       minimumLevel = 0,
+       maximumLevel = 0,
+       lootItems = {
+               {itemTemplate = "huff_quest_borvos_money", weight = 10000000}
+       }
+}
+
+addLootGroupTemplate("task_reward_huff_quest_borvos_money", task_reward_huff_quest_borvos_money)
\ No newline at end of file
diff --git a/MMOCoreORB/bin/scripts/loot/groups/task_reward/task_reward_huff_quest_corsec_badge.lua b/MMOCoreORB/bin/scripts/loot/groups/task_reward/task_reward_huff_quest_corsec_badge.lua
new file mode 100644 (file)
index 0000000..aec2542
--- /dev/null
@@ -0,0 +1,10 @@
+task_reward_huff_quest_corsec_badge = {
+       description = "",
+       minimumLevel = 0,
+       maximumLevel = 0,
+       lootItems = {
+               {itemTemplate = "huff_quest_corsec_badge", weight = 10000000}
+       }
+}
+
+addLootGroupTemplate("task_reward_huff_quest_corsec_badge", task_reward_huff_quest_corsec_badge)
\ No newline at end of file
diff --git a/MMOCoreORB/bin/scripts/loot/groups/task_reward/task_reward_huff_quest_krayt_dragon_skull.lua b/MMOCoreORB/bin/scripts/loot/groups/task_reward/task_reward_huff_quest_krayt_dragon_skull.lua
new file mode 100644 (file)
index 0000000..cf3a0d9
--- /dev/null
@@ -0,0 +1,10 @@
+task_reward_huff_quest_krayt_dragon_skull = {
+       description = "",
+       minimumLevel = 0,
+       maximumLevel = 0,
+       lootItems = {
+               {itemTemplate = "huff_quest_krayt_dragon_skull", weight = 10000000}
+       }
+}
+
+addLootGroupTemplate("task_reward_huff_quest_krayt_dragon_skull", task_reward_huff_quest_krayt_dragon_skull)
\ No newline at end of file
diff --git a/MMOCoreORB/bin/scripts/loot/groups/task_reward/task_reward_huff_quest_tusken_king_rifle.lua b/MMOCoreORB/bin/scripts/loot/groups/task_reward/task_reward_huff_quest_tusken_king_rifle.lua
new file mode 100644 (file)
index 0000000..81e6363
--- /dev/null
@@ -0,0 +1,10 @@
+task_reward_huff_quest_tusken_king_rifle = {
+       description = "",
+       minimumLevel = 0,
+       maximumLevel = 0,
+       lootItems = {
+               {itemTemplate = "huff_quest_tusken_king_rifle", weight = 10000000}
+       }
+}
+
+addLootGroupTemplate("task_reward_huff_quest_tusken_king_rifle", task_reward_huff_quest_tusken_king_rifle)
\ No newline at end of file
index 0028544..cd59044 100644 (file)
@@ -497,7 +497,9 @@ includeFile("items/task_loot/draya_korbinari_art_holo.lua")
 includeFile("items/task_loot/gins_darone_special_forces_vibroknuckler.lua")
 includeFile("items/task_loot/gins_darone_stranded_rebels_weapon.lua")
 includeFile("items/task_loot/ind_petrified_avian_egg.lua")
-includeFile("items/task_loot/kavas_briefcase.lua")
+includeFile("items/task_loot/quest_briefcase.lua")
+includeFile("items/task_loot/quest_keepsakes.lua")
+includeFile("items/task_loot/quest_ledger.lua")
 includeFile("items/task_loot/lian_byrne_rebel_spy_report.lua")
 includeFile("items/task_loot/grizzled_dewback_hide.lua")
 includeFile("items/task_loot/haleen_snowline_evidence.lua")
@@ -527,6 +529,10 @@ includeFile("items/task_reward/bren_kingal_eopie_cream_pie.lua")
 includeFile("items/task_reward/bren_kingal_tusken_bread.lua")
 includeFile("items/task_reward/bren_kingal_worrt_casserole.lua")
 includeFile("items/task_reward/hedon_istee_treasure_map.lua")
+includeFile("items/task_reward/huff_quest_borvos_money.lua")
+includeFile("items/task_reward/huff_quest_corsec_badge.lua")
+includeFile("items/task_reward/huff_quest_krayt_dragon_skull.lua")
+includeFile("items/task_reward/huff_quest_tusken_king_rifle.lua")
 includeFile("items/task_reward/ind_mystical_orb.lua")
 includeFile("items/task_reward/ind_republic_blaster.lua")
 includeFile("items/task_reward/kitster_banai_anakin_droid_brain.lua")
@@ -1,4 +1,4 @@
-kavas_briefcase = {
+quest_briefcase = {
        minimumLevel = 0,
        maximumLevel = 0,
        customObjectName = "",
@@ -8,4 +8,4 @@ kavas_briefcase = {
        customizationValues = {}
 }
 
-addLootItemTemplate("kavas_briefcase", kavas_briefcase)
\ No newline at end of file
+addLootItemTemplate("quest_briefcase", quest_briefcase)
\ No newline at end of file
diff --git a/MMOCoreORB/bin/scripts/loot/items/task_loot/quest_keepsakes.lua b/MMOCoreORB/bin/scripts/loot/items/task_loot/quest_keepsakes.lua
new file mode 100644 (file)
index 0000000..b68680b
--- /dev/null
@@ -0,0 +1,11 @@
+quest_keepsakes = {
+       minimumLevel = 0,
+       maximumLevel = 0,
+       customObjectName = "",
+       directObjectTemplate = "object/tangible/loot/misc/keepsakes.iff",
+       craftingValues = {},
+       customizationStringNames = {},
+       customizationValues = {}
+}
+
+addLootItemTemplate("quest_keepsakes", quest_keepsakes)
\ No newline at end of file
diff --git a/MMOCoreORB/bin/scripts/loot/items/task_loot/quest_ledger.lua b/MMOCoreORB/bin/scripts/loot/items/task_loot/quest_ledger.lua
new file mode 100644 (file)
index 0000000..c83b4a5
--- /dev/null
@@ -0,0 +1,11 @@
+quest_ledger = {
+       minimumLevel = 0,
+       maximumLevel = 0,
+       customObjectName = "",
+       directObjectTemplate = "object/tangible/loot/misc/ledger_s01.iff",
+       craftingValues = {},
+       customizationStringNames = {},
+       customizationValues = {}
+}
+
+addLootItemTemplate("quest_ledger", quest_ledger)
\ No newline at end of file
diff --git a/MMOCoreORB/bin/scripts/loot/items/task_reward/huff_quest_borvos_money.lua b/MMOCoreORB/bin/scripts/loot/items/task_reward/huff_quest_borvos_money.lua
new file mode 100644 (file)
index 0000000..0ad252e
--- /dev/null
@@ -0,0 +1,14 @@
+huff_quest_borvos_money = {
+       minimumLevel = 0,
+       maximumLevel = -1,
+       customObjectName = "",
+       directObjectTemplate = "object/tangible/loot/quest/huff_quest_borvos_money.iff",
+       craftingValues = {},
+       customizationStringNames = {},
+       customizationValues = {},
+       skillMods = {
+
+       }
+}
+
+addLootItemTemplate("huff_quest_borvos_money", huff_quest_borvos_money)
\ No newline at end of file
diff --git a/MMOCoreORB/bin/scripts/loot/items/task_reward/huff_quest_corsec_badge.lua b/MMOCoreORB/bin/scripts/loot/items/task_reward/huff_quest_corsec_badge.lua
new file mode 100644 (file)
index 0000000..d80128c
--- /dev/null
@@ -0,0 +1,14 @@
+huff_quest_corsec_badge = {
+       minimumLevel = 0,
+       maximumLevel = -1,
+       customObjectName = "",
+       directObjectTemplate = "object/tangible/loot/quest/huff_quest_corsec_badge.iff",
+       craftingValues = {},
+       customizationStringNames = {},
+       customizationValues = {},
+       skillMods = {
+
+       }
+}
+
+addLootItemTemplate("huff_quest_corsec_badge", huff_quest_corsec_badge)
\ No newline at end of file
diff --git a/MMOCoreORB/bin/scripts/loot/items/task_reward/huff_quest_krayt_dragon_skull.lua b/MMOCoreORB/bin/scripts/loot/items/task_reward/huff_quest_krayt_dragon_skull.lua
new file mode 100644 (file)
index 0000000..8cf48a9
--- /dev/null
@@ -0,0 +1,14 @@
+huff_quest_krayt_dragon_skull = {
+       minimumLevel = 0,
+       maximumLevel = -1,
+       customObjectName = "",
+       directObjectTemplate = "object/tangible/loot/quest/frn_quest_krayt_skull_01.iff",
+       craftingValues = {},
+       customizationStringNames = {},
+       customizationValues = {},
+       skillMods = {
+
+       }
+}
+
+addLootItemTemplate("huff_quest_krayt_dragon_skull", huff_quest_krayt_dragon_skull)
\ No newline at end of file
diff --git a/MMOCoreORB/bin/scripts/loot/items/task_reward/huff_quest_tusken_king_rifle.lua b/MMOCoreORB/bin/scripts/loot/items/task_reward/huff_quest_tusken_king_rifle.lua
new file mode 100644 (file)
index 0000000..46db65a
--- /dev/null
@@ -0,0 +1,14 @@
+huff_quest_tusken_king_rifle = {
+       minimumLevel = 0,
+       maximumLevel = -1,
+       customObjectName = "",
+       directObjectTemplate = "object/tangible/loot/quest/rifle_quest_tusken.iff",
+       craftingValues = {},
+       customizationStringNames = {},
+       customizationValues = {},
+       skillMods = {
+
+       }
+}
+
+addLootItemTemplate("huff_quest_tusken_king_rifle", huff_quest_tusken_king_rifle)
\ No newline at end of file
index a2644eb..fd89c23 100644 (file)
@@ -245,6 +245,7 @@ createMissionGiverConvoTemplate("theme_park_valarian_mission_giver_convotemplate
 
 -- Epic Quest Chains
 createMissionGiverConvoTemplate("zicx_bug_bomb_mission_giver_convotemplate", "zicx_bug_bomb_mission_giver_conv_handler")
+createMissionGiverConvoTemplate("krayt_dragon_skull_mission_giver_convotemplate", "krayt_dragon_skull_mission_giver_conv_handler")
 
 -- Tatooine
 createMissionGiverConvoTemplate("hedon_istee_mission_giver_convotemplate", "hedon_istee_mission_giver_conv_handler")
index 6251d93..8b72a05 100644 (file)
@@ -99,6 +99,7 @@ createMissionTargetConvoTemplate("theme_park_valarian_mission_target_convotempla
 
 -- Epic Quest Chains
 createMissionTargetConvoTemplate("zicx_bug_bomb_mission_target_convotemplate","zicx_bug_bomb_mission_target_conv_handler")
+createMissionTargetConvoTemplate("krayt_dragon_skull_mission_target_convotemplate","krayt_dragon_skull_mission_target_conv_handler")
 
 -- Tatooine
 createMissionTargetConvoTemplate("hedon_istee_mission_target_convotemplate","hedon_istee_mission_target_conv_handler")
index c0631fd..b7fba4e 100644 (file)
@@ -231,7 +231,6 @@ includeFile("corellia/tabage.lua")
 includeFile("corellia/tabage_protector.lua")
 includeFile("corellia/tabage_scavenger.lua")
 includeFile("corellia/talon_karrde.lua")
-includeFile("corellia/thale_dustrunner.lua")
 includeFile("corellia/thracken_sal_solo.lua")
 includeFile("corellia/vehement_warrior.lua")
 includeFile("corellia/venthan_chassu.lua")
index 061485d..c117038 100644 (file)
@@ -12,12 +12,10 @@ includeFile("naboo/bark_mite.lua")
 includeFile("naboo/bolle_bol.lua")
 includeFile("naboo/borvos_bruiser.lua")
 includeFile("naboo/borvos_champion.lua")
-includeFile("naboo/borvos_guard.lua")
 includeFile("naboo/borvos_mercenary.lua")
 includeFile("naboo/borvos_soldier.lua")
 includeFile("naboo/borvos_thief.lua")
 includeFile("naboo/borvos_thug.lua")
-includeFile("naboo/borvo_the_hutt.lua")
 includeFile("naboo/brass_marshoo.lua")
 includeFile("naboo/brennis_doore.lua")
 includeFile("naboo/capper_spineflap_drone.lua")
diff --git a/MMOCoreORB/bin/scripts/mobile/quest/corellia/maerzen.lua b/MMOCoreORB/bin/scripts/mobile/quest/corellia/maerzen.lua
new file mode 100644 (file)
index 0000000..781a70a
--- /dev/null
@@ -0,0 +1,50 @@
+maerzen = Creature:new {
+       objectName = "",
+       socialGroup = "",
+       pvpFaction = "",
+       faction = "",
+       level = 9,
+       chanceHit = 0.270000,
+       damageMin = 80,
+       damageMax = 90,
+       baseXp = 235,
+       baseHAM = 675,
+       baseHAMmax = 825,
+       armor = 0,
+       resists = {0,0,0,0,0,0,0,-1,-1},
+       meatType = "",
+       meatAmount = 0,
+       hideType = "",
+       hideAmount = 0,
+       boneType = "",
+       boneAmount = 0,
+       milk = 0,
+       tamingChance = 0.000000,
+       ferocity = 0,
+       pvpBitmask = ATTACKABLE,
+       creatureBitmask = STALKER,
+       diet = HERBIVORE,
+
+       templates = {
+               "object/mobile/dressed_criminal_thug_aqualish_male_01.iff",
+               "object/mobile/dressed_criminal_thug_aqualish_male_02.iff",
+               "object/mobile/dressed_criminal_thug_bothan_male_01.iff",
+               "object/mobile/dressed_criminal_thug_human_male_01.iff",
+               "object/mobile/dressed_criminal_thug_human_male_02.iff",
+               "object/mobile/dressed_criminal_thug_rodian_male_01.iff",
+               "object/mobile/dressed_criminal_thug_trandoshan_male_01.iff",
+               "object/mobile/dressed_criminal_thug_zabrak_male_01.iff",
+       },
+       lootGroups = {
+               {
+                       groups = {
+                               {group = "task_loot_quest_briefcase", chance = 10000000}
+                       },
+                       lootChance = 10000000
+               }
+       },
+       weapons = {"pirate_weapons_light"},
+       attacks = merge(riflemanmaster,pistoleermaster,carbineermaster,brawlermaster)
+}
+
+CreatureTemplates:addCreatureTemplate(maerzen, "maerzen")
\ No newline at end of file
@@ -24,13 +24,13 @@ thale_dustrunner = Creature:new {
        ferocity = 0,
        pvpBitmask = NONE,
        creatureBitmask = HERD,
-       optionsBitmask = 128,
+       optionsBitmask = 136,
        diet = HERBIVORE,
 
        templates = {"object/mobile/dressed_criminal_smuggler_human_male_01.iff"},
        lootGroups = {},
        weapons = {},
-       conversationTemplate = "",
+       conversationTemplate = "krayt_dragon_skull_mission_giver_convotemplate",
        attacks = {
        }
 }
@@ -23,13 +23,13 @@ borvo_the_hutt = Creature:new {
        ferocity = 0,
        pvpBitmask = NONE,
        creatureBitmask = NONE,
-       optionsBitmask = 128,
+       optionsBitmask = 136,
        diet = HERBIVORE,
 
        templates = {"object/mobile/borvo.iff"},
        lootGroups = {},
        weapons = {},
-       conversationTemplate = "",
+       conversationTemplate = "krayt_dragon_skull_mission_giver_convotemplate",
        attacks = {
        }
 }
@@ -24,13 +24,13 @@ borvos_guard = Creature:new {
        ferocity = 0,
        pvpBitmask = NONE,
        creatureBitmask = PACK + HERD,
-       optionsBitmask = 128,
+       optionsBitmask = 136,
        diet = HERBIVORE,
 
        templates = {"object/mobile/dressed_borvos_soldier.iff"},
        lootGroups = {},
        weapons = {"rebel_weapons_light"},
-       conversationTemplate = "",
+       conversationTemplate = "krayt_dragon_skull_mission_giver_convotemplate",
        attacks = {},
 }
 
diff --git a/MMOCoreORB/bin/scripts/mobile/quest/naboo/dagorel.lua b/MMOCoreORB/bin/scripts/mobile/quest/naboo/dagorel.lua
new file mode 100644 (file)
index 0000000..01542d6
--- /dev/null
@@ -0,0 +1,37 @@
+dagorel = Creature:new {
+       objectName = "",
+       socialGroup = "townsperson",
+       pvpFaction = "townsperson",
+       faction = "townsperson",
+       level = 9,
+       chanceHit = 0.270000,
+       damageMin = 80,
+       damageMax = 90,
+       baseXp = 235,
+       baseHAM = 675,
+       baseHAMmax = 825,
+       armor = 0,
+       resists = {15,15,15,15,15,15,15,15,-1},
+       meatType = "",
+       meatAmount = 0,
+       hideType = "",
+       hideAmount = 0,
+       boneType = "",
+       boneAmount = 0,
+       milk = 0,
+       tamingChance = 0,
+       ferocity = 0,
+       pvpBitmask = NONE,
+       creatureBitmask = PACK,
+       optionsBitmask = 136,
+       diet = HERBIVORE,
+
+       templates = {"object/mobile/quarren_male.iff"},
+       lootGroups = {},
+       weapons = {},
+       conversationTemplate = "krayt_dragon_skull_mission_target_convotemplate",
+       attacks = {
+       }
+}
+
+CreatureTemplates:addCreatureTemplate(dagorel, "dagorel")
\ No newline at end of file
diff --git a/MMOCoreORB/bin/scripts/mobile/quest/naboo/frangee.lua b/MMOCoreORB/bin/scripts/mobile/quest/naboo/frangee.lua
new file mode 100644 (file)
index 0000000..e7e7b24
--- /dev/null
@@ -0,0 +1,50 @@
+frangee = Creature:new {
+       objectName = "",
+       socialGroup = "",
+       pvpFaction = "",
+       faction = "",
+       level = 9,
+       chanceHit = 0.270000,
+       damageMin = 80,
+       damageMax = 90,
+       baseXp = 235,
+       baseHAM = 675,
+       baseHAMmax = 825,
+       armor = 0,
+       resists = {0,0,0,0,0,0,0,-1,-1},
+       meatType = "",
+       meatAmount = 0,
+       hideType = "",
+       hideAmount = 0,
+       boneType = "",
+       boneAmount = 0,
+       milk = 0,
+       tamingChance = 0.000000,
+       ferocity = 0,
+       pvpBitmask = ATTACKABLE,
+       creatureBitmask = STALKER,
+       diet = HERBIVORE,
+
+       templates = {
+               "object/mobile/dressed_criminal_thug_aqualish_male_01.iff",
+               "object/mobile/dressed_criminal_thug_aqualish_male_02.iff",
+               "object/mobile/dressed_criminal_thug_bothan_male_01.iff",
+               "object/mobile/dressed_criminal_thug_human_male_01.iff",
+               "object/mobile/dressed_criminal_thug_human_male_02.iff",
+               "object/mobile/dressed_criminal_thug_rodian_male_01.iff",
+               "object/mobile/dressed_criminal_thug_trandoshan_male_01.iff",
+               "object/mobile/dressed_criminal_thug_zabrak_male_01.iff",
+       },
+       lootGroups = {
+               {
+                       groups = {
+                               {group = "task_loot_quest_ledger", chance = 10000000}
+                       },
+                       lootChance = 10000000
+               }
+       },
+       weapons = {"pirate_weapons_light"},
+       attacks = merge(riflemanmaster,pistoleermaster,carbineermaster,brawlermaster)
+}
+
+CreatureTemplates:addCreatureTemplate(frangee, "frangee")
\ No newline at end of file
diff --git a/MMOCoreORB/bin/scripts/mobile/quest/naboo/montrus.lua b/MMOCoreORB/bin/scripts/mobile/quest/naboo/montrus.lua
new file mode 100644 (file)
index 0000000..15d9a2b
--- /dev/null
@@ -0,0 +1,45 @@
+montrus = Creature:new {
+       objectName = "",
+       socialGroup = "",
+       pvpFaction = "",
+       faction = "",
+       level = 12,
+       chanceHit = 0.29,
+       damageMin = 130,
+       damageMax = 140,
+       baseXp = 514,
+       baseHAM = 1200,
+       baseHAMmax = 1400,
+       armor = 0,
+       resists = {5,5,5,0,0,0,0,-1,-1},
+       meatType = "",
+       meatAmount = 0,
+       hideType = "",
+       hideAmount = 0,
+       boneType = "",
+       boneAmount = 0,
+       milk = 0,
+       tamingChance = 0,
+       ferocity = 0,
+       pvpBitmask = ATTACKABLE,
+       creatureBitmask = PACK + STALKER,
+       optionsBitmask = 128,
+       diet = HERBIVORE,
+
+       templates = {"object/mobile/dressed_mercenary_weak_hum_m.iff",
+               "object/mobile/dressed_mercenary_messanger_sullustan_m.iff"
+       },
+       lootGroups = {
+               {
+                       groups = {
+                               {group = "task_loot_quest_keepsakes", chance = 10000000}
+                       },
+                       lootChance = 10000000
+               }
+       },
+       weapons = {"rebel_weapons_medium"},
+       conversationTemplate = "",
+       attacks = merge(riflemanmaster,pistoleermaster,carbineermaster,brawlermaster)
+}
+
+CreatureTemplates:addCreatureTemplate(montrus, "montrus")
\ No newline at end of file
diff --git a/MMOCoreORB/bin/scripts/mobile/quest/naboo/srio.lua b/MMOCoreORB/bin/scripts/mobile/quest/naboo/srio.lua
new file mode 100644 (file)
index 0000000..edef2f8
--- /dev/null
@@ -0,0 +1,38 @@
+srio = Creature:new {
+       objectName = "",
+       socialGroup = "",
+       pvpFaction = "",
+       faction = "",
+       level = 12,
+       chanceHit = 0.29,
+       damageMin = 130,
+       damageMax = 140,
+       baseXp = 514,
+       baseHAM = 1200,
+       baseHAMmax = 1400,
+       armor = 0,
+       resists = {5,5,5,0,0,0,0,-1,-1},
+       meatType = "",
+       meatAmount = 0,
+       hideType = "",
+       hideAmount = 0,
+       boneType = "",
+       boneAmount = 0,
+       milk = 0,
+       tamingChance = 0,
+       ferocity = 0,
+       pvpBitmask = ATTACKABLE,
+       creatureBitmask = PACK + STALKER,
+       optionsBitmask = 128,
+       diet = HERBIVORE,
+
+       templates = {"object/mobile/dressed_mercenary_weak_hum_m.iff",
+                               "object/mobile/dressed_mercenary_messanger_sullustan_m.iff"
+       },
+       lootGroups = {},
+       weapons = {"rebel_weapons_medium"},
+       conversationTemplate = "",
+       attacks = merge(riflemanmaster,pistoleermaster,carbineermaster,brawlermaster)
+}
+
+CreatureTemplates:addCreatureTemplate(srio, "srio")
\ No newline at end of file
index 7c8e68e..c6e84f3 100644 (file)
@@ -16,12 +16,14 @@ includeFile("quest/corellia/kirkin_human_thug.lua")
 includeFile("quest/corellia/lacnor_liawoon.lua")
 includeFile("quest/corellia/leia_organa.lua")
 includeFile("quest/corellia/lieutenant_mien_halloor.lua")
+includeFile("quest/corellia/maerzen.lua")
 includeFile("quest/corellia/merlyx_dolv.lua")
 includeFile("quest/corellia/midgoss_dlabaninaph.lua")
 includeFile("quest/corellia/missy.lua")
 includeFile("quest/corellia/morgo_one_shot.lua")
 includeFile("quest/corellia/qualdo_herm.lua")
 includeFile("quest/corellia/r2d2.lua")
+includeFile("quest/corellia/thale_dustrunner.lua")
 includeFile("quest/corellia/theme_park_imperial_captain_sargon.lua")
 includeFile("quest/corellia/theme_park_imperial_commander.lua")
 includeFile("quest/corellia/theme_park_imperial_general_boize.lua")
@@ -168,10 +170,14 @@ includeFile("quest/naboo/alowi_fintz.lua")
 includeFile("quest/naboo/arven_wendik.lua")
 includeFile("quest/naboo/bevon_cordh.lua")
 includeFile("quest/naboo/big_blismo.lua")
+includeFile("quest/naboo/borvos_guard.lua")
+includeFile("quest/naboo/borvo_the_hutt.lua")
 includeFile("quest/naboo/boss_nass.lua")
 includeFile("quest/naboo/breggs_kertani.lua")
+includeFile("quest/naboo/dagorel.lua")
 includeFile("quest/naboo/darth_vader.lua")
 includeFile("quest/naboo/fassa.lua")
+includeFile("quest/naboo/frangee.lua")
 includeFile("quest/naboo/gavyn_sykes.lua")
 includeFile("quest/naboo/grel_rommo.lua")
 includeFile("quest/naboo/haf_mandrox.lua")
@@ -189,6 +195,7 @@ includeFile("quest/naboo/librarian.lua")
 includeFile("quest/naboo/loam_redge.lua")
 includeFile("quest/naboo/lord_hethrir.lua")
 includeFile("quest/naboo/mara_jade.lua")
+includeFile("quest/naboo/montrus.lua")
 includeFile("quest/naboo/mullud_bombo.lua")
 includeFile("quest/naboo/needia_solum.lua")
 includeFile("quest/naboo/nion_lipto.lua")
@@ -198,6 +205,7 @@ includeFile("quest/naboo/rovim_minnoni.lua")
 includeFile("quest/naboo/sentellus_gavrel.lua")
 includeFile("quest/naboo/shandara.lua")
 includeFile("quest/naboo/slym_shudee.lua")
+includeFile("quest/naboo/srio.lua")
 includeFile("quest/naboo/tamvar_senzen.lua")
 includeFile("quest/naboo/theme_park_imperial_alderaanian_leader.lua")
 includeFile("quest/naboo/theme_park_imperial_assassin.lua")
@@ -380,6 +388,10 @@ includeFile("quest/tatooine/gramm_surveyor.lua")
 includeFile("quest/tatooine/greenfingers.lua")
 includeFile("quest/tatooine/harbo_linn.lua")
 includeFile("quest/tatooine/hedon_istee.lua")
+includeFile("quest/tatooine/huff_darklighter.lua")
+includeFile("quest/tatooine/huff_delivery_guy.lua")
+includeFile("quest/tatooine/huff_niece.lua")
+includeFile("quest/tatooine/huffs_guard.lua")
 includeFile("quest/tatooine/ikka_gesul.lua")
 includeFile("quest/tatooine/ind.lua")
 includeFile("quest/tatooine/ind_jabba_enforcer.lua")
@@ -24,13 +24,13 @@ huff_darklighter = Creature:new {
        ferocity = 0,
        pvpBitmask = NONE,
        creatureBitmask = HERD,
-       optionsBitmask = 128,
+       optionsBitmask = 136,
        diet = HERBIVORE,
 
        templates = {"object/mobile/huff_darklighter.iff"},
        lootGroups = {},
        weapons = {},
-       conversationTemplate = "",
+       conversationTemplate = "krayt_dragon_skull_mission_giver_convotemplate",
        outfit = "huff_darklighter_outfit",
        attacks = {
        }
diff --git a/MMOCoreORB/bin/scripts/mobile/quest/tatooine/huff_delivery_guy.lua b/MMOCoreORB/bin/scripts/mobile/quest/tatooine/huff_delivery_guy.lua
new file mode 100644 (file)
index 0000000..2179d8d
--- /dev/null
@@ -0,0 +1,65 @@
+huff_delivery_guy = Creature:new {
+       objectName = "",
+       socialGroup = "townsperson",
+       pvpFaction = "townsperson",
+       faction = "townsperson",
+       level = 6,
+       chanceHit = 0.250000,
+       damageMin = 50,
+       damageMax = 55,
+       baseXp = 113,
+       baseHAM = 180,
+       baseHAMmax = 220,
+       armor = 0,
+       resists = {0,0,0,0,0,0,0,-1,-1},
+       meatType = "",
+       meatAmount = 0,
+       hideType = "",
+       hideAmount = 0,
+       boneType = "",
+       boneAmount = 0,
+       milk = 0,
+       tamingChance = 0.000000,
+       ferocity = 0,
+       pvpBitmask = NONE,
+       creatureBitmask = HERD,
+       optionsBitmask = 136,
+       diet = HERBIVORE,
+
+       templates = {
+               "object/mobile/dressed_noble_human_female_01.iff",
+               "object/mobile/dressed_noble_human_female_02.iff",
+               "object/mobile/dressed_noble_human_male_01.iff",
+               "object/mobile/dressed_noble_human_male_02.iff",
+               "object/mobile/dressed_noble_human_male_03.iff",
+               "object/mobile/dressed_noble_human_male_04.iff",
+               "object/mobile/dressed_commoner_fat_human_male_01.iff",
+               "object/mobile/dressed_commoner_fat_twilek_female_02.iff",
+               "object/mobile/dressed_commoner_fat_twilek_male_01.iff",
+               "object/mobile/dressed_commoner_fat_zabrak_female_02.iff",
+               "object/mobile/dressed_commoner_fat_zabrak_male_02.iff",
+               "object/mobile/dressed_commoner_old_human_female_01.iff",
+               "object/mobile/dressed_commoner_old_human_female_02.iff",
+               "object/mobile/dressed_commoner_old_human_male_01.iff",
+               "object/mobile/dressed_commoner_old_human_male_02.iff",
+               "object/mobile/dressed_commoner_old_twilek_female_01.iff",
+               "object/mobile/dressed_commoner_old_twilek_male_01.iff",
+               "object/mobile/dressed_commoner_old_zabrak_female_02.iff",
+               "object/mobile/dressed_commoner_tatooine_aqualish_male_01.iff",
+               "object/mobile/dressed_commoner_tatooine_nikto_male_05.iff",
+               "object/mobile/dressed_noble_old_human_male_01.iff",
+               "object/mobile/dressed_noble_old_twk_female_01.iff",
+               "object/mobile/dressed_noble_old_twk_male_01.iff",
+               "object/mobile/dressed_noble_old_zabrak_male_01.iff",
+               "object/mobile/dressed_noble_old_zabrak_male_02.iff",
+               "object/mobile/dressed_noble_rodian_male_01.iff",
+               "object/mobile/dressed_noble_twilek_male_01.iff",
+               "object/mobile/dressed_rancorclan_hum_01.iff",
+       },
+       conversationTemplate = "krayt_dragon_skull_mission_target_convotemplate",
+       lootGroups = {},
+       weapons = {},
+       attacks = {}
+}
+
+CreatureTemplates:addCreatureTemplate(huff_delivery_guy, "huff_delivery_guy")
\ No newline at end of file
diff --git a/MMOCoreORB/bin/scripts/mobile/quest/tatooine/huff_niece.lua b/MMOCoreORB/bin/scripts/mobile/quest/tatooine/huff_niece.lua
new file mode 100644 (file)
index 0000000..2cb14ef
--- /dev/null
@@ -0,0 +1,39 @@
+huff_niece = Creature:new {
+       objectName = "",
+       socialGroup = "townsperson",
+       pvpFaction = "townsperson",
+       faction = "townsperson",
+       level = 6,
+       chanceHit = 0.250000,
+       damageMin = 50,
+       damageMax = 55,
+       baseXp = 113,
+       baseHAM = 180,
+       baseHAMmax = 220,
+       armor = 0,
+       resists = {0,0,0,0,0,0,0,-1,-1},
+       meatType = "",
+       meatAmount = 0,
+       hideType = "",
+       hideAmount = 0,
+       boneType = "",
+       boneAmount = 0,
+       milk = 0,
+       tamingChance = 0.000000,
+       ferocity = 0,
+       pvpBitmask = NONE,
+       creatureBitmask = HERD,
+       optionsBitmask = 136,
+       diet = HERBIVORE,
+
+       templates = {
+               "object/mobile/dressed_noble_human_female_01.iff",
+               "object/mobile/dressed_noble_human_female_02.iff",
+       },
+       conversationTemplate = "krayt_dragon_skull_mission_target_convotemplate",
+       lootGroups = {},
+       weapons = {},
+       attacks = {}
+}
+
+CreatureTemplates:addCreatureTemplate(huff_niece, "huff_niece")
\ No newline at end of file
diff --git a/MMOCoreORB/bin/scripts/mobile/quest/tatooine/huffs_guard.lua b/MMOCoreORB/bin/scripts/mobile/quest/tatooine/huffs_guard.lua
new file mode 100644 (file)
index 0000000..96041f9
--- /dev/null
@@ -0,0 +1,39 @@
+huffs_guard = Creature:new {
+       objectName = "",
+       socialGroup = "",
+       customName = "Huff Darklighter's Guard",
+       pvpFaction = "",
+       faction = "",
+       level = 4,
+       chanceHit = 0.24,
+       damageMin = 40,
+       damageMax = 45,
+       baseXp = 62,
+       baseHAM = 113,
+       baseHAMmax = 138,
+       armor = 0,
+       resists = {15,15,15,15,15,15,15,-1,-1},
+       meatType = "",
+       meatAmount = 0,
+       hideType = "",
+       hideAmount = 0,
+       boneType = "",
+       boneAmount = 0,
+       milk = 0,
+       tamingChance = 0,
+       ferocity = 0,
+       pvpBitmask = NONE,
+       creatureBitmask = HERD,
+       optionsBitmask = 136,
+       diet = HERBIVORE,
+
+       templates = {"object/mobile/dressed_criminal_slicer_human_male_01.iff"},
+                               
+       lootGroups = {},
+       weapons = {},
+       conversationTemplate = "krayt_dragon_skull_mission_giver_convotemplate",
+       attacks = {
+       }
+}
+
+CreatureTemplates:addCreatureTemplate(huffs_guard, "huffs_guard")
\ No newline at end of file
index 1d1ca31..32d21ac 100644 (file)
@@ -30,7 +30,7 @@ kavas_jabba_assassin = Creature:new {
        lootGroups = {
                {
                        groups = {
-                               {group = "task_loot_kavas_briefcase", chance = 10000000}
+                               {group = "task_loot_quest_briefcase", chance = 10000000}
                        },
                        lootChance = 10000000
                }
index c673c9e..2b237db 100644 (file)
@@ -116,7 +116,6 @@ includeFile("tatooine/grizzled_dewback.lua")
 includeFile("tatooine/gunham.lua")
 includeFile("tatooine/gunrunner.lua")
 includeFile("tatooine/hermit.lua")
-includeFile("tatooine/huff_darklighter.lua")
 includeFile("tatooine/huff_guard.lua")
 includeFile("tatooine/hutt_informant_quest.lua")
 includeFile("tatooine/ihatha_hawit.lua")
index daec751..52ee794 100644 (file)
@@ -106,7 +106,6 @@ function CorelliaCoronetScreenPlay:spawnMobiles()
        --{"noble",60,4.12842,0.3,4.01677,134.998,1855463, "conversation", ""},
        --{"scientist",60,-1.72746,7.9,-31.075,180.005,1855463, "conversation", ""},
        --{"slicer",60,-18.6014,1.30292,-10.2146,180.006,1855463, "conversation", ""},
-       spawnMobile("corellia", "thale_dustrunner",60,-0.052739,3.0782,-10.9388,187.319,1855463)
        --{"corsec_detective",300,-20.2743,3.22324,22.781,180.005,1855468, "conversation", ""},
        --{"farmer",60,-20.2743,3.22324,21.681,0,1855468, "conversation", ""},
        --{"info_broker",60,21.8079,3.22324,26.617,180.006,1855469, "conversation", ""},
index 03b9abb..c58d51d 100644 (file)
@@ -44,6 +44,7 @@ includeFile("tasks/dathomir/singular_nak.lua")
 includeFile("tasks/dathomir/wallaw_loowobbli.lua")
 includeFile("tasks/dathomir/xarot_korlin.lua")
 includeFile("tasks/epic_quests/zicxBugBomb.lua")
+includeFile("tasks/epic_quests/kraytDragonSkull.lua")
 includeFile("tasks/naboo/arven_wendik.lua")
 includeFile("tasks/naboo/boss_nass.lua")
 includeFile("tasks/naboo/captain_gavyn_sykes.lua")
diff --git a/MMOCoreORB/bin/scripts/screenplays/tasks/epic_quests/kraytDragonSkull.lua b/MMOCoreORB/bin/scripts/screenplays/tasks/epic_quests/kraytDragonSkull.lua
new file mode 100644 (file)
index 0000000..cd8dac6
--- /dev/null
@@ -0,0 +1,298 @@
+local ObjectManager = require("managers.object.object_manager")
+
+huff_darklighter_missions =
+       {
+               {
+                       missionType = "escort",
+                       preReq = { type = "state", screenPlayState = "krayt_skull_epic_quest", state = 2 },
+                       primarySpawns =
+                       {
+                               { npcTemplate = "huff_niece", planetName = "tatooine", npcName = "Huff's Niece" }
+                       },
+                       secondarySpawns = {},
+                       itemSpawns = {},
+                       rewards =
+                       {
+                               { rewardType = "credits", amount = 500 },
+                       }
+               },
+               {
+                       missionType = "assassinate",
+                       primarySpawns =
+                       {
+                               { npcTemplate = "thug", planetName = "tatooine", npcName = "a Thug" }
+                       },
+                       secondarySpawns =       {},
+                       itemSpawns = {},
+                       rewards =
+                       {
+                               { rewardType = "loot",  lootGroup = "task_reward_huff_quest_krayt_dragon_skull" }
+                       }
+               },
+       }
+
+huff_guard_missions =
+       {
+               {
+                       missionType = "deliver",
+                       preReq = { type = "item", itemTemplate = "object/tangible/loot/quest/rifle_quest_tusken.iff", destroy = false },
+                       primarySpawns =
+                       {
+                               { npcTemplate = "huff_delivery_guy", planetName = "tatooine", npcName = "Delivery Guy" }
+                       },
+                       secondarySpawns = {},
+                       itemSpawns =
+                       {
+                               { itemTemplate = "object/tangible/loot/misc/ledger_s01.iff", itemName = "A Ledger" }
+                       },
+                       rewards = {}
+               },
+       }
+
+borvo_the_hutt_missions =
+       {
+               {
+                       missionType = "assassinate",
+                       preReq = { type = "state", screenPlayState = "krayt_skull_epic_quest", state = 1 },
+                       primarySpawns =
+                       {
+                               { npcTemplate = "srio", planetName = "naboo", npcName = "Sri-O" }
+                       },
+                       secondarySpawns =       {},
+                       itemSpawns = {},
+                       rewards =
+                       {
+                               { rewardType = "credits", amount = 100 },
+                       }
+               },
+               {
+                       missionType = "confiscate",
+                       primarySpawns =
+                       {
+                               { npcTemplate = "montrus", planetName = "naboo", npcName = "Montrus" }
+                       },
+                       secondarySpawns =       {},
+                       itemSpawns =
+                       {
+                               { itemTemplate = "object/tangible/loot/misc/keepsakes.iff", itemName = "Precious Keep-sakes" }
+                       },
+                       rewards =
+                       {
+                               { rewardType = "loot",  lootGroup = "task_reward_huff_quest_tusken_king_rifle" }
+                       }
+               },
+       }
+
+thale_dusturnner_missions =
+       {
+               {
+                       missionType = "assassinate",
+                       preReq = { type = "item", itemTemplate = "object/tangible/loot/quest/huff_quest_corsec_badge.iff", destroy = false },
+                       primarySpawns =
+                       {
+                               { npcTemplate = "mercenary", planetName = "corellia", npcName = "Aldalad" }
+                       },
+                       secondarySpawns =       {},
+                       itemSpawns = {},
+                       rewards =
+                       {
+                               { rewardType = "credits", amount = 25 },
+                       }
+               },
+               {
+                       missionType = "confiscate",
+                       primarySpawns =
+                       {
+                               { npcTemplate = "maerzen", planetName = "corellia", npcName = "Maerzen" }
+                       },
+                       secondarySpawns =       {},
+                       itemSpawns =
+                       {
+                               { itemTemplate = "object/tangible/loot/misc/briefcase_s01.iff", itemName = "A Locked Briefcase" }
+                       },
+                       rewards =
+                       {
+                               { rewardType = "loot",  lootGroup = "task_reward_huff_quest_borvos_money" }
+                       }
+               }
+       }
+
+borvo_guard_missions =
+       {
+               {
+                       missionType = "escort",
+                       primarySpawns =
+                       {
+                               { npcTemplate = "dagorel", planetName = "naboo", npcName = "Dagorel" }
+                       },
+                       secondarySpawns = {},
+                       itemSpawns = {},
+                       rewards =
+                       {
+                               { rewardType = "credits", amount = 25 },
+                       }
+               },
+               {
+                       missionType = "confiscate",
+                       primarySpawns =
+                       {
+                               { npcTemplate = "frangee", planetName = "naboo", npcName = "Frangee" }
+                       },
+                       secondarySpawns =       {},
+                       itemSpawns =
+                       {
+                               { itemTemplate = "object/tangible/loot/misc/ledger_s01.iff", itemName = "A Ledger" }
+                       },
+                       rewards =
+                       {
+                               { rewardType = "loot",  lootGroup = "task_reward_huff_quest_corsec_badge" }
+                       }
+               }
+       }
+
+npcMapKraytDragonSkull =
+       {
+               {
+                       spawnData = { planetName = "tatooine", npcTemplate = "huff_darklighter", x = 0.1, z = 1.0, y = 2.4, direction = 177, cellID = 1845354, position = STAND },
+                       worldPosition = { x = -698, y = -6750 },
+                       npcNumber = 16,
+                       stfFile = "@epic_quest/krayt_skull/huff_darklighter",
+                       missions = huff_darklighter_missions
+               },
+               {
+                       spawnData = { planetName = "tatooine", npcTemplate = "huffs_guard", x = -694.1, z = 8.0, y = -6733.8, direction = -12, cellID = 0, position = STAND },
+                       worldPosition = { x = -694, y = -6734 },
+                       npcNumber = 8,
+                       stfFile = "@epic_quest/krayt_skull/huff_guard",
+                       missions = huff_guard_missions
+               },
+               {
+                       spawnData = { planetName = "naboo", npcTemplate = "borvo_the_hutt", x = -30.8, z = -0.5, y = 7.5, direction = 33, cellID = 121, position = STAND },
+                       worldPosition = { x = 4875, y = -4590 },
+                       npcNumber = 4,
+                       stfFile = "@epic_quest/krayt_skull/borvo_the_hutt",
+                       missions = borvo_the_hutt_missions
+               },
+               {
+                       spawnData = { planetName = "corellia", npcTemplate = "thale_dustrunner", x = -0.05, z = 3.08, y = -10.94, direction = 187.3, cellID = 1855463, position = STAND },
+                       worldPosition = { x = -209, y = -4581 },
+                       npcNumber = 2,
+                       stfFile = "@epic_quest/krayt_skull/corsec_captain",
+                       missions = thale_dusturnner_missions
+               },
+               {
+                       spawnData = { planetName = "naboo", npcTemplate = "borvos_guard", x = -18.4, z = -0.9, y = 18.3, direction = 173, cellID = 120, position = STAND },
+                       worldPosition = { x = 4888, y = -4600 },
+                       npcNumber = 1,
+                       stfFile = "@epic_quest/krayt_skull/borvo_guard",
+                       missions = borvo_guard_missions
+               },
+       }
+
+KraytDragonSkull = ThemeParkLogic:new {
+       numberOfActs = 1,
+       npcMap = npcMapKraytDragonSkull,
+       className = "KraytDragonSkull",
+       screenPlayState = "krayt_dragon_skull",
+       distance = 800
+}
+
+registerScreenPlay("KraytDragonSkull", true)
+
+KraytSkullContainerComponent = {}
+
+function KraytSkullContainerComponent:transferObject(pContainer, pObj, slot)
+       return ObjectManager.withSceneObject(pObj, function(object)
+               local pPlayerInv = object:getParent()
+               return ObjectManager.withSceneObject(pPlayerInv, function(playerInv)
+                       local pPlayerObj = playerInv:getParent()
+                       return ObjectManager.withCreatureObject(pPlayerObj, function(player)
+                               return ObjectManager.withSceneObject(pContainer, function(kraytNpc)
+                                       if (kraytNpc:getObjectName() == "borvo_the_hutt") then
+                                               if (object:getTemplateObjectPath() == "object/tangible/loot/quest/huff_quest_borvos_money.iff") then
+                                                       spatialChat(pContainer, "Good")
+                                                       KraytDragonSkull:setState(player, 1, "krayt_skull_epic_quest")
+                                                       object:destroyObjectFromWorld()
+                                                       object:destroyObjectFromDatabase()
+                                                       return 1
+                                               else
+                                                       spatialChat(pContainer, "@static_npc/naboo/borvo:notit_1")
+                                                       return 0
+                                               end
+                                       elseif (kraytNpc:getCustomObjectName() == "Huff Darklighter") then
+                                               if (KraytDragonSkull:getActiveNpcNumber(pPlayerObj) ~= 16) then
+                                                       spatialChat(pContainer, "@epic_quest/krayt_skull/huff_darklighter:notyet")
+                                               elseif (object:getTemplateObjectPath() == "object/tangible/loot/quest/rifle_quest_tusken.iff") then
+                                                       spatialChat(pContainer, "@epic_quest/krayt_skull/huff_darklighter:good")
+                                                       KraytDragonSkull:setState(player, 2, "krayt_skull_epic_quest")
+                                                       object:destroyObjectFromWorld()
+                                                       object:destroyObjectFromDatabase()
+                                                       return 1
+                                               else
+                                                       spatialChat(pContainer, "@epic_quest/krayt_skull/huff_darklighter:notit")
+                                                       return 0
+                                               end
+                                       end
+                               end)
+                       end)
+               end)
+       end)
+end
+
+function KraytSkullContainerComponent:canAddObject(pContainer, pObj, slot)
+       return ObjectManager.withSceneObject(pObj, function(object)
+               local pPlayerInv = object:getParent()
+               return ObjectManager.withSceneObject(pPlayerInv, function(playerInv)
+                       local pPlayerObj = playerInv:getParent()
+                       return ObjectManager.withCreatureObject(pPlayerObj, function(player)
+                               return ObjectManager.withSceneObject(pContainer, function(kraytNpc)
+                                       if (kraytNpc:getObjectName() == "borvo_the_hutt" and player:hasScreenPlayState(1, "krayt_skull_epic_quest") == 1) or
+                                               (kraytNpc:getCustomObjectName() == "Huff Darklighter" and player:hasScreenPlayState(2, "krayt_skull_epic_quest") == 1) then
+                                                       return -1
+                                       else
+                                               return true
+                                       end
+                               end)
+                       end)
+               end)
+       end)
+end
+
+function KraytSkullContainerComponent:removeObject(pContainer, pObj, slot)
+       return -1
+end
+
+function KraytDragonSkull:setState(creatureObject, state, questGiver)
+       creatureObject:setScreenPlayState(state, questGiver)
+end
+
+function KraytDragonSkull:removeState(creatureObject, state, questGiver)
+       creatureObject:removeScreenPlayState(state, questGiver)
+end
+
+-- Custom spawnNpcs to handle setting npcs as containers for quest item turnin
+function KraytDragonSkull:spawnNpcs()
+       for i = 1, # self.npcMap do
+               local npcSpawnData = self.npcMap[i].spawnData
+               if isZoneEnabled(npcSpawnData.planetName) then
+                       local pNpc = spawnMobile(npcSpawnData.planetName, npcSpawnData.npcTemplate, 1, npcSpawnData.x, npcSpawnData.z, npcSpawnData.y, npcSpawnData.direction, npcSpawnData.cellID)
+                       ObjectManager.withCreatureObject(pNpc, function(npc)
+                               if npcSpawnData.position == SIT then
+                                       npc:setState(STATESITTINGONCHAIR)
+                               end
+                               if npcSpawnData.npcTemplate == "borvo_the_hutt" or npcSpawnData.npcTemplate == "huff_darklighter" then
+                                       ObjectManager.withSceneObject(pNpc, function(borvoNpc)
+                                               borvoNpc:setContainerComponent("KraytSkullContainerComponent")
+                                       end)
+                               end
+                       end)
+               end
+       end
+end
+
+krayt_dragon_skull_mission_giver_conv_handler = mission_giver_conv_handler:new {
+       themePark = KraytDragonSkull
+}
+krayt_dragon_skull_mission_target_conv_handler = mission_target_conv_handler:new {
+       themePark = KraytDragonSkull
+}
\ No newline at end of file
index e6ccdb1..bc302ce 100644 (file)
@@ -4,7 +4,7 @@ jowir_arlensa_missions =
        {
                {
                        missionType = "confiscate",
-                       preReqItem = "object/tangible/loot/quest/quest_item_goru_calling_card.iff",
+                       preReq = { type = "item", itemTemplate = "object/tangible/loot/quest/quest_item_goru_calling_card.iff", destroy = true },
                        primarySpawns =
                        {
                                { npcTemplate = "jowir_valarian_assassin", planetName = "tatooine", npcName = "Valarian Assassin" },
index d65370f..ebecb46 100644 (file)
@@ -142,8 +142,11 @@ function mission_giver_conv_handler:handleScreenInit(pConversationTemplate, pCon
                                        nextScreenName = "npc_reward_n"
                                end
                        else
-                               if self.themePark:getMissionPreReqItem(pConversingPlayer) ~= 0 then
-                                       if readData(creature:getObjectID() .. ":hasPreReqItem") == 1 or self.themePark:doPreReqItemCheck(pConversingPlayer, missionPreReqItem) == true then
+                               if self.themePark:getMissionPreReq(pConversingPlayer) ~= 0 then
+                                       local missionPreReq = self.themePark:getMissionPreReq(pConversingPlayer)
+                                       if missionPreReq.type == "item" and (readData(creature:getObjectID() .. ":hasPreReqItem") == 1 or self.themePark:doPreReqItemCheck(pConversingPlayer, missionPreReq) == true) then
+                                               nextScreenName = "npc_1_n"
+                                       elseif missionPreReq.type == "state" and creature:hasScreenPlayState(missionPreReq.state, missionPreReq.screenPlayState) == 1 then
                                                nextScreenName = "npc_1_n"
                                        else
                                                nextScreenName = "notyet"
index adbd74e..bdc7890 100644 (file)
@@ -720,15 +720,16 @@ function ThemeParkLogic:getMissionLootCount(pLooter)
        end
 end
 
-function ThemeParkLogic:getMissionPreReqItem(pPlayer)
+function ThemeParkLogic:getMissionPreReq(pPlayer)
        local npcNumber = self:getActiveNpcNumber(pPlayer)
        local missionNumber = self:getCurrentMissionNumber(npcNumber, pPlayer)
        local mission = self:getMission(npcNumber, missionNumber)
-
-       if mission.preReqItem == nil or mission.preReqItem == 0 then
+       local preReq = mission.preReq
+       
+       if preReq == nil or preReq == "" then
                return 0
        else
-               return mission.preReqItem
+               return preReq
        end
 end
 
@@ -1073,8 +1074,9 @@ function ThemeParkLogic:hasRequiredItem(pConversingPlayer)
        return true
 end
 
-function ThemeParkLogic:doPreReqItemCheck(pPlayer, itemIff)
+function ThemeParkLogic:doPreReqItemCheck(pPlayer, preReq)
        return ObjectManager.withCreatureObject(pPlayer, function(player)
+               local itemIff = preReq.itemTemplate
                local pInventory = player:getSlottedObject("inventory")
                if pInventory == nil then
                        return false
@@ -1082,8 +1084,10 @@ function ThemeParkLogic:doPreReqItemCheck(pPlayer, itemIff)
                local pItem = getContainerObjectByTemplate(pInventory, itemIff, true)
                if pItem ~= nil then
                        return ObjectManager.withSceneObject(pItem, function(item)
-                               item:destroyObjectFromWorld()
-                               item:destroyObjectFromDatabase()
+                               if preReq.destroy ~= nil and preReq.destroy == true then
+                                       item:destroyObjectFromWorld()
+                                       item:destroyObjectFromDatabase()
+                               end
                                writeData(player:getObjectID() .. ":hasPreReqItem", 1)
                                return true
                        end)