Updates to "Tasty Dried Critters" Quest

This commit is contained in:
cdmpse
2014-09-09 13:21:04 -05:00
parent 27f1aaa8f5
commit b778c81ebf
16 changed files with 418 additions and 8 deletions
+31 -6
View File
@@ -11,18 +11,25 @@ def startConversation(core, actor, npc):
return
quest = player.getQuest('tatooine_eisley_tdc')
if quest is None:
options = Vector()
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/tatooine_eisley_byxle:s_58'), 0))
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/tatooine_eisley_byxle:s_56'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsOne)
return
# if quest.isCompleted() == True:
# core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_byxle', 's_48')
# return
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_byxle', 's_48')
return
if quest.getActiveTask() == 8:
options = Vector()
# I don't know. He seemed pretty mad.
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/tatooine_eisley_byxle:s_29'), 0))
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/tatooine_eisley_byxle:s_17'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsFive)
elif quest.isCompleted() == True:
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_byxle', 's_48')
else:
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_byxle', 's_48')
return
def handleOptionsOne(core, actor, npc, selection):
options = Vector()
# So what do I need to do?
@@ -52,6 +59,24 @@ def handleOptionsFour(core, actor, npc, selection):
core.questService.sendQuestAcceptWindow(actor, 'quest/tatooine_eisley_tdc')
return
def handleOptionsFive(core, actor, npc, selection):
options = Vector()
# Thanks.
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/tatooine_eisley_byxle:s_69'), 0))
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/tatooine_eisley_byxle:s_30'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsSix)
return
def handleOptionsSix(core, actor, npc, selection):
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_byxle', 's_70')
player = actor.getPlayerObject()
if player is None:
return
quest = player.getQuest('tatooine_eisley_tdc')
core.questService.completeActiveTask(actor, quest)
core.questService.sendQuestCompleteWindow(actor, 'quest/tatooine_eisley_tdc')
return
def endConversation(core, actor, npc):
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_byxle', 's_48')
return
@@ -0,0 +1,59 @@
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('tatooine_eisley_tdc')
if quest is None:
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_drixa', 's_43')
elif quest.isCompleted() == True or quest.getActiveTask() > 1:
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_drixa', 's_40')
else:
options = Vector()
# Here's your order.
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/tatooine_eisley_drixa:s_7'), 0))
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/tatooine_eisley_drixa:s_5'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsOne)
return
def handleOptionsOne(core, actor, npc, selection):
options = Vector()
# I am just delivering what Byxle gave me.
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/tatooine_eisley_drixa:s_41'), 0))
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/tatooine_eisley_drixa:s_9'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsTwo)
return
def handleOptionsTwo(core, actor, npc, selection):
options = Vector()
# Of course
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/tatooine_eisley_drixa:s_30'), 0))
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/tatooine_eisley_drixa:s_28'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsThree)
return
def handleOptionsThree(core, actor, npc, selection):
options = Vector()
# TDC isn't fast food, it's good food delivered fast.
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/tatooine_eisley_drixa:s_38'), 0))
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/tatooine_eisley_drixa:s_32'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsFour)
return
def handleOptionsFour(core, actor, npc, selection):
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_drixa', 's_40')
player = actor.getPlayerObject()
if player is None:
return
quest = player.getQuest('tatooine_eisley_tdc')
core.questService.handleActivateSignal(actor, npc, quest, 2)
return
def endConversation(core, actor, npc):
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_drixa', 's_40')
return
@@ -0,0 +1,71 @@
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('tatooine_eisley_tdc')
if quest is None:
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_jano', 's_22')
elif quest.getActiveTask() == 4:
options = Vector()
# Here you go, four chewy Chuba combos.
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/tatooine_eisley_jano:s_18'), 0))
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/tatooine_eisley_jano:s_11'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsOne)
elif quest.getActiveTask() == 6:
options = Vector()
# I am sure Byxle just made a mistake.
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/tatooine_eisley_jano:s_13'), 0))
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/tatooine_eisley_jano:s_6'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsTwo)
elif quest.isCompleted() == True or quest.getActiveTask() > 6:
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_jano', 's_16')
else:
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_jano', 's_22')
return
def handleOptionsOne(core, actor, npc, selection):
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_jano', 's_20')
pos = actor.getWorldPosition()
player = actor.getPlayerObject()
if player is None:
return
quest = player.getQuest('tatooine_eisley_tdc')
data = core.questService.getQuestData(quest.getName())
task = data.getTasks().get(5);
count = task.getCount()
type = task.getCreatureType()
for i in xrange(0, count):
core.spawnService.spawnCreature('chuba', actor.getPlanet().getName(), 0, pos.x+1, pos.y, pos.z, 1, 0, 1, 0, 1)
core.questService.completeActiveTask(actor, quest)
return
def handleOptionsTwo(core, actor, npc, selection):
options = Vector()
# TDC isn't fast food, it's good food delivered fast.
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/tatooine_eisley_jano:s_15'), 0))
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/tatooine_eisley_jano:s_14'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsThree)
return
def handleOptionsThree(core, actor, npc, selection):
player = actor.getPlayerObject()
if player is None:
return
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_jano', 's_16')
quest = player.getQuest('tatooine_eisley_tdc')
core.questService.handleActivateSignal(actor, npc, quest, 6)
return
def endConversation(core, actor, npc):
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_jano', 's_16')
return
@@ -0,0 +1,94 @@
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('tatooine_eisley_tdc')
if quest is None:
# Too busy getting this cargo ready, no time to talk.
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_nogri', 's_48')
elif quest.isCompleted() == True or quest.getActiveTask() > 3:
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_nogri', 's_42')
else:
options = Vector()
# Got it right here.
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/tatooine_eisley_nogri:s_7'), 0))
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/tatooine_eisley_nogri:s_5'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsOne)
return
def handleOptionsOne(core, actor, npc, selection):
options = Vector()
# That's how you know it's fresh.
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/tatooine_eisley_nogri:s_11'), 0))
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/tatooine_eisley_nogri:s_9'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsTwo)
return
def handleOptionsTwo(core, actor, npc, selection):
options = Vector()
# You're serious, aren't you?
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/tatooine_eisley_nogri:s_15'), 0))
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/tatooine_eisley_nogri:s_13'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsThree)
return
def handleOptionsThree(core, actor, npc, selection):
options = Vector()
# [Look in the bag]
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/tatooine_eisley_nogri:s_23'), 0))
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/tatooine_eisley_nogri:s_21'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsFour)
return
def handleOptionsFour(core, actor, npc, selection):
options = Vector()
# [Look in the bag]
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/tatooine_eisley_nogri:s_28'), 0))
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/tatooine_eisley_nogri:s_26'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsFive)
return
def handleOptionsFive(core, actor, npc, selection):
options = Vector()
# [Look in the bag]
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/tatooine_eisley_nogri:s_32'), 0))
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/tatooine_eisley_nogri:s_30'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsSix)
return
def handleOptionsSix(core, actor, npc, selection):
options = Vector()
# [Look in the bag]
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/tatooine_eisley_nogri:s_36'), 0))
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/tatooine_eisley_nogri:s_34'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsSeven)
return
def handleOptionsSeven(core, actor, npc, selection):
options = Vector()
# [Look in the bag]
options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/tatooine_eisley_nogri:s_40'), 0))
core.conversationService.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/tatooine_eisley_nogri:s_38'))
core.conversationService.sendConversationOptions(actor, npc, options, handleOptionsEight)
return
def handleOptionsEight(core, actor, npc, selection):
player = actor.getPlayerObject()
if player is None:
return
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_nogri', 's_42')
quest = player.getQuest('tatooine_eisley_tdc')
core.questService.handleActivateSignal(actor, npc, quest, 4)
return
def endConversation(core, actor, npc):
core.conversationService.sendStopConversation(actor, npc, 'conversation/tatooine_eisley_nogri', 's_40')
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('tatooine_opening_drixa')
mobileTemplate.setLevel(1)
mobileTemplate.setDifficulty(Difficulty.NORMAL)
mobileTemplate.setSocialGroup("township")
mobileTemplate.setOptionsBitmask(Options.INVULNERABLE | Options.CONVERSABLE)
templates = Vector()
templates.add('object/mobile/shared_dressed_tatooine_opening_drixa.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('drixa', 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('tatooine_opening_jano')
mobileTemplate.setLevel(1)
mobileTemplate.setDifficulty(Difficulty.NORMAL)
mobileTemplate.setSocialGroup("township")
mobileTemplate.setOptionsBitmask(Options.INVULNERABLE | Options.CONVERSABLE)
templates = Vector()
templates.add('object/mobile/shared_dressed_tatooine_opening_jano.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('jano', 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('tatooine_opening_nogri')
mobileTemplate.setLevel(1)
mobileTemplate.setDifficulty(Difficulty.NORMAL)
mobileTemplate.setSocialGroup("township")
mobileTemplate.setOptionsBitmask(Options.INVULNERABLE | Options.CONVERSABLE)
templates = Vector()
templates.add('object/mobile/shared_dressed_tatooine_opening_nogri.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('nogri', mobileTemplate)
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/drixa')
object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE)
object.setStfFilename('mob/creature_names')
object.setStfName('tatooine_opening_drixa')
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/jano')
object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE)
object.setStfFilename('mob/creature_names')
object.setStfName('tatooine_opening_jano')
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/nogri')
object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE)
object.setStfFilename('mob/creature_names')
object.setStfName('tatooine_opening_nogri')
return
@@ -5,5 +5,6 @@ def wait(core, actor):
return
def activate(core, actor, quest):
core.questService.completeActiveTask(actor, quest)
core.questService.completeActiveTask(actor, quest)
return
@@ -0,0 +1,10 @@
def setup(core):
return
def wait(core, actor):
return
def activate(core, actor, quest):
core.questService.completeActiveTask(actor, quest)
core.questService.completeActiveTask(actor, quest)
return
@@ -0,0 +1,10 @@
def setup(core):
return
def wait(core, actor):
return
def activate(core, actor, quest):
core.questService.completeActiveTask(actor, quest)
core.questService.completeActiveTask(actor, quest)
return
@@ -0,0 +1,10 @@
def setup(core):
return
def wait(core, actor):
return
def activate(core, actor, quest):
core.questService.completeActiveTask(actor, quest)
core.questService.completeActiveTask(actor, quest)
return
@@ -0,0 +1,4 @@
import sys
def run():
return "object/tangible/item/beast/shared_converted_chuba_decoration.iff"
@@ -16,6 +16,15 @@ def addPlanetSpawns(core, planet):
vourk = stcSvc.spawnObject('vourk', 'tatooine', long(0), float(3521.0), float(5.0), float(-4821.0), float(0.42), float(0.91))
# Byxle Pedette
byxlePedette = stcSvc.spawnObject('byxle', 'tatooine', long(0), float(3365), float(5), float(-4639), float(0.99), float(0.12))
byxle = stcSvc.spawnObject('byxle', 'tatooine', long(0), float(3365), float(5), float(-4639), float(0.99), float(0.12))
# Drixa Dreul
drixa = stcSvc.spawnObject('drixa', 'tatooine', long(0), float(3259), float(5), float(-4863), float(-0.38), float(0.92))
# Nogri Hessen
nogri = stcSvc.spawnObject('nogri', 'tatooine', long(0), float(3449), float(4), float(-5076), float(-0.38), float(0.92))
# Jano Bix
jano = stcSvc.spawnObject('jano', 'tatooine', long(0), float(3186), float(5), float(-4781), float(-0.38), float(0.92))
return