Added Underworld Smuggler Tatooine Quests

This commit is contained in:
cdmpse
2014-09-19 20:06:16 -05:00
parent 94956c6abe
commit e1b62d63df
28 changed files with 442 additions and 6 deletions
@@ -0,0 +1,42 @@
from resources.common import ConversationOption
from resources.common import OutOfBand
from resources.common import ProsePackage
from java.util import Vector
import sys
def startConversation(core, actor, npc):
player = actor.getPlayerObject()
if player is None:
return
quest = player.getQuest('smuggle_generic_1')
if quest is None or quest.isCompleted():
options = Vector()
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/generic_broker_1:s_17'), 0)) # Yes.
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/generic_broker_1:s_18'), 0)) # Not right now.
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/generic_broker_1:s_14'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsOne)
return
elif player.getFactionStanding() >= 1000:
core.conversationService.sendStopConversation(actor, npc, 'conversation/generic_broker_1', 's_8')
else:
core.conversationService.sendStopConversation(actor, npc, 'conversation/generic_broker_1', 's_4')
return
def handleOptionsOne(core, actor, npc, selection):
if selection == 0: # Yes.
options = Vector()
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/generic_broker_1:s_24'), 0)) # OK
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/generic_broker_1:s_22'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsTwo)
elif selection == 1: # Not right now.
core.conversationService.sendStopConversation(actor, npc, 'conversation/generic_broker_1', 's_30')
return
def handleOptionsTwo(core, actor, npc, selection):
core.conversationService.sendStopConversation(actor, npc, 'conversation/generic_broker_1', 's_26')
core.questService.sendQuestAcceptWindow(actor, 'quest/smuggle_generic_1')
return
def endConversation(core, actor, npc):
core.conversationService.sendStopConversation(actor, npc, 'conversation/generic_broker_1', 's_4')
return
@@ -0,0 +1,23 @@
from resources.common import ConversationOption
from resources.common import OutOfBand
from resources.common import ProsePackage
from java.util import Vector
import sys
def startConversation(core, actor, npc):
player = actor.getPlayerObject()
if player is None:
return
quest = player.getQuest('smuggle_generic_1')
if quest is None or quest.isCompleted():
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_10')
elif quest.isTaskActive(3) and quest.isTaskCompleted(7):
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_5')
core.questService.completeTask(actor, quest, 3)
else:
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_9')
return
def endConversation(core, actor, npc):
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_10')
return
@@ -0,0 +1,23 @@
from resources.common import ConversationOption
from resources.common import OutOfBand
from resources.common import ProsePackage
from java.util import Vector
import sys
def startConversation(core, actor, npc):
player = actor.getPlayerObject()
if player is None:
return
quest = player.getQuest('smuggle_generic_1')
if quest is None or quest.isCompleted():
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_10')
elif quest.isTaskActive(2) and quest.isTaskCompleted(7):
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_5')
core.questService.completeTask(actor, quest, 2)
else:
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_9')
return
def endConversation(core, actor, npc):
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_10')
return
@@ -0,0 +1,23 @@
from resources.common import ConversationOption
from resources.common import OutOfBand
from resources.common import ProsePackage
from java.util import Vector
import sys
def startConversation(core, actor, npc):
player = actor.getPlayerObject()
if player is None:
return
quest = player.getQuest('smuggle_generic_1')
if quest is None or quest.isCompleted():
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_10')
elif quest.isTaskActive(1) and quest.isTaskCompleted(7):
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_5')
core.questService.completeTask(actor, quest, 1)
else:
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_9')
return
def endConversation(core, actor, npc):
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_10')
return
@@ -0,0 +1,23 @@
from resources.common import ConversationOption
from resources.common import OutOfBand
from resources.common import ProsePackage
from java.util import Vector
import sys
def startConversation(core, actor, npc):
player = actor.getPlayerObject()
if player is None:
return
quest = player.getQuest('smuggle_generic_1')
if quest is None or quest.isCompleted():
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_10')
elif quest.isTaskActive(5) and quest.isTaskCompleted(7):
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_5')
core.questService.completeTask(actor, quest, 5)
else:
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_9')
return
def endConversation(core, actor, npc):
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_10')
return
@@ -0,0 +1,23 @@
from resources.common import ConversationOption
from resources.common import OutOfBand
from resources.common import ProsePackage
from java.util import Vector
import sys
def startConversation(core, actor, npc):
player = actor.getPlayerObject()
if player is None:
return
quest = player.getQuest('smuggle_generic_1')
if quest is None or quest.isCompleted():
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_10')
elif quest.isTaskActive(4) and quest.isTaskCompleted(7):
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_5')
core.questService.completeTask(actor, quest, 4)
else:
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_9')
return
def endConversation(core, actor, npc):
core.conversationService.sendStopConversation(actor, npc, 'conversation/fence', 's_10')
return
@@ -11,11 +11,11 @@ from java.util import Vector
def addTemplate(core):
mobileTemplate = MobileTemplate()
mobileTemplate.setCustomName('Barak')
mobileTemplate.setCreatureName('smuggler_broker_barak')
mobileTemplate.setLevel(1)
mobileTemplate.setDifficulty(Difficulty.NORMAL)
mobileTemplate.setSocialGroup("township")
mobileTemplate.setOptionsBitmask(Options.INVULNERABLE)
mobileTemplate.setOptionsBitmask(Options.INVULNERABLE | Options.CONVERSABLE)
templates = Vector()
templates.add('object/mobile/shared_smuggler_broker_barak.iff')
@@ -0,0 +1,34 @@
import sys
from services.spawn import MobileTemplate
from services.spawn import WeaponTemplate
from resources.datatables import WeaponType
from resources.datatables import Difficulty
from resources.datatables import Options
from resources.datatables import FactionStatus
from java.util import Vector
def addTemplate(core):
mobileTemplate = MobileTemplate()
mobileTemplate.setCreatureName('smuggler_fence_diala')
mobileTemplate.setLevel(1)
mobileTemplate.setDifficulty(Difficulty.NORMAL)
mobileTemplate.setSocialGroup("township")
mobileTemplate.setOptionsBitmask(Options.INVULNERABLE | Options.CONVERSABLE)
templates = Vector()
templates.add('object/mobile/shared_smuggler_fence_diala.iff')
mobileTemplate.setTemplates(templates)
weaponTemplates = Vector()
weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', WeaponType.UNARMED, 1.0, 6, 'kinetic')
weaponTemplates.add(weapontemplate)
mobileTemplate.setWeaponTemplateVector(weaponTemplates)
attacks = Vector()
mobileTemplate.setDefaultAttack('creatureMeleeAttack')
mobileTemplate.setAttacks(attacks)
core.spawnService.addMobileTemplate('diala', mobileTemplate)
return
@@ -0,0 +1,34 @@
import sys
from services.spawn import MobileTemplate
from services.spawn import WeaponTemplate
from resources.datatables import WeaponType
from resources.datatables import Difficulty
from resources.datatables import Options
from resources.datatables import FactionStatus
from java.util import Vector
def addTemplate(core):
mobileTemplate = MobileTemplate()
mobileTemplate.setCreatureName('smuggler_fence_jalen')
mobileTemplate.setLevel(1)
mobileTemplate.setDifficulty(Difficulty.NORMAL)
mobileTemplate.setSocialGroup("township")
mobileTemplate.setOptionsBitmask(Options.INVULNERABLE | Options.CONVERSABLE)
templates = Vector()
templates.add('object/mobile/shared_smuggler_fence_jalen.iff')
mobileTemplate.setTemplates(templates)
weaponTemplates = Vector()
weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', WeaponType.UNARMED, 1.0, 6, 'kinetic')
weaponTemplates.add(weapontemplate)
mobileTemplate.setWeaponTemplateVector(weaponTemplates)
attacks = Vector()
mobileTemplate.setDefaultAttack('creatureMeleeAttack')
mobileTemplate.setAttacks(attacks)
core.spawnService.addMobileTemplate('jalen', mobileTemplate)
return
@@ -0,0 +1,34 @@
import sys
from services.spawn import MobileTemplate
from services.spawn import WeaponTemplate
from resources.datatables import WeaponType
from resources.datatables import Difficulty
from resources.datatables import Options
from resources.datatables import FactionStatus
from java.util import Vector
def addTemplate(core):
mobileTemplate = MobileTemplate()
mobileTemplate.setCreatureName('smuggler_fence_kaleb')
mobileTemplate.setLevel(1)
mobileTemplate.setDifficulty(Difficulty.NORMAL)
mobileTemplate.setSocialGroup("township")
mobileTemplate.setOptionsBitmask(Options.INVULNERABLE | Options.CONVERSABLE)
templates = Vector()
templates.add('object/mobile/shared_smuggler_fence_kaleb.iff')
mobileTemplate.setTemplates(templates)
weaponTemplates = Vector()
weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', WeaponType.UNARMED, 1.0, 6, 'kinetic')
weaponTemplates.add(weapontemplate)
mobileTemplate.setWeaponTemplateVector(weaponTemplates)
attacks = Vector()
mobileTemplate.setDefaultAttack('creatureMeleeAttack')
mobileTemplate.setAttacks(attacks)
core.spawnService.addMobileTemplate('kaleb', mobileTemplate)
return
@@ -0,0 +1,34 @@
import sys
from services.spawn import MobileTemplate
from services.spawn import WeaponTemplate
from resources.datatables import WeaponType
from resources.datatables import Difficulty
from resources.datatables import Options
from resources.datatables import FactionStatus
from java.util import Vector
def addTemplate(core):
mobileTemplate = MobileTemplate()
mobileTemplate.setCreatureName('smuggler_fence_kara')
mobileTemplate.setLevel(1)
mobileTemplate.setDifficulty(Difficulty.NORMAL)
mobileTemplate.setSocialGroup("township")
mobileTemplate.setOptionsBitmask(Options.INVULNERABLE | Options.CONVERSABLE)
templates = Vector()
templates.add('object/mobile/shared_smuggler_fence_kara.iff')
mobileTemplate.setTemplates(templates)
weaponTemplates = Vector()
weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', WeaponType.UNARMED, 1.0, 6, 'kinetic')
weaponTemplates.add(weapontemplate)
mobileTemplate.setWeaponTemplateVector(weaponTemplates)
attacks = Vector()
mobileTemplate.setDefaultAttack('creatureMeleeAttack')
mobileTemplate.setAttacks(attacks)
core.spawnService.addMobileTemplate('kara', mobileTemplate)
return
@@ -0,0 +1,33 @@
import sys
from services.spawn import MobileTemplate
from services.spawn import WeaponTemplate
from resources.datatables import WeaponType
from resources.datatables import Difficulty
from resources.datatables import Options
from java.util import Vector
def addTemplate(core):
mobileTemplate = MobileTemplate()
mobileTemplate.setCreatureName('smuggler_fence_sarlin')
mobileTemplate.setLevel(1)
mobileTemplate.setDifficulty(Difficulty.NORMAL)
mobileTemplate.setSocialGroup("township")
mobileTemplate.setOptionsBitmask(Options.INVULNERABLE | Options.CONVERSABLE)
templates = Vector()
templates.add('object/mobile/shared_smuggler_fence_sarlin.iff')
mobileTemplate.setTemplates(templates)
weaponTemplates = Vector()
weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', WeaponType.UNARMED, 1.0, 6, 'kinetic')
weaponTemplates.add(weapontemplate)
mobileTemplate.setWeaponTemplateVector(weaponTemplates)
attacks = Vector()
mobileTemplate.setDefaultAttack('creatureMeleeAttack')
mobileTemplate.setAttacks(attacks)
core.spawnService.addMobileTemplate('sarlin', mobileTemplate)
return
@@ -0,0 +1,39 @@
import sys
from services.spawn import MobileTemplate
from services.spawn import WeaponTemplate
from resources.datatables import WeaponType
from resources.datatables import Difficulty
from resources.datatables import Options
from java.util import Vector
def addTemplate(core):
mobileTemplate = MobileTemplate()
mobileTemplate.setCreatureName('jabba_assassin')
mobileTemplate.setLevel(15)
mobileTemplate.setDifficulty(Difficulty.NORMAL)
mobileTemplate.setMinSpawnDistance(4)
mobileTemplate.setMaxSpawnDistance(8)
mobileTemplate.setDeathblow(True)
mobileTemplate.setScale(1)
mobileTemplate.setSocialGroup("jabba")
mobileTemplate.setAssistRange(0)
mobileTemplate.setStalker(False)
templates = Vector()
templates.add('object/mobile/shared_dressed_tatooine_jabba_assassin.iff')
mobileTemplate.setTemplates(templates)
weaponTemplates = Vector()
weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_cdef.iff', WeaponType.PISTOL, 1.0, 15, 'energy')
weaponTemplates.add(weapontemplate)
mobileTemplate.setWeaponTemplateVector(weaponTemplates)
attacks = Vector()
mobileTemplate.setDefaultAttack('rangedShotpistol')
mobileTemplate.setAttacks(attacks)
core.spawnService.addMobileTemplate('smuggler_patrol_bh_1', mobileTemplate)
return
@@ -1,4 +1,10 @@
import sys
from resources.datatables import Options
def setup(core, object):
return
object.setAttachment('radial_filename', 'object/conversation');
object.setAttachment('conversationFile','quests/tatooine/brokerbarak')
object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE)
object.setStfFilename('mob/creature_names')
object.setStfName('smuggler_broker_barak')
return
@@ -1,4 +1,10 @@
import sys
from resources.datatables import Options
def setup(core, object):
object.setAttachment('radial_filename', 'object/conversation');
object.setAttachment('conversationFile','quests/tatooine/diala')
object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE)
object.setStfFilename('mob/creature_names')
object.setStfName('smuggler_fence_diala')
return
@@ -1,4 +1,10 @@
import sys
from resources.datatables import Options
def setup(core, object):
object.setAttachment('radial_filename', 'object/conversation');
object.setAttachment('conversationFile','quests/tatooine/jalen')
object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE)
object.setStfFilename('mob/creature_names')
object.setStfName('smuggler_fence_jalen')
return
@@ -1,4 +1,10 @@
import sys
from resources.datatables import Options
def setup(core, object):
object.setAttachment('radial_filename', 'object/conversation');
object.setAttachment('conversationFile','quests/tatooine/kaleb')
object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE)
object.setStfFilename('mob/creature_names')
object.setStfName('smuggler_fence_kaleb')
return
@@ -1,4 +1,10 @@
import sys
from resources.datatables import Options
def setup(core, object):
object.setAttachment('radial_filename', 'object/conversation');
object.setAttachment('conversationFile','quests/tatooine/kara')
object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE)
object.setStfFilename('mob/creature_names')
object.setStfName('smuggler_fence_kara')
return
@@ -1,4 +1,10 @@
import sys
from resources.datatables import Options
def setup(core, object):
object.setAttachment('radial_filename', 'object/conversation');
object.setAttachment('conversationFile','quests/tatooine/sarlin')
object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE)
object.setStfFilename('mob/creature_names')
object.setStfName('smuggler_fence_sarlin')
return
@@ -0,0 +1,11 @@
import sys
def setup(core, object):
object.setStfFilename('static_item_n')
object.setStfName('item_smuggler_contraband_crate_01_01')
#object.setStfName('item_bracelet_l_set_bh_dps_01_01')
object.setDetailFilename('smuggle_crate_d')
object.setDetailName('item_smuggler_contraband_crate_01_01')
object.setIntAttribute('required_combat_level', 10)
object.setStringAttribute('class_required', 'Smuggler')
return
@@ -0,0 +1,9 @@
def setup(core):
return
def wait(core, actor):
return
def activate(core, actor, quest):
core.questService.completeTask(actor, quest, 8)
return
@@ -0,0 +1,9 @@
def setup(core):
return
def wait(core, actor):
return
def activate(core, actor, quest):
core.questService.completeTask(actor, quest, 10)
return
+1 -1
View File
@@ -44,7 +44,7 @@ def addPlanetSpawns(core, planet):
gilBurtin = stcSvc.spawnObject('gilburtin', 'tatooine', hotel.getCellByCellNumber(5), float(20.3), float(1.6), float(12.8), float(0), float(0), float(0.99), float(0))
# Outside
barak = stcSvc.spawnObject('brokerbarak', 'tatooine', long(0), float(-1049), float(5.0), float(-3537), float(0.97), float(0.23))
barak = stcSvc.spawnObject('brokerbarak', 'tatooine', long(0), float(-1049), float(10), float(-3537), float(0.97), float(0.23))
barrezz = stcSvc.spawnObject('barezz', 'tatooine', long(0), float(-1146.8), float(98.0), float(-3892.1), float(0.75), float(0.65))
@@ -27,4 +27,6 @@ def addPlanetSpawns(core, planet):
# Jano Bix
jano = stcSvc.spawnObject('jano', 'tatooine', long(0), float(3186), float(5), float(-4781), float(-0.38), float(0.92))
# Kaleb
kaleb = stcSvc.spawnObject('kaleb', 'tatooine', long(0), float(3216), float(5), float(-4610), float(0.25), float(1))
return
@@ -20,6 +20,8 @@ def addPlanetSpawns(core, planet):
ankwee.setCustomName2('An\'kwee')
ankwee.setOptionsBitmask(256)
sarlin = stcSvc.spawnObject('sarlin', 'tatooine', long(0), float(1537), float(7), float(3052), float(0.6), float(0.8))
#Junkdealer
stcSvc.spawnObject('junkdealer', 'tatooine', long(0), float(1271), float(7.7), float(2919), float(0), float(0))
stcSvc.spawnObject('junkdealer', 'tatooine', long(0), float(1271), float(7.7), float(2960), float(1), float(0))
@@ -24,6 +24,7 @@ def addPlanetSpawns(core, planet):
#dalaSocuna.setCustomName2('Commander Da\'la Socuna')
#dalaSocuna.setOptionsBitmask(256)
diala = stcSvc.spawnObject('diala', 'tatooine', long(0), float(-3105), float(5), float(2314), float(0.48), float(0.88))
#Watto's Shop ****TODO: Get Proper cells for Watto's Shop once Buildout structures are spawning as intended again.
watto = stcSvc.spawnObject('object/mobile/shared_watto.iff', 'tatooine', building.getCellByCellNumber(2), float(4.7), float(-0.5), float(2.4), float(-0.71), float(0), float(0.70), float(0))
@@ -15,6 +15,7 @@ def addPlanetSpawns(core, planet):
# TODO Check all NPCs for personalized scripting, change format.
kara = stcSvc.spawnObject('kara', 'tatooine', long(0), float(3839), float(16.13), float(2335), float(-0.1), float(0.98))
#Junkdealer
stcSvc.spawnObject('junkdealer', 'tatooine', long(0), float(3902), float(33), float(2362), float(0), float(0))
+2 -2
View File
@@ -14,8 +14,8 @@ def addPlanetSpawns(core, planet):
objSvc = core.objectService
# TODO Check all NPCs for personalized scripting, change format.
# Smuggler Fence Jalen
jalen = stcSvc.spawnObject('jalen', 'tatooine', long(0), float(-5185), float(75), float(-6458), float(0.7), float(0.7))
#Junkdealer
stcSvc.spawnObject('junkdealer', 'tatooine', long(0), float(-5240.87), float(75), float(-641.015), float(0.879), float(0.476))
stcSvc.spawnObject('junkdealer', 'tatooine', long(0), float(-5132.33), float(75), float(-6584.92), float(0.637), float(0.771))