diff --git a/motd.txt b/motd.txt new file mode 100644 index 00000000..8d8e4743 --- /dev/null +++ b/motd.txt @@ -0,0 +1 @@ +Welcome to the ProjectSWG TestCenter! \ No newline at end of file diff --git a/nge.cfg b/nge.cfg index 036d6202..b11b4219 100644 --- a/nge.cfg +++ b/nge.cfg @@ -13,4 +13,3 @@ GALAXY_ID=2 GALAXY_NAME=Local Connection XPMULTIPLIER=1.0 MAXNUMBEROFCHARACTERS=2 -MOTD=Welcome to PSWG Test Center! \ No newline at end of file diff --git a/ngengine_public.jar b/ngengine_public.jar index d64a9419..079df450 100644 Binary files a/ngengine_public.jar and b/ngengine_public.jar differ diff --git a/options.cfg b/options.cfg index ac85b4ef..03abf4cf 100644 --- a/options.cfg +++ b/options.cfg @@ -1,5 +1,6 @@ LOAD.SNAPSHOT_OBJECTS=1 LOAD.BUILDOUT_OBJECTS=1 +#LOAD.BUILDOUT_ONLY_FOR="dantooine" LOAD.RESOURCE.SYSTEM=1 # Misc diff --git a/scripts/commands/combat/sm_inside_information.py b/scripts/commands/combat/sm_inside_information.py new file mode 100644 index 00000000..723669fb --- /dev/null +++ b/scripts/commands/combat/sm_inside_information.py @@ -0,0 +1,62 @@ +from resources.common import OutOfBand +from resources.common import ProsePackage +import sys + +def preRun(core, actor, target, command): + return + +def run(core, actor, target, commandString): + return + +def setup(core, actor, target, command): + + if actor.hasCooldown('inside_info'): + actor.sendSystemMessage('@bounty_hunter:sm_calling_contact_too_often', 0) + return + + elif target.hasCooldown('inside_info_target'): + actor.sendSystemMessage('@bounty_hunter:sm_calling_contact_too_often_target', 0) + return + + if target is None: + target = actor + + bountyItem = core.missionService.getBountyListItem(target.getObjectID()) + + if bountyItem is None: + target.sendSystemMessage('@bounty_hunter:sm_no_bounty_self', 0) + + else: + hunters = bountyItem.getAssignedHunters() + if hunters.size() > 0: + distance = hunterDistance(core, actor, target, hunters) + if distance != 0: + target.sendSystemMessage(OutOfBand.ProsePackage('@bounty_hunter:sm_bounty_hunter_distance', 'DI', int(distance)), 0) + applyCooldowns(actor, target) + return + else: + target.sendSystemMessage(OutOfBand.ProsePackage('@bounty_hunter:sm_bounty_amount_target_with_bounties', 'TO', str(bountyItem.getCreditReward())), 0) + applyCooldowns(actor, target) + return + else: + target.sendSystemMessage(OutOfBand.ProsePackage('@bounty_hunter:sm_bounty_amount_target_no_bounties', 'TO', str(bountyItem.getCreditReward())), 0) + applyCooldowns(actor, target) + return + return + return + +def hunterDistance(core, actor, target, assignedHunters): + for objID in assignedHunters: + hunter = core.objectService.getObject(objID) + if hunter is not None: + if hunter.getPlanetId() == target.getPlanetId(): + if target.getPosition().getDistance2D(hunter.getWorldPosition()) < float(300): + return target.getPosition().getDistance2D(hunter.getWorldPosition()) + return 0 + +def applyCooldowns(actor, target): + actor.addCooldown('inside_info', 60) + if target.getObjectID() != actor.getObjectID(): + target.addCooldown('inside_info_target', 600) + return + return \ No newline at end of file diff --git a/scripts/commands/createvendor.py b/scripts/commands/createvendor.py index d2e4a1cc..ce359139 100644 --- a/scripts/commands/createvendor.py +++ b/scripts/commands/createvendor.py @@ -158,7 +158,9 @@ def handleVendorName(actor, window, eventType, returnList): actor.setAttachment('selectedVendorTemplate', None) vendor.setAttachment('isVendor', True) - vendor.setAttachment('vendorOwner', actor.getObjectID()) + vendor.setAttachment('onMap', True) + vendor.setAttachment('maintenanceAmount', 0) + vendor.setAttachment('vendorOwner', Long(actor.getObjectID())) vendor.setAttachment('initialized', False) vendor.setAttachment('vendorSearchEnabled', False) vendor.setCustomName('Vendor: ' + name) diff --git a/scripts/commands/gc.py b/scripts/commands/gc.py index b3559b3b..8091acbe 100644 --- a/scripts/commands/gc.py +++ b/scripts/commands/gc.py @@ -9,5 +9,5 @@ def run(core, actor, target, commandString): if group is None: return - core.chatService.sendChatRoomMessage(actor, group.getChatRoomId(), commandString) + core.chatService.sendChatRoomMessage(actor, group.getChatRoomId(), 0, commandString) return \ No newline at end of file diff --git a/scripts/commands/guild.py b/scripts/commands/guild.py new file mode 100644 index 00000000..2bc6b552 --- /dev/null +++ b/scripts/commands/guild.py @@ -0,0 +1,13 @@ +import sys + +def setup(): + return + +def run(core, actor, target, commandString): + guild = core.guildService.getGuildById(actor.getGuildId()) + + if guild is None: + return + + core.chatService.sendChatRoomMessage(actor, guild.getChatRoomId(), 0, commandString) + return \ No newline at end of file diff --git a/scripts/commands/guildchangename.py b/scripts/commands/guildchangename.py new file mode 100644 index 00000000..a294a9ce --- /dev/null +++ b/scripts/commands/guildchangename.py @@ -0,0 +1,26 @@ +import sys + +def setup(): + return + +def run(core, actor, target, commandString): + + if actor.getGuildId() == 0: + return + + guildSvc = core.guildService + + guild = guildSvc.getGuildById(actor.getGuildId()) + + if guild is None: + return + + member = guild.getMember(actor.getObjectID()) + if actor.getObjectID() != guild.getLeader() and member.hasChangeNamePermission() is False: + actor.sendSystemMessage('@guild:guild_no_permission_operation', 0) + return + else: + guildSvc.handleChangeGuildName(actor, guild) + return + + return \ No newline at end of file diff --git a/scripts/commands/guilddisband.py b/scripts/commands/guilddisband.py new file mode 100644 index 00000000..8f0e6124 --- /dev/null +++ b/scripts/commands/guilddisband.py @@ -0,0 +1,26 @@ +import sys + +def setup(): + return + +def run(core, actor, target, commandString): + + if actor.getGuildId() == 0: + return + + guildSvc = core.guildService + + guild = guildSvc.getGuildById(actor.getGuildId()) + + if guild is None: + return + + member = guild.getMember(actor.getObjectID()) + if actor.getObjectID() != guild.getLeader() and member.hasDisbandPermission() is False: + actor.sendSystemMessage('@guild:guild_no_permission_operation', 0) + return + else: + guildSvc.showDisbandConfirmWindow(actor, target, guild) + return + + return diff --git a/scripts/commands/guildinfo.py b/scripts/commands/guildinfo.py new file mode 100644 index 00000000..aa8a8450 --- /dev/null +++ b/scripts/commands/guildinfo.py @@ -0,0 +1,19 @@ +import sys + +def setup(): + return + +def run(core, actor, target, commandString): + + if actor.getGuildId() == 0: + return + + guildSvc = core.guildService + + guild = guildSvc.getGuildById(actor.getGuildId()) + + if guild is None: + return + + guildSvc.showGuildInfoWindow(actor, guild) + return diff --git a/scripts/commands/guildremove.py b/scripts/commands/guildremove.py new file mode 100644 index 00000000..f974c160 --- /dev/null +++ b/scripts/commands/guildremove.py @@ -0,0 +1,36 @@ +import sys + +def setup(): + return + +def run(core, actor, target, commandString): + + if commandString != " " and commandString != "": + target = core.objectService.getObjectByFirstName(commandString.split(" ")[0]) + + if target is None: + actor.sendSystemMessage('Could not find member ' + commandString + ' (CASE SENSITIVE!)', 0) + return + + if actor.getGuildId() == 0: + return + + if actor.getGuildId() != target.getGuildId(): + actor.sendSystemMessage('@guild:guild_no_permission_operation', 0) + return + + guildSvc = core.guildService + + guild = guildSvc.getGuildById(actor.getGuildId()) + + if guild is None: + return + + if actor.getObjectID() == target.getObjectID(): + guildSvc.leaveGuild(actor, target, guild) + return + else: + guildSvc.showKickConfirmWindow(actor, target, guild) + return + + return diff --git a/scripts/commands/guildsay.py b/scripts/commands/guildsay.py new file mode 100644 index 00000000..23ca291d --- /dev/null +++ b/scripts/commands/guildsay.py @@ -0,0 +1,13 @@ +import sys + +def setup(): + return + +def run(core, actor, target, commandString): + guild = core.guildService.getGuildById(actor.getGuildId()) + + if guild is None: + return + + core.chatService.sendChatRoomMessage(actor, guild.getChatRoomId(), 0, commandString) + return \ No newline at end of file diff --git a/scripts/commands/guildsponsor.py b/scripts/commands/guildsponsor.py new file mode 100644 index 00000000..513af1ed --- /dev/null +++ b/scripts/commands/guildsponsor.py @@ -0,0 +1,28 @@ +import sys + +def setup(): + return + +def run(core, actor, target, commandString): + + if actor.getGuildId() == 0: + return + + guildSvc = core.guildService + + guild = guildSvc.getGuildById(actor.getGuildId()) + + if guild is None: + return + + member = guild.getMember(actor.getObjectID()) + + if member is None: + return + + if not member.hasSponsorPermission(): + actor.sendSystemMessage('@guild:guild_no_permission_operation', 0) + return + + guildSvc.handleGuildSponsorWindow(actor) + return diff --git a/scripts/commands/npcconversationselect.py b/scripts/commands/npcconversationselect.py index 01d6aa0d..92bd4bf3 100644 --- a/scripts/commands/npcconversationselect.py +++ b/scripts/commands/npcconversationselect.py @@ -4,7 +4,7 @@ def setup(): return def run(core, actor, target, commandString): - print int(commandString) + #print int(commandString) core.conversationService.handleConversationSelection(actor, int(commandString)) return \ No newline at end of file diff --git a/scripts/commands/setgodmode.py b/scripts/commands/setgodmode.py index 680ba082..1f419588 100644 --- a/scripts/commands/setgodmode.py +++ b/scripts/commands/setgodmode.py @@ -1,6 +1,7 @@ import sys from engine.resources.scene import Point3D from protocol.swg import ObjControllerMessage +from protocol.swg import UnknownAbilityPacket from engine.resources.objects import SWGObject def setup(): @@ -114,6 +115,9 @@ def run(core, actor, target, commandString): playerObject.setGodLevel(0) elif command == 'setBounty': + if actor.getFaction() == "": + actor.sendSystemMessage('You must be aligned in order to place a bounty on yourself.', 0) + return core.playerService.sendSetBountyWindow(actor, actor) return @@ -125,4 +129,9 @@ def run(core, actor, target, commandString): if inventory: inventory.add(object) + elif command == 'unknownAbilityPacket' and arg1: + packet = UnknownAbilityPacket(arg1) + actor.getClient().getSession().write(packet.serialize()) + actor.sendSystemMessage('Sent UnknownAbilityPacket for ability ' + arg1, 0) + return return diff --git a/scripts/commands/transferitemmisc.py b/scripts/commands/transferitemmisc.py index 30dd0846..2df5ab93 100644 --- a/scripts/commands/transferitemmisc.py +++ b/scripts/commands/transferitemmisc.py @@ -13,7 +13,7 @@ def run(core, actor, target, commandString): if container == None: return - if(container.isFull()): + if not 'cell' in container.getTemplate() and container.isFull(): actor.sendSystemMessage('@container_error_message:container03', 0) return diff --git a/scripts/conversation/imp_recruiter.py b/scripts/conversation/imp_recruiter.py index 7659eb4b..3b506483 100644 --- a/scripts/conversation/imp_recruiter.py +++ b/scripts/conversation/imp_recruiter.py @@ -28,99 +28,41 @@ def startConversation(core, actor, npc): core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_imperial', 's_444') return elif actor.getFaction() != 'rebel' and actor.getFaction() != 'imperial': - prose = ProsePackage('conversation/faction_recruiter_imperial', 's_414') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/faction_recruiter_imperial', 's_428') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose3 = ProsePackage('conversation/faction_recruiter_imperial', 's_85') - outOfBand3 = OutOfBand() - outOfBand3.addProsePackage(prose3) - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand3, 1) - + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_414')) options = Vector() - options.add(option1) - options.add(option2) - + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_428'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_85'), 1)) convSvc.sendConversationOptions(actor, npc, options, handleFirstScreen) + return elif actor.getFaction() == 'imperial' and actor.getFactionStatus() == FactionStatus.OnLeave: - prose = ProsePackage('conversation/faction_recruiter_imperial', 's_80') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/faction_recruiter_imperial', 's_49') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose3 = ProsePackage('conversation/faction_recruiter_imperial', 's_410') - outOfBand3 = OutOfBand() - outOfBand3.addProsePackage(prose3) - prose4 = ProsePackage('conversation/faction_recruiter_imperial', 's_324') - outOfBand4 = OutOfBand() - outOfBand4.addProsePackage(prose4) - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand3, 1) - option3 = ConversationOption(outOfBand4, 1) - + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_80')) options = Vector() - options.add(option1) - options.add(option2) - options.add(option3) - - convSvc.sendConversationOptions(actor, npc, options, handleFirstScreen) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_49'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_410'), 1)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_324'), 2)) + convSvc.sendConversationOptions(actor, npc, options, handleFirstScreen) + return elif actor.getFaction() == 'imperial' and actor.getFactionStatus() == FactionStatus.Combatant: - prose = ProsePackage('conversation/faction_recruiter_imperial', 's_310') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/faction_recruiter_imperial', 's_49') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose4 = ProsePackage('conversation/faction_recruiter_imperial', 's_410') - outOfBand4 = OutOfBand() - outOfBand4.addProsePackage(prose4) - prose5 = ProsePackage('conversation/faction_recruiter_imperial', 's_324') - outOfBand5 = OutOfBand() - outOfBand5.addProsePackage(prose5) - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand4, 1) - option4 = ConversationOption(outOfBand5, 1) + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_310')) options = Vector() - options.add(option1) - options.add(option2) - options.add(option4) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_49'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_410'), 1)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_324'), 2)) convSvc.sendConversationOptions(actor, npc, options, handleFirstScreen) return elif actor.getFactionStatus() == FactionStatus.SpecialForces: - prose = ProsePackage('conversation/faction_recruiter_imperial', 's_310') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/faction_recruiter_imperial', 's_49') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose4 = ProsePackage('conversation/faction_recruiter_imperial', 's_410') - outOfBand4 = OutOfBand() - outOfBand4.addProsePackage(prose4) - prose5 = ProsePackage('conversation/faction_recruiter_imperial', 's_324') - outOfBand5 = OutOfBand() - outOfBand5.addProsePackage(prose5) - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand4, 1) - option4 = ConversationOption(outOfBand5, 1) + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_310')) options = Vector() - options.add(option1) - options.add(option2) - options.add(option4) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_49'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_410'), 1)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_324'), 2)) convSvc.sendConversationOptions(actor, npc, options, handleFirstScreen) return @@ -135,28 +77,14 @@ def handleFirstScreen(core, actor, npc, selection): convSvc = core.conversationService if actor.getFaction() != 'rebel' and actor.getFaction() != 'imperial': if selection == 0: - prose = ProsePackage('conversation/faction_recruiter_imperial', 's_432') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/faction_recruiter_imperial', 's_434') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose3 = ProsePackage('conversation/faction_recruiter_imperial', 's_440') - outOfBand3 = OutOfBand() - outOfBand3.addProsePackage(prose3) - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand3, 1) - + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_432')) options = Vector() - options.add(option1) - options.add(option2) - + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_434'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_440'), 1)) convSvc.sendConversationOptions(actor, npc, options, handleSecondScreen) return - - + if selection == 1: return @@ -166,145 +94,67 @@ def handleFirstScreen(core, actor, npc, selection): return elif actor.getFaction() == 'imperial' and actor.getFactionStatus() == FactionStatus.OnLeave: if selection == 0: - prose = ProsePackage('conversation/faction_recruiter_imperial', 's_50') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/faction_recruiter_imperial', 's_97') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose3 = ProsePackage('conversation/faction_recruiter_imperial', 's_93') - outOfBand3 = OutOfBand() - outOfBand3.addProsePackage(prose3) - prose4 = ProsePackage('conversation/faction_recruiter_imperial', 's_88') - outOfBand4 = OutOfBand() - outOfBand4.addProsePackage(prose4) - prose5 = ProsePackage('conversation/faction_recruiter_imperial', 's_55') - outOfBand5 = OutOfBand() - outOfBand5.addProsePackage(prose5) - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand3, 1) - option3 = ConversationOption(outOfBand4, 1) - option4 = ConversationOption(outOfBand5, 1) - + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_50')) options = Vector() - options.add(option1) - options.add(option2) - options.add(option3) - options.add(option4) - + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_97'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_93'), 1)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_88'), 2)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_55'), 3)) convSvc.sendConversationOptions(actor, npc, options, handleSecondScreen) - return + return if selection == 1: percent = core.guildService.getGuildObject().getCurrentServerGCWTotalPercentMap().get(actor.getPlanet().getName()).getPercent().intValue() convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage("@conversation/faction_recruiter_imperial:s_412", percent, "TO", str(100 - percent))) return - if selection == 2: return return elif actor.getFaction() == 'imperial' and actor.getFactionStatus() == FactionStatus.Combatant: if selection == 0: - prose = ProsePackage('conversation/faction_recruiter_imperial', 's_50') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/faction_recruiter_imperial', 's_74') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose3 = ProsePackage('conversation/faction_recruiter_imperial', 's_93') - outOfBand3 = OutOfBand() - outOfBand3.addProsePackage(prose3) - prose4 = ProsePackage('conversation/faction_recruiter_imperial', 's_88') - outOfBand4 = OutOfBand() - outOfBand4.addProsePackage(prose4) - prose5 = ProsePackage('conversation/faction_recruiter_imperial', 's_55') - outOfBand5 = OutOfBand() - outOfBand5.addProsePackage(prose5) - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand3, 1) - option3 = ConversationOption(outOfBand4, 1) - option4 = ConversationOption(outOfBand5, 1) - + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('conversation/faction_recruiter_imperial', 's_55')) options = Vector() - options.add(option1) - options.add(option2) - options.add(option3) - options.add(option4) - + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_74'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_93'), 1)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_88'), 2)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_55'), 3)) convSvc.sendConversationOptions(actor, npc, options, handleSecondScreen) + return - if selection == 1: percent = core.guildService.getGuildObject().getCurrentServerGCWTotalPercentMap().get(actor.getPlanet().getName()).getPercent().intValue() convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage("@conversation/faction_recruiter_imperial:s_412", percent, "TO", str(100 - percent))) return if selection == 2: - prose = ProsePackage('conversation/faction_recruiter_imperial', 's_90') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/faction_recruiter_imperial', 's_92') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose3 = ProsePackage('conversation/faction_recruiter_imperial', 's_96') - outOfBand3 = OutOfBand() - outOfBand3.addProsePackage(prose3) - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand3, 1) - + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_90')) options = Vector() - options.add(option1) - options.add(option2) - + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_92'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_96'), 1)) convSvc.sendConversationOptions(actor, npc, options, handleSecondScreen) + return return elif actor.getFaction() == 'imperial' and actor.getFactionStatus() == FactionStatus.SpecialForces: if selection == 0: - prose = ProsePackage('conversation/faction_recruiter_imperial', 's_50') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/faction_recruiter_imperial', 's_74') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose3 = ProsePackage('conversation/faction_recruiter_imperial', 's_97') - outOfBand3 = OutOfBand() - outOfBand3.addProsePackage(prose3) - prose4 = ProsePackage('conversation/faction_recruiter_imperial', 's_88') - outOfBand4 = OutOfBand() - outOfBand4.addProsePackage(prose4) - prose5 = ProsePackage('conversation/faction_recruiter_imperial', 's_55') - outOfBand5 = OutOfBand() - outOfBand5.addProsePackage(prose5) - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand3, 1) - option3 = ConversationOption(outOfBand4, 1) - option4 = ConversationOption(outOfBand5, 1) - + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_50')) options = Vector() - options.add(option1) - options.add(option2) - options.add(option3) - options.add(option4) - + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_74'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_97'), 1)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_88'), 2)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_55'), 3)) convSvc.sendConversationOptions(actor, npc, options, handleSecondScreen) + return - if selection == 1: percent = core.guildService.getGuildObject().getCurrentServerGCWTotalPercentMap().get(actor.getPlanet().getName()).getPercent().intValue() convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage("@conversation/faction_recruiter_imperial:s_412", percent, "TO", str(100 - percent))) return - if selection == 2: - return return @@ -315,79 +165,40 @@ def handleSecondScreen(core, actor, npc, selection): if actor.getFaction() != 'rebel' and actor.getFaction() != 'imperial': if selection == 0: - actor.setFaction('imperial') - actor.setFactionStatus(FactionStatus.OnLeave) - - prose = ProsePackage('conversation/faction_recruiter_imperial', 's_116') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/faction_recruiter_imperial', 's_438') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - option1 = ConversationOption(outOfBand2, 0) - + core.factionService.join(actor, 'imperial') + core.factionService.changeFactionStatus(actor, FactionStatus.OnLeave) + + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_116')) options = Vector() - options.add(option1) - - - core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_imperial', 's_100') + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_438'), 0)) + core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_imperial', 's_100') + return - if selection ==1: + if selection == 1: core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_imperial', 's_442') return return elif actor.getFaction() == 'imperial' and actor.getFactionStatus() == FactionStatus.OnLeave: if selection == 0: - actor.setFactionStatus(FactionStatus.Combatant) + core.factionService.changeFactionStatus(actor, FactionStatus.Combatant) core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_imperial', 's_300') return if selection == 1: - prose = ProsePackage('conversation/faction_recruiter_imperial', 's_64') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/faction_recruiter_imperial', 's_66') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose3 = ProsePackage('conversation/faction_recruiter_imperial', 's_302') - outOfBand3 = OutOfBand() - outOfBand3.addProsePackage(prose3) - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand3, 1) - - + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_64')) options = Vector() - options.add(option1) - options.add(option2) - - + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_66'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_302'), 1)) convSvc.sendConversationOptions(actor, npc, options, handleFourthScreen) return if selection == 2: - prose = ProsePackage('conversation/faction_recruiter_imperial', 's_90') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/faction_recruiter_imperial', 's_92') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose3 = ProsePackage('conversation/faction_recruiter_imperial', 's_96') - outOfBand3 = OutOfBand() - outOfBand3.addProsePackage(prose3) - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand3, 1) - - + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_90')) options = Vector() - options.add(option1) - options.add(option2) - - + options.add(ConversationOption(outOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_92'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_96'), 1)) convSvc.sendConversationOptions(actor, npc, options, handleThirdScreen) return if selection == 3: @@ -396,148 +207,63 @@ def handleSecondScreen(core, actor, npc, selection): return elif actor.getFaction() == 'imperial' and actor.getFactionStatus() == FactionStatus.Combatant: if selection == 0: - prose = ProsePackage('conversation/faction_recruiter_imperial', 's_76') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/faction_recruiter_imperial', 's_79') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose3 = ProsePackage('conversation/faction_recruiter_imperial', 's_70') - outOfBand3 = OutOfBand() - outOfBand3.addProsePackage(prose3) - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand3, 1) - - + core.factionService.changeFactionStatus(actor, FactionStatus.SpecialForces) + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_76')) options = Vector() - options.add(option1) - options.add(option2) - - + options.add(ConversationOption(outOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_79'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_70'), 1)) convSvc.sendConversationOptions(actor, npc, options, handleFithScreen) return if selection == 1: - prose = ProsePackage('conversation/faction_recruiter_imperial', 's_64') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/faction_recruiter_imperial', 's_66') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose3 = ProsePackage('conversation/faction_recruiter_imperial', 's_302') - outOfBand3 = OutOfBand() - outOfBand3.addProsePackage(prose3) - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand3, 1) - - + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_64')) options = Vector() - options.add(option1) - options.add(option2) - - + options.add(ConversationOption(outOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_66'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_302'), 1)) convSvc.sendConversationOptions(actor, npc, options, handleFourthScreen) + return if selection == 2: - prose = ProsePackage('conversation/faction_recruiter_imperial', 's_90') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/faction_recruiter_imperial', 's_92') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose3 = ProsePackage('conversation/faction_recruiter_imperial', 's_96') - outOfBand3 = OutOfBand() - outOfBand3.addProsePackage(prose3) - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand3, 1) - - + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_90')) options = Vector() - options.add(option1) - options.add(option2) - - + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_92'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_96'), 1)) convSvc.sendConversationOptions(actor, npc, options, handleThirdScreen) + return if selection == 3: return return elif actor.getFaction() == 'imperial' and actor.getFactionStatus() == FactionStatus.SpecialForces: if selection == 0: - prose = ProsePackage('conversation/faction_recruiter_imperial', 's_76') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/faction_recruiter_imperial', 's_79') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose3 = ProsePackage('conversation/faction_recruiter_imperial', 's_70') - outOfBand3 = OutOfBand() - outOfBand3.addProsePackage(prose3) - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand3, 1) - - + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('conversation/faction_recruiter_imperial:s_76')) options = Vector() - options.add(option1) - options.add(option2) - - + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_79'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_70'), 1)) convSvc.sendConversationOptions(actor, npc, options, handleFithScreen) + return - if selection == 1: - prose = ProsePackage('conversation/faction_recruiter_imperial', 's_54') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/faction_recruiter_imperial', 's_56') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose3 = ProsePackage('conversation/faction_recruiter_imperial', 's_84') - outOfBand3 = OutOfBand() - outOfBand3.addProsePackage(prose3) - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand3, 1) - - + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_54')) options = Vector() - options.add(option1) - options.add(option2) - - + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_56'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_84'), 1)) convSvc.sendConversationOptions(actor, npc, options, handleSixthScreen) + return if selection == 2: - prose = ProsePackage('conversation/faction_recruiter_imperial', 's_90') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/faction_recruiter_imperial', 's_92') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose3 = ProsePackage('conversation/faction_recruiter_imperial', 's_96') - outOfBand3 = OutOfBand() - outOfBand3.addProsePackage(prose3) - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand3, 1) - - - + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_90')) + options = Vector() - options.add(option1) - options.add(option2) - - + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_92'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/faction_recruiter_imperial:s_96'), 1)) convSvc.sendConversationOptions(actor, npc, options, handleThirdScreen) + return if selection == 3: return @@ -546,7 +272,7 @@ def handleSecondScreen(core, actor, npc, selection): def handleThirdScreen(core, actor, npc, selection): if selection == 0: core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_imperial', 's_94') - actor.setFaction('') + core.factionService.resign(actor) return if selection == 1: @@ -556,7 +282,7 @@ def handleThirdScreen(core, actor, npc, selection): def handleFourthScreen(core, actor, npc, selection): if selection == 0: - actor.setFactionStatus(FactionStatus.SpecialForces) + core.factionService.changeFactionStatus(actor, FactionStatus.Combatant) core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_imperial', 's_68') return if selection == 1: @@ -566,7 +292,7 @@ def handleFourthScreen(core, actor, npc, selection): def handleFithScreen(core, actor, npc, selection): if selection == 0: - actor.setFactionStatus(FactionStatus.OnLeave); + core.factionService.changeFactionStatus(actor, FactionStatus.OnLeave) core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_imperial', 's_82') return diff --git a/scripts/conversation/junk_dealer.py b/scripts/conversation/junk_dealer.py index 5e5c435b..b0741467 100644 --- a/scripts/conversation/junk_dealer.py +++ b/scripts/conversation/junk_dealer.py @@ -5,357 +5,71 @@ from resources.common import RadialOptions from services.sui import SUIWindow from services.sui.SUIWindow import Trigger from java.util import Vector +from main import NGECore import sys -sellItemListRef = 0 -buyItemListRef = 0 -coreRef = 0 -junkDealerRef = 0 - def startConversation(core, actor, npc): - #core.lootService.prepInv(actor) - global coreRef - global junkDealerRef - global sellItemListRef - sellItemListRef = core.lootService.getSellableInventoryItems(actor) - coreRef = core - junkDealerRef = npc convSvc = core.conversationService - prose = ProsePackage('conversation/junk_dealer_generic', 's_bef51e38') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/junk_dealer_generic', 's_54fab04f') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose3 = ProsePackage('conversation/junk_dealer_generic', 's_48') - outOfBand3 = OutOfBand() - outOfBand3.addProsePackage(prose3) - prose4 = ProsePackage('conversation/junk_dealer_generic', 's_3aa18b2d') - outOfBand4 = OutOfBand() - outOfBand4.addProsePackage(prose4) - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand3, 1) - option3 = ConversationOption(outOfBand4, 1) + + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_bef51e38')) options = Vector() - options.add(option1) - options.add(option2) - options.add(option3) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_54fab04f'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_48'), 1)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_3aa18b2d'), 2)) - if len(core.lootService.getBuyHistory(actor,npc))!= 0: - prose5 = ProsePackage('conversation/junk_dealer_generic', 's_43') - outOfBand5 = OutOfBand() - outOfBand5.addProsePackage(prose5) - option4 = ConversationOption(outOfBand5, 1) - options.add(option4) + buyBack = actor.getAttachment('buy_back') + + if buyBack is not None and buyBack != 0 and core.objectService.objsInContainer(actor, core.objectService.getObject(buyBack)) > 0: + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_43'), 3)) convSvc.sendConversationOptions(actor, npc, options, handleFirstScreen) return def handleFirstScreen(core, actor, npc, selection): - convSvc = core.conversationService if selection == 0: # sell items - - prose = ProsePackage('conversation/junk_dealer_generic', 's_84a67771') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - + sellItemListRef = core.lootService.getSellableInventoryItems(actor) if len(sellItemListRef) == 0: actor.sendSystemMessage('@loot_dealer:no_items', 1) - startConversation(coreRef,actor,junkDealerRef) + startConversation(core, actor, npc) return # no point - window = core.suiService.createSUIWindow('Script.listBox', actor, npc, 0) - window.setProperty('bg.caption.lblTitle:Text', '@loot_dealer:sell_title') - window.setProperty('Prompt.lblPrompt:Text', '@loot_dealer:sell_prompt') - - for item in sellItemListRef: - window.addListBoxMenuItem(item.getCustomName(), 0); - - window.setProperty('btnOther:visible', 'True') - window.setProperty('btnCancel:visible', 'True') - window.setProperty('btnOk:visible', 'True') - window.setProperty('btnOther:Text', '@loot_dealer:examine') - window.setProperty('btnCancel:Text', '@cancel') - window.setProperty('btnOk:Text', '@loot_dealer:btn_sell') - returnList = Vector() - returnList.add('List.lstList:SelectedRow') - - window.addHandler(0, '', Trigger.TRIGGER_OK, returnList, sellWindowCallBack) - window.addHandler(1, '', Trigger.TRIGGER_CANCEL, returnList, sellWindowCallBack) - window.addHandler(2, '', Trigger.TRIGGER_UPDATE, returnList, sellWindowCallBack) - core.suiService.openSUIWindow(window); - + convSvc.sendStopConversation(actor, npc, 'conversation/junk_dealer_generic', 's_84a67771') + core.lootService.handleJunkDealerSellWindow(actor, npc, sellItemListRef) return if selection == 1: - # mark items - window = core.suiService.createSUIWindow('Script.listBox', actor, npc, 0) - window.setProperty('bg.caption.lblTitle:Text', '@loot_dealer:junk_no_sell_title') - window.setProperty('Prompt.lblPrompt:Text', '@loot_dealer:junk_no_sell_desc') - - sellItemListRef = core.lootService.getSellableInventoryItems(actor) - - for item in sellItemListRef: - nameString = item.getCustomName() - nameString = 'TestJunkItem' - if item.isNoSell(): - nameString = '[*No Sell*]' + item.getCustomName() - window.addListBoxMenuItem(nameString, 0) - else: - nameString = '[Sellable]' + item.getCustomName() - window.addListBoxMenuItem(nameString, 0) - - window.setProperty('btnOther:visible', 'True') - window.setProperty('btnCancel:visible', 'True') - window.setProperty('btnOk:visible', 'True') - window.setProperty('btnOther:Text', '@loot_dealer:examine') - window.setProperty('btnCancel:Text', '@cancel') - window.setProperty('btnOk:Text', '@loot_dealer:junk_no_sell_button') - returnList = Vector() - returnList.add('List.lstList:SelectedRow') - - #window.addHandler(0, '', Trigger.TRIGGER_OK, returnList, noSellWindowCallBack) - #window.addHandler(1, '', Trigger.TRIGGER_CANCEL, returnList, noSellWindowCallBack) - window.addHandler(0, '',9, returnList, noSellWindowCallBack) - window.addHandler(1, '',10, returnList, noSellWindowCallBack) - window.addHandler(2, '',11, returnList, noSellWindowCallBack) - core.suiService.openSUIWindow(window); + # Mark Items + convSvc.sendStopConversation(actor, npc, 'conversation/junk_dealer_generic', 's_50') + core.lootService.handleJunkDealerMarkItems(actor, npc) return if selection == 2: lootKitScreen1(core, actor, npc) - + return if selection == 3: # buy back - buyHistory = coreRef.lootService.getBuyHistory(actor,npc) - if len(buyHistory) == 0: + buyHistory = core.objectService.objsInContainer(actor, core.objectService.getObject(actor.getAttachment('buy_back'))) + if buyHistory == 0: actor.sendSystemMessage('@loot_dealer:no_buy_back_items_found', 1) - startConversation(coreRef,actor,npc) + startConversation(core,actor,npc) return - prose = ProsePackage('conversation/junk_dealer_generic', 's_44') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - - window = core.suiService.createSUIWindow('Script.listBox', actor, npc, 0) - window.setProperty('bg.caption.lblTitle:Text', '@loot_dealer:buy_back_title') - window.setProperty('Prompt.lblPrompt:Text', '@loot_dealer:buy_back_prompt') - - buyHistory = core.lootService.getBuyHistory(actor,junkDealerRef) - if buyHistory==None: - return - - - - for item in buyHistory: - junkDealerPrice = item.getJunkDealerPrice() - if junkDealerPrice == 0: - junkDealerPrice = 20 - nameString = '[%s' % junkDealerPrice + ']' + item.getCustomName() #% - window.addListBoxMenuItem(nameString, 0) - - window.setProperty('btnOther:visible', 'True') - window.setProperty('btnCancel:visible', 'True') - window.setProperty('btnOk:visible', 'True') - window.setProperty('btnOther:Text', '@loot_dealer:examine') - window.setProperty('btnCancel:Text', '@cancel') - window.setProperty('btnOk:Text', '@loot_dealer:btn_buy_back') - returnList = Vector() - returnList.add('List.lstList:SelectedRow') - - window.addHandler(0, '', Trigger.TRIGGER_OK, returnList, buyBackWindowCallBack) - window.addHandler(1, '', Trigger.TRIGGER_CANCEL, returnList, buyBackWindowCallBack) - window.addHandler(2, '', Trigger.TRIGGER_UPDATE, returnList, buyBackWindowCallBack) - core.suiService.openSUIWindow(window); - + convSvc.sendStopConversation(actor, npc, 'conversation/junk_dealer_generic', 's_44') + core.lootService.handleJunkDealerBuyBackWindow(actor, npc) return - -def handleRespecScreen(core, actor, npc, selection): - - if selection == 0: - core.skillService.sendRespecWindow(actor) - - core.conversationService.handleEndConversation(actor, npc) - - return - - -def handleResetScreen(core, actor, npc, selection): - - if selection == 0: - core.skillService.resetExpertise(actor) - - core.conversationService.handleEndConversation(actor, npc) - return def endConversation(core, actor, npc): core.conversationService.sendStopConversation(actor, npc, 'conversation/junk_dealer_generic', 's_4bd9d15e') return - - -def sellWindowCallBack(owner, window, eventType, returnList): - - sellItemListRef = coreRef.lootService.getSellableInventoryItems(owner) - - #sell - if eventType == 0: - - sellItem = sellItemListRef.get(int(returnList.get(0))) - - #if len(sellItemListRef): - #owner.sendSystemMessage('@junk_dealer:no_items', 1) - #return - - if sellItem == None: - owner.sendSystemMessage('@junk_dealer:no_items', 1) - return - - inventory = owner.getSlottedObject('inventory') - - - junkDealerPrice = sellItem.getJunkDealerPrice() - if junkDealerPrice == 0: - junkDealerPrice = 20 - owner.setCashCredits(owner.getCashCredits()+junkDealerPrice) - - # add item to 10-item junk dealer history - coreRef.lootService.addToBuyHistory(owner,junkDealerRef,sellItem) - - owner.sendSystemMessage(OutOfBand.ProsePackage("@junk_dealer:prose_sold_junk", "TT", sellItem.getCustomName(),junkDealerPrice), 0) - - inventory.remove(sellItem) - - coreRef.suiService.closeSUIWindow(owner,window.getWindowId()) - handleFirstScreen(coreRef, owner, junkDealerRef, 0) - return - - #cancel - if eventType == 1: - owner.sendSystemMessage("cancel ", 1) - coreRef.suiService.closeSUIWindow(owner,window.getWindowId()) - startConversation(coreRef,owner,junkDealerRef) - return - - #examine - if eventType == 2: - owner.sendSystemMessage("examine ", 1) - #coreRef.suiService.closeSUIWindow(window,window.getWindowId()) - #startConversation(coreRef,owner,junkDealerRef) - #owner.sendSystemMessage('Examine', 0) - return - - return - -def noSellWindowCallBack(owner, window, eventType, returnList): - - if returnList.get(0) == 0: - startConversation(coreRef,owner,junkDealerRef) - return - - #toggle - if eventType == 0: - owner.sendSystemMessage('Toggle', 0) - toggleItem = sellItemListRef.get(int(returnList.get(0))) - if toggleItem.isNoSell(): - toggleItem.setNoSell(0) - else: - toggleItem.setNoSell(1) - - #core.suiService.closeSUIWindow(window) - handleFirstScreen(coreRef, owner, junkDealerRef, 1) - return - - #cancel - if eventType == 1: - owner.sendSystemMessage('Cancel', 0) - sellItem = returnList.get(0) - startConversation(coreRef,owner,junkDealerRef) - return - - #examine - if eventType == 2: - owner.sendSystemMessage('Ex', 0) - sellItem = returnList.get(0) - startConversation(coreRef,owner,junkDealerRef) - owner.sendSystemMessage('Examine', 0) - return - -def buyBackWindowCallBack(owner, window, eventType, returnList): - - convSvc = coreRef.conversationService - - if returnList.get(0) == 0: - startConversation(coreRef,owner,junkDealerRef) - return - - #buy - if eventType == 0: - index = int(returnList.get(0)) - buyHistory = coreRef.lootService.getBuyHistory(owner,junkDealerRef) - if len(buyHistory) == 0: - owner.sendSystemMessage('@loot_dealer:no_buy_back_items_found', 1) - startConversation(coreRef,owner,junkDealerRef) - return - - buyBackItem = buyHistory.get(index) - - if buyBackItem == None: - owner.sendSystemMessage('@loot_dealer:no_buy_back_items_found', 0) - startConversation(coreRef,owner,junkDealerRef) - return - - if owner.getInventoryItemCount() >= 80: - prose = ProsePackage('conversation/junk_dealer_generic', 's_47') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(owner, junkDealerRef, outOfBand) - return - - junkDealerPrice = buyBackItem.getJunkDealerPrice() - if junkDealerPrice == 0: - junkDealerPrice = 20 - owner.setCashCredits(owner.getCashCredits()+junkDealerPrice) - - if owner.getCashCredits()>=junkDealerPrice: - owner.setCashCredits(owner.getCashCredits()-junkDealerPrice) - inventory = owner.getSlottedObject('inventory') - inventory.add(buyBackItem) - owner.sendSystemMessage('You buy back ' + buyBackItem.getCustomName() + ' for %s' % junkDealerPrice + ' credits.', 0) - # remove from junk dealer history - coreRef.lootService.removeBoughtBackItemFromHistory(owner,junkDealerRef,buyBackItem) - else: - owner.sendSystemMessage('@loot_dealer:prose_no_buy_back', 0) - - coreRef.suiService.closeSUIWindow(owner,window.getWindowId()); - handleFirstScreen(coreRef, owner, junkDealerRef, 3) - return - - #cancel - if eventType == 1: - owner.sendSystemMessage('Cancel', 0) - sellItem = returnList.get(0) - startConversation(coreRef,owner,junkDealerRef) - return - - #examine - if eventType == 2: - owner.sendSystemMessage('Ex', 0) - sellItem = returnList.get(0) - startConversation(coreRef,owner,junkDealerRef) - owner.sendSystemMessage('Examine', 0) - return def handleLootScreenSelection1(core, actor, npc, selection): @@ -402,11 +116,8 @@ def handleLootScreenSelection5(core, actor, npc, selection): def handleLootScreenSelection6(core, actor, npc, selection): - convSvc = core.conversationService - prose = ProsePackage('conversation/junk_dealer_generic', 's_14efaaa2') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) + convSvc = core.conversationService + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_14efaaa2')) if selection == 0: template = 'object/tangible/loot/collectible/kits/shared_orange_rug_kit.iff' addLootKit(core, actor, npc,template) @@ -439,19 +150,11 @@ def addLootKit(core, actor, npc,template): def lootKitScreen1(core, actor, npc): convSvc = core.conversationService - prose = ProsePackage('conversation/junk_dealer_generic', 's_d9e6b751') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/junk_dealer_generic', 's_6d53d062') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - - option1 = ConversationOption(outOfBand2, 0) - + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_d9e6b751')) + options = Vector() - options.add(option1) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_6d53d062'), 0)) convSvc.sendConversationOptions(actor, npc, options, handleLootScreenSelection2) @@ -460,19 +163,11 @@ def lootKitScreen1(core, actor, npc): def lootKitScreen2(core, actor, npc): convSvc = core.conversationService - prose = ProsePackage('conversation/junk_dealer_generic', 's_e29f48dc') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) + + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_e29f48dc')) - prose2 = ProsePackage('conversation/junk_dealer_generic', 's_324b9b0f') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - - option1 = ConversationOption(outOfBand2, 0) - options = Vector() - options.add(option1) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_324b9b0f'), 0)) convSvc.sendConversationOptions(actor, npc, options, handleLootScreenSelection3) @@ -481,86 +176,42 @@ def lootKitScreen2(core, actor, npc): def lootKitScreen3(core, actor, npc): convSvc = core.conversationService - prose = ProsePackage('conversation/junk_dealer_generic', 's_12fe83a6') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/junk_dealer_generic', 's_e1a103e5') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - - option1 = ConversationOption(outOfBand2, 0) - + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_12fe83a6')) + options = Vector() - options.add(option1) - + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_e1a103e5'), 0)) + convSvc.sendConversationOptions(actor, npc, options, handleLootScreenSelection4) - + return def lootKitScreen4(core, actor, npc): convSvc = core.conversationService - prose = ProsePackage('conversation/junk_dealer_generic', 's_4d65752') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/junk_dealer_generic', 's_d347bee3') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose3 = ProsePackage('conversation/junk_dealer_generic', 's_b60b73f8') - outOfBand3 = OutOfBand() - outOfBand3.addProsePackage(prose3) - - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand3, 0) - + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_4d65752')) + options = Vector() - options.add(option1) - options.add(option2) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_d347bee3'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_b60b73f8'), 1)) convSvc.sendConversationOptions(actor, npc, options, handleLootScreenSelection5) - + return def lootKitScreen5a(core, actor, npc): convSvc = core.conversationService - prose = ProsePackage('conversation/junk_dealer_generic', 's_3fc7eb45') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) - prose2 = ProsePackage('conversation/junk_dealer_generic', 's_ee977dee') - outOfBand2 = OutOfBand() - outOfBand2.addProsePackage(prose2) - prose3 = ProsePackage('conversation/junk_dealer_generic', 's_8f39769') - outOfBand3 = OutOfBand() - outOfBand3.addProsePackage(prose3) - prose4 = ProsePackage('conversation/junk_dealer_generic', 's_fe657cdd') - outOfBand4 = OutOfBand() - outOfBand4.addProsePackage(prose4) - prose5 = ProsePackage('conversation/junk_dealer_generic', 's_9ede4b84') - outOfBand5 = OutOfBand() - outOfBand5.addProsePackage(prose5) - prose6 = ProsePackage('conversation/junk_dealer_generic', 's_87c5851b') - outOfBand6 = OutOfBand() - outOfBand6.addProsePackage(prose6) - - option1 = ConversationOption(outOfBand2, 0) - option2 = ConversationOption(outOfBand3, 0) - option3 = ConversationOption(outOfBand4, 0) - option4 = ConversationOption(outOfBand5, 0) - option5 = ConversationOption(outOfBand6, 0) - + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_3fc7eb45')) + options = Vector() - options.add(option1) - options.add(option2) - options.add(option3) - options.add(option4) - options.add(option5) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_ee977dee'), 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_8f39769'), 1)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_fe657cdd'), 2)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_9ede4b84'), 3)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/junk_dealer_generic:s_87c5851b'), 4)) convSvc.sendConversationOptions(actor, npc, options, handleLootScreenSelection6) diff --git a/scripts/conversation/missions/bounty_droid_probot.py b/scripts/conversation/missions/bounty_droid_probot.py index ea327232..78fd806b 100644 --- a/scripts/conversation/missions/bounty_droid_probot.py +++ b/scripts/conversation/missions/bounty_droid_probot.py @@ -15,42 +15,26 @@ def startConversation(core, actor, npc): return if probotRequester.getObjectId() != actor.getObjectId(): - prose = ProsePackage('conversation/bounty_probot', 's_6') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/bounty_probot:s_6')) return mission = core.objectService.getObject(long(npc.getAttachment('attachedMission'))) if mission is None: - prose = ProsePackage('conversation/bounty_probot', 's_4') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, prose) + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/bounty_probot:s_4')) return objective = mission.getObjective() if objective is None: - prose = ProsePackage('conversation/bounty_probot', 's_4') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, prose) + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/bounty_probot:s_4')) return - prose = ProsePackage('conversation/bounty_probot', 's_5') - outOfBand = OutOfBand() - outOfBand.addProsePackage(prose) - convSvc.sendConversationMessage(actor, npc, outOfBand) + convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/bounty_probot:s_5')) options = Vector() - optionProse = ProsePackage('conversation/bounty_probot', 's_8') - optionOOB = OutOfBand() - optionOOB.addProsePackage(optionProse) - options.add(ConversationOption(optionOOB, 0)) + options.add(ConversationOption(OutOfBand.ProsePackage('@conversation/bounty_probot:s_8'), 0)) convSvc.sendConversationOptions(actor, npc, options, handleBioTransmit) - return def handleBioTransmit(core, actor, npc, selection): diff --git a/scripts/conversation/reb_recruiter.py b/scripts/conversation/reb_recruiter.py index e111b1c3..d1b8a1a3 100644 --- a/scripts/conversation/reb_recruiter.py +++ b/scripts/conversation/reb_recruiter.py @@ -161,9 +161,8 @@ def handleSecondScreen(core, actor, npc, selection): if actor.getFaction() != 'rebel' and actor.getFaction() != 'imperial': if selection == 0: - actor.setFaction('rebel') - actor.setFactionStatus(FactionStatus.OnLeave) - actor.updatePvpStatus() + core.factionService.join(actor, 'rebel') + core.factionService.changeFactionStatus(actor, FactionStatus.OnLeave) convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/faction_recruiter_rebel:s_99')) @@ -205,6 +204,7 @@ def handleSecondScreen(core, actor, npc, selection): return elif actor.getFaction() == 'rebel' and actor.getFactionStatus() == FactionStatus.Combatant: if selection == 0: + core.factionService.changeFactionStatus(actor, FactionStatus.SpecialForces) convSvc.sendConversationMessage(actor, npc, OutOfBand.ProsePackage('@conversation/faction_recruiter_rebel:s_88')) options = Vector() diff --git a/scripts/loot/lootItems/exceptionallootchest/advertisement_rodian.py b/scripts/loot/lootItems/exceptionallootchest/advertisement_rodian.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/advertisement_rodian.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/exceptionallootchest/bacta_tank.py b/scripts/loot/lootItems/exceptionallootchest/bacta_tank.py new file mode 100644 index 00000000..46704737 --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/bacta_tank.py @@ -0,0 +1,5 @@ + +def itemTemplate(): + + return ['object/tangible/loot/generic_usable/shared_bacta_tank.iff'] + diff --git a/scripts/loot/lootItems/exceptionallootchest/cunning_of_tyranus.py b/scripts/loot/lootItems/exceptionallootchest/cunning_of_tyranus.py new file mode 100644 index 00000000..fe363b99 --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/cunning_of_tyranus.py @@ -0,0 +1,23 @@ + +def itemTemplate(): + + return ['object/tangible/component/weapon/lightsaber/shared_lightsaber_module_force_crystal.iff'] + +def customItemName(): + + return "Cunning Of Tyranus" + +def customColor1(): + + return 0 + +def lootDescriptor(): + + return 'rarecolorcrystal' + +def itemStats(): + + stats = ['elemtype','heat','heat'] + stats +=['elemdamage','6','6'] + + return stats diff --git a/scripts/loot/lootItems/exceptionallootchest/dna_storage_device.py b/scripts/loot/lootItems/exceptionallootchest/dna_storage_device.py new file mode 100644 index 00000000..43ca2f4a --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/dna_storage_device.py @@ -0,0 +1,5 @@ + +def itemTemplate(): + + return ['object/tangible/item/beast/barn_lite/shared_beast_dna_storage_device.iff'] + diff --git a/scripts/loot/lootItems/exceptionallootchest/dusk_in_kachirho.py b/scripts/loot/lootItems/exceptionallootchest/dusk_in_kachirho.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/dusk_in_kachirho.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/exceptionallootchest/emperors_senate_office_chair.py b/scripts/loot/lootItems/exceptionallootchest/emperors_senate_office_chair.py new file mode 100644 index 00000000..d52cedd2 --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/emperors_senate_office_chair.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/house_cleanup/shared_emperor_chair.iff'] diff --git a/scripts/loot/lootItems/exceptionallootchest/fighter.py b/scripts/loot/lootItems/exceptionallootchest/fighter.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/fighter.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/exceptionallootchest/gungan_statue_style_1_schematic.py b/scripts/loot/lootItems/exceptionallootchest/gungan_statue_style_1_schematic.py new file mode 100644 index 00000000..a6ba0c1b --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/gungan_statue_style_1_schematic.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/draft_schematic/furniture/shared_furniture_statue_gungan_statue_s01.iff'] diff --git a/scripts/loot/lootItems/exceptionallootchest/gungan_statue_style_2_schematic.py b/scripts/loot/lootItems/exceptionallootchest/gungan_statue_style_2_schematic.py new file mode 100644 index 00000000..f71c1747 --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/gungan_statue_style_2_schematic.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/draft_schematic/furniture/shared_furniture_statue_gungan_statue_s02.iff'] diff --git a/scripts/loot/lootItems/exceptionallootchest/gungan_statue_style_3_schematic.py b/scripts/loot/lootItems/exceptionallootchest/gungan_statue_style_3_schematic.py new file mode 100644 index 00000000..65ea76df --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/gungan_statue_style_3_schematic.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/draft_schematic/furniture/shared_furniture_statue_gungan_statue_s03.iff'] diff --git a/scripts/loot/lootItems/exceptionallootchest/gungan_statue_style_4_schematic.py b/scripts/loot/lootItems/exceptionallootchest/gungan_statue_style_4_schematic.py new file mode 100644 index 00000000..479dcb1c --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/gungan_statue_style_4_schematic.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/draft_schematic/furniture/shared_furniture_statue_gungan_statue_s04.iff'] diff --git a/scripts/loot/lootItems/exceptionallootchest/holo_entertainment_table.py b/scripts/loot/lootItems/exceptionallootchest/holo_entertainment_table.py new file mode 100644 index 00000000..bfe4cd74 --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/holo_entertainment_table.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/event_perk/shared_lifeday_holo_table.iff'] diff --git a/scripts/loot/lootItems/exceptionallootchest/jedi_master_cloak.py b/scripts/loot/lootItems/exceptionallootchest/jedi_master_cloak.py new file mode 100644 index 00000000..f8b19b7f --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/jedi_master_cloak.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/robe/shared_robe_s05_h1.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/exceptionallootchest/legendary_e5_carbine.py b/scripts/loot/lootItems/exceptionallootchest/legendary_e5_carbine.py new file mode 100644 index 00000000..7550577b --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/legendary_e5_carbine.py @@ -0,0 +1,37 @@ + +def itemTemplate(): + + return ['object/weapon/ranged/carbine/shared_carbine_e5_legend.iff'] + +def customItemName(): + + return 'Legendary E5 Carbine' + +def customItemStackCount(): + + return 1 + +def customizationAttributes(): + + return [] + +def customizationValues(): + + return [] + +def requiredCL(): + + return 88 + +def itemStats(): + + stats = ['mindamage','400','450'] + stats += ['maxdamage','850','900'] + stats += ['attackspeed','0.6','0.6'] + stats += ['maxrange','0','50'] + stats += ['damagetype','energy','energy'] + stats += ['elemtype','@obj_attr_n:elemental_electricity','@obj_attr_n:elemental_electricity'] + stats += ['elemdamage','23','23'] + stats += ['weapontype','1','1'] + + return stats diff --git a/scripts/loot/lootItems/exceptionallootchest/legendary_fwg5_pistol.py b/scripts/loot/lootItems/exceptionallootchest/legendary_fwg5_pistol.py new file mode 100644 index 00000000..81e1e8b5 --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/legendary_fwg5_pistol.py @@ -0,0 +1,37 @@ + +def itemTemplate(): + + return ['object/weapon/ranged/pistol/shared_pistol_fwg5_legendary.iff'] + +def customItemName(): + + return 'Legendary FWG5 Pistol' + +def customItemStackCount(): + + return 1 + +def customizationAttributes(): + + return [] + +def customizationValues(): + + return [] + +def requiredCL(): + + return 88 + +def itemStats(): + + stats = ['mindamage','250','270'] + stats += ['maxdamage','500','530'] + stats += ['attackspeed','0.4','0.4'] + stats += ['maxrange','0','35'] + stats += ['damagetype','energy','energy'] + stats += ['elemtype','@obj_attr_n:elemental_heat','@obj_attr_n:elemental_heat'] + stats += ['elemdamage','35','35'] + stats += ['weapontype','2','2'] + + return stats diff --git a/scripts/loot/lootItems/exceptionallootchest/legendary_nightsister_energy_lance.py b/scripts/loot/lootItems/exceptionallootchest/legendary_nightsister_energy_lance.py new file mode 100644 index 00000000..58756024 --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/legendary_nightsister_energy_lance.py @@ -0,0 +1,37 @@ + +def itemTemplate(): + + return ['object/weapon/melee/polearm/shared_lance_nightsister_legendary.iff'] + +def customItemName(): + + return 'Legendary Nightsister Energy Lance' + +def customItemStackCount(): + + return 1 + +def customizationAttributes(): + + return [] + +def customizationValues(): + + return [] + +def requiredCL(): + + return 88 + +def itemStats(): + + stats = ['mindamage','750','800'] + stats += ['maxdamage','1100','1200'] + stats += ['attackspeed','1.0','1.0'] + stats += ['maxrange','0','5'] + stats += ['damagetype','energy','energy'] + stats += ['elemtype','@obj_attr_n:elemental_electricity','@obj_attr_n:elemental_electricity'] + stats += ['elemdamage','50','50'] + stats += ['weapontype','7','7'] + + return stats diff --git a/scripts/loot/lootItems/exceptionallootchest/legendary_power_hammer.py b/scripts/loot/lootItems/exceptionallootchest/legendary_power_hammer.py new file mode 100644 index 00000000..3224b384 --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/legendary_power_hammer.py @@ -0,0 +1,37 @@ + +def itemTemplate(): + + return ['object/weapon/melee/2h_sword/shared_quest_2h_sword_battleaxe.iff'] + +def customItemName(): + + return 'Legendary Power Hammer' + +def customItemStackCount(): + + return 1 + +def customizationAttributes(): + + return [] + +def customizationValues(): + + return [] + +def requiredCL(): + + return 88 + +def itemStats(): + + stats = ['mindamage','850','900'] + stats += ['maxdamage','1250','1350'] + stats += ['attackspeed','1.0','1.0'] + stats += ['maxrange','0','5'] + stats += ['damagetype','energy','energy'] + stats += ['elemtype','@obj_attr_n:elemental_acid','@obj_attr_n:elemental_acid'] + stats += ['elemdamage','20','20'] + stats += ['weapontype','5','5'] + + return stats diff --git a/scripts/loot/lootItems/exceptionallootchest/legendary_stun_baton.py b/scripts/loot/lootItems/exceptionallootchest/legendary_stun_baton.py new file mode 100644 index 00000000..cbc9cb70 --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/legendary_stun_baton.py @@ -0,0 +1,37 @@ + +def itemTemplate(): + + return ['object/weapon/melee/baton/shared_baton_stun_legendary.iff'] + +def customItemName(): + + return 'Legendary Stun Baton' + +def customItemStackCount(): + + return 1 + +def customizationAttributes(): + + return [] + +def customizationValues(): + + return [] + +def requiredCL(): + + return 88 + +def itemStats(): + + stats = ['mindamage','550','600'] + stats += ['maxdamage','1250','1300'] + stats += ['attackspeed','1.0','1.0'] + stats += ['maxrange','0','5'] + stats += ['damagetype','energy','energy'] + stats += ['elemtype','@obj_attr_n:elemental_electricity','@obj_attr_n:elemental_electricity'] + stats += ['elemdamage','75','75'] + stats += ['weapontype','5','5'] + + return stats diff --git a/scripts/loot/lootItems/exceptionallootchest/legendary_t21_rifle.py b/scripts/loot/lootItems/exceptionallootchest/legendary_t21_rifle.py new file mode 100644 index 00000000..66a8dd30 --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/legendary_t21_rifle.py @@ -0,0 +1,37 @@ + +def itemTemplate(): + + return ['object/weapon/ranged/rifle/shared_rifle_t21_legendary.iff'] + +def customItemName(): + + return 'Legendary T21 Rifle' + +def customItemStackCount(): + + return 1 + +def customizationAttributes(): + + return [] + +def customizationValues(): + + return [] + +def requiredCL(): + + return 88 + +def itemStats(): + + stats = ['mindamage','500','550'] + stats += ['maxdamage','1050','1100'] + stats += ['attackspeed','0.8','0.8'] + stats += ['maxrange','0','64'] + stats += ['damagetype','energy','energy'] + stats += ['elemtype','@obj_attr_n:elemental_acid','@obj_attr_n:elemental_acid'] + stats += ['elemdamage','30','30'] + stats += ['weapontype','0','0'] + + return stats diff --git a/scripts/loot/lootItems/exceptionallootchest/poster_block_turret_schematic.py b/scripts/loot/lootItems/exceptionallootchest/poster_block_turret_schematic.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/poster_block_turret_schematic.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/exceptionallootchest/prayer_mobile.py b/scripts/loot/lootItems/exceptionallootchest/prayer_mobile.py new file mode 100644 index 00000000..4009eb8a --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/prayer_mobile.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/ep3_rewards/shared_wke_prayer_mobile.iff'] diff --git a/scripts/loot/lootItems/exceptionallootchest/shard_of_ferocity.py b/scripts/loot/lootItems/exceptionallootchest/shard_of_ferocity.py new file mode 100644 index 00000000..43565b98 --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/shard_of_ferocity.py @@ -0,0 +1,26 @@ + +def itemTemplate(): + + return ['object/tangible/component/weapon/lightsaber/shared_lightsaber_module_force_crystal.iff'] + +def customItemName(): + + return "Shard Of Ferocity" + +def biolink(): + + return 1 + +def lootDescriptor(): + + return 'rarebuffitem' + +def itemStats(): + + stats = ['buffeffect','Action','+500'] + stats +=['effectname','Ferocity','Ferocity'] + stats +=['duration','180','180'] + stats +=['cooldown','3600','3600'] + + return stats + diff --git a/scripts/loot/lootItems/exceptionallootchest/shard_of_retaliation.py b/scripts/loot/lootItems/exceptionallootchest/shard_of_retaliation.py new file mode 100644 index 00000000..288360a2 --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/shard_of_retaliation.py @@ -0,0 +1,25 @@ + +def itemTemplate(): + + return ['object/tangible/component/weapon/lightsaber/shared_lightsaber_module_force_crystal.iff'] # correct iff not found + +def customItemName(): + + return "Shard Of Retaliation" + +def biolink(): + + return 1 + +def lootDescriptor(): + + return 'rarebuffitem' + +def itemStats(): + + stats = ['buffeffect','Action','+500'] + stats +=['effectname','towCrystalUberDs','towCrystalUberDs'] + stats +=['duration','180','180'] + stats +=['cooldown','3600','3600'] + + return stats \ No newline at end of file diff --git a/scripts/loot/lootItems/exceptionallootchest/sith_buff_holocron.py b/scripts/loot/lootItems/exceptionallootchest/sith_buff_holocron.py new file mode 100644 index 00000000..2b1177e5 --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/sith_buff_holocron.py @@ -0,0 +1,25 @@ + +def itemTemplate(): + + return ['object/tangible/loot/creature_loot/collections/shared_sith_holocron_01.iff'] + +def customItemName(): + + return 'Sith Holocron' + +def biolink(): + + return 1 + +def lootDescriptor(): + + return 'rarebuffitem' + +def itemStats(): + + stats = ['buffeffect','Action','+500'] + stats +=['effectname','Forbidden Knowledge I','Forbidden Knowledge I'] + stats +=['duration','180','180'] + stats +=['cooldown','3600','3600'] + + return stats \ No newline at end of file diff --git a/scripts/loot/lootItems/exceptionallootchest/sith_relic.py b/scripts/loot/lootItems/exceptionallootchest/sith_relic.py new file mode 100644 index 00000000..007516fd --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/sith_relic.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/loot/mustafar/shared_sith_relic_01.iff'] diff --git a/scripts/loot/lootItems/exceptionallootchest/war_phoenix.py b/scripts/loot/lootItems/exceptionallootchest/war_phoenix.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/exceptionallootchest/war_phoenix.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/legendarylootchest/biological_focus_crystal.py b/scripts/loot/lootItems/legendarylootchest/biological_focus_crystal.py new file mode 100644 index 00000000..0815e750 --- /dev/null +++ b/scripts/loot/lootItems/legendarylootchest/biological_focus_crystal.py @@ -0,0 +1,29 @@ + +def itemTemplate(): + + return ['object/tangible/item/quest/force_sensitive/shared_fs_crystal_health.iff'] # needs correct iff still + +def customItemName(): + + return "Biological Focus Crystal" + +def requiredLevelForEffect(): + + return 80 + +def biolink(): + + return 1 + +def lootDescriptor(): + + return 'rarebuffitem' + +def itemStats(): + + stats = ['buffeffect','Constitution','+250'] + stats +=['effectname','Extended Constitution','Extended Constitution'] + stats +=['duration','10800','10800'] + stats +=['cooldown','86400','86400'] + + return stats diff --git a/scripts/loot/lootItems/legendarylootchest/concentrated_bacta_tank.py b/scripts/loot/lootItems/legendarylootchest/concentrated_bacta_tank.py new file mode 100644 index 00000000..e79e3e71 --- /dev/null +++ b/scripts/loot/lootItems/legendarylootchest/concentrated_bacta_tank.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/static/item/shared_item_medic_bacta_tank_advanced.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/legendarylootchest/dna_storage_device_kowakian.py b/scripts/loot/lootItems/legendarylootchest/dna_storage_device_kowakian.py new file mode 100644 index 00000000..43ca2f4a --- /dev/null +++ b/scripts/loot/lootItems/legendarylootchest/dna_storage_device_kowakian.py @@ -0,0 +1,5 @@ + +def itemTemplate(): + + return ['object/tangible/item/beast/barn_lite/shared_beast_dna_storage_device.iff'] + diff --git a/scripts/loot/lootItems/legendarylootchest/dug_costume_instructions.py b/scripts/loot/lootItems/legendarylootchest/dug_costume_instructions.py new file mode 100644 index 00000000..72f76e42 --- /dev/null +++ b/scripts/loot/lootItems/legendarylootchest/dug_costume_instructions.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/item/costume_kit/shared_costume_deed.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/legendarylootchest/mercenaries_despair.py b/scripts/loot/lootItems/legendarylootchest/mercenaries_despair.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/legendarylootchest/mercenaries_despair.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/legendarylootchest/mercenaries_lament.py b/scripts/loot/lootItems/legendarylootchest/mercenaries_lament.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/legendarylootchest/mercenaries_lament.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/legendarylootchest/nightsister_melee_armguard.py b/scripts/loot/lootItems/legendarylootchest/nightsister_melee_armguard.py new file mode 100644 index 00000000..7c8d6cf8 --- /dev/null +++ b/scripts/loot/lootItems/legendarylootchest/nightsister_melee_armguard.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/armor/nightsister/shared_armor_nightsister_bicep_r_s01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/legendarylootchest/rare_painting.py b/scripts/loot/lootItems/legendarylootchest/rare_painting.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/legendarylootchest/rare_painting.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/legendarylootchest/sunriders_destiny.py b/scripts/loot/lootItems/legendarylootchest/sunriders_destiny.py new file mode 100644 index 00000000..b17aca6b --- /dev/null +++ b/scripts/loot/lootItems/legendarylootchest/sunriders_destiny.py @@ -0,0 +1,23 @@ + +def itemTemplate(): + + return ['object/tangible/component/weapon/lightsaber/shared_lightsaber_module_force_crystal.iff'] + +def customItemName(): + + return "Sunrider's Destiny" + +def customColor1(): + + return 29 + +def lootDescriptor(): + + return 'rarecolorcrystal' + +def itemStats(): + + stats = ['elemtype','heat','heat'] + stats +=['elemdamage','6','6'] + + return stats diff --git a/scripts/loot/lootItems/legendarylootchest/synapse_focus_crystal.py b/scripts/loot/lootItems/legendarylootchest/synapse_focus_crystal.py new file mode 100644 index 00000000..61da7c4a --- /dev/null +++ b/scripts/loot/lootItems/legendarylootchest/synapse_focus_crystal.py @@ -0,0 +1,29 @@ + +def itemTemplate(): + + return ['object/tangible/item/quest/force_sensitive/shared_fs_crystal_force.iff'] # needs correct iff still + +def customItemName(): + + return "Synapse Focus Crystal" + +def requiredLevelForEffect(): + + return 80 + +def biolink(): + + return 1 + +def lootDescriptor(): + + return 'rarebuffitem' + +def itemStats(): + + stats = ['buffeffect','Action','+500'] + stats +=['effectname','Extended Action','Extended Action'] + stats +=['duration','10800','10800'] + stats +=['cooldown','86400','86400'] + + return stats diff --git a/scripts/loot/lootItems/rareloot/lava_geode.py b/scripts/loot/lootItems/rareloot/lava_geode.py new file mode 100644 index 00000000..610f4b8c --- /dev/null +++ b/scripts/loot/lootItems/rareloot/lava_geode.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/loot/mustafar/shared_lava_geode.iff'] \ No newline at end of file diff --git a/scripts/loot/lootItems/rareloot/rarelootchest1.py b/scripts/loot/lootItems/rareloot/rarelootchest1.py index a7568822..1ba9ecc8 100644 --- a/scripts/loot/lootItems/rareloot/rarelootchest1.py +++ b/scripts/loot/lootItems/rareloot/rarelootchest1.py @@ -1,7 +1,7 @@ def itemTemplate(): - return ['object/tangible/item/shared_rare_loot_chest_3.iff'] + return ['object/tangible/loot/mustafar/shared_rare_loot_chest_3.iff'] def customItemName(): diff --git a/scripts/loot/lootItems/rarelootchest/animal_hide_rack_style_1.py b/scripts/loot/lootItems/rarelootchest/animal_hide_rack_style_1.py new file mode 100644 index 00000000..a3da4530 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/animal_hide_rack_style_1.py @@ -0,0 +1,9 @@ + +def itemTemplate(): + + return ['object/building/kashyyyk/shared_uber_animal_hide_rack.iff'] + +#def customItemName(): +# +# return 'Adjusted CDEF Rifle' + diff --git a/scripts/loot/lootItems/rarelootchest/animal_hide_rack_style_2.py b/scripts/loot/lootItems/rarelootchest/animal_hide_rack_style_2.py new file mode 100644 index 00000000..a498c39a --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/animal_hide_rack_style_2.py @@ -0,0 +1,9 @@ + +def itemTemplate(): + + return ['object/building/kashyyyk/shared_uber_animal_hide_rack_s02.iff'] + +#def customItemName(): +# +# return 'Adjusted CDEF Rifle' + diff --git a/scripts/loot/lootItems/rarelootchest/animal_hide_rack_style_3.py b/scripts/loot/lootItems/rarelootchest/animal_hide_rack_style_3.py new file mode 100644 index 00000000..c32a6ee3 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/animal_hide_rack_style_3.py @@ -0,0 +1,9 @@ + +def itemTemplate(): + + return ['object/building/kashyyyk/shared_uber_animal_hide_rack_s03.iff'] + +#def customItemName(): +# +# return 'Adjusted CDEF Rifle' + diff --git a/scripts/loot/lootItems/rarelootchest/animal_hide_rack_style_4.py b/scripts/loot/lootItems/rarelootchest/animal_hide_rack_style_4.py new file mode 100644 index 00000000..31198e75 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/animal_hide_rack_style_4.py @@ -0,0 +1,9 @@ + +def itemTemplate(): + + return ['object/building/kashyyyk/shared_uber_animal_rack_s04.iff'] + +#def customItemName(): +# +# return 'Adjusted CDEF Rifle' + diff --git a/scripts/loot/lootItems/rarelootchest/at_st_pilots_helmet.py b/scripts/loot/lootItems/rarelootchest/at_st_pilots_helmet.py new file mode 100644 index 00000000..5f2421f7 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/at_st_pilots_helmet.py @@ -0,0 +1,9 @@ + +def itemTemplate(): + + return ['object/tangible/wearables/helmet/shared_helmet_atat.iff'] # iff not exact, tre files suck + +#def customItemName(): +# +# return 'Adjusted CDEF Rifle' + diff --git a/scripts/loot/lootItems/rarelootchest/aurilian_sculpture_section_1.py b/scripts/loot/lootItems/rarelootchest/aurilian_sculpture_section_1.py new file mode 100644 index 00000000..04cbdebb --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/aurilian_sculpture_section_1.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/item/quest/force_sensitive/shared_fs_sculpture_1.iff'] # needs verification diff --git a/scripts/loot/lootItems/rarelootchest/aurilian_sculpture_section_2.py b/scripts/loot/lootItems/rarelootchest/aurilian_sculpture_section_2.py new file mode 100644 index 00000000..1830c89e --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/aurilian_sculpture_section_2.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/item/quest/force_sensitive/shared_fs_sculpture_2.iff'] # needs verification diff --git a/scripts/loot/lootItems/rarelootchest/aurilian_sculpture_section_3.py b/scripts/loot/lootItems/rarelootchest/aurilian_sculpture_section_3.py new file mode 100644 index 00000000..76ece5d6 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/aurilian_sculpture_section_3.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/item/quest/force_sensitive/shared_fs_sculpture_3.iff'] # needs verification diff --git a/scripts/loot/lootItems/rarelootchest/aurilian_sculpture_section_4.py b/scripts/loot/lootItems/rarelootchest/aurilian_sculpture_section_4.py new file mode 100644 index 00000000..f96fb1db --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/aurilian_sculpture_section_4.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/item/quest/force_sensitive/shared_fs_sculpture_4.iff'] # needs verification diff --git a/scripts/loot/lootItems/rarelootchest/banes_heart.py b/scripts/loot/lootItems/rarelootchest/banes_heart.py new file mode 100644 index 00000000..e7a0db2b --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/banes_heart.py @@ -0,0 +1,23 @@ + +def itemTemplate(): + + return ['object/tangible/component/weapon/lightsaber/shared_lightsaber_module_force_crystal.iff'] + +def customItemName(): + + return "Bane's Heart" + +def customColor1(): + + return 16 + +def lootDescriptor(): + + return 'rarecolorcrystal' + +def itemStats(): + + stats = ['elemtype','electricity','electricity'] + stats +=['elemdamage','5','5'] + + return stats diff --git a/scripts/loot/lootItems/rarelootchest/bar_corner_piece_1.py b/scripts/loot/lootItems/rarelootchest/bar_corner_piece_1.py new file mode 100644 index 00000000..2a8d9aca --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/bar_corner_piece_1.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/draft_schematic/furniture/shared_furniture_diner_counter_corner.iff'] # needs verification diff --git a/scripts/loot/lootItems/rarelootchest/bar_corner_piece_2.py b/scripts/loot/lootItems/rarelootchest/bar_corner_piece_2.py new file mode 100644 index 00000000..2a8d9aca --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/bar_corner_piece_2.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/draft_schematic/furniture/shared_furniture_diner_counter_corner.iff'] # needs verification diff --git a/scripts/loot/lootItems/rarelootchest/bar_corner_piece_3.py b/scripts/loot/lootItems/rarelootchest/bar_corner_piece_3.py new file mode 100644 index 00000000..2a8d9aca --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/bar_corner_piece_3.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/draft_schematic/furniture/shared_furniture_diner_counter_corner.iff'] # needs verification diff --git a/scripts/loot/lootItems/rarelootchest/bar_counter_large.py b/scripts/loot/lootItems/rarelootchest/bar_counter_large.py new file mode 100644 index 00000000..2a8d9aca --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/bar_counter_large.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/draft_schematic/furniture/shared_furniture_diner_counter_corner.iff'] # needs verification diff --git a/scripts/loot/lootItems/rarelootchest/bothan_beauty.py b/scripts/loot/lootItems/rarelootchest/bothan_beauty.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/bothan_beauty.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/bothan_buff.py b/scripts/loot/lootItems/rarelootchest/bothan_buff.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/bothan_buff.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/cast_wing_in_flight.py b/scripts/loot/lootItems/rarelootchest/cast_wing_in_flight.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/cast_wing_in_flight.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/corellian_seaside.py b/scripts/loot/lootItems/rarelootchest/corellian_seaside.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/corellian_seaside.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/data_disk_hologram.py b/scripts/loot/lootItems/rarelootchest/data_disk_hologram.py new file mode 100644 index 00000000..0a34621e --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/data_disk_hologram.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_frn_hologram_data_disk_s01.iff'] # needs verification diff --git a/scripts/loot/lootItems/rarelootchest/decorative_bubble_tank.py b/scripts/loot/lootItems/rarelootchest/decorative_bubble_tank.py new file mode 100644 index 00000000..a308bef3 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/decorative_bubble_tank.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/loot/loot_schematic/shared_bubble_tank_schematic.iff'] # needs visual verification diff --git a/scripts/loot/lootItems/rarelootchest/droid_in_contrast.py b/scripts/loot/lootItems/rarelootchest/droid_in_contrast.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/droid_in_contrast.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/drum.py b/scripts/loot/lootItems/rarelootchest/drum.py new file mode 100644 index 00000000..d4120e07 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/drum.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/container/drum/shared_warren_drum_loot.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/emperors_eyes.py b/scripts/loot/lootItems/rarelootchest/emperors_eyes.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/emperors_eyes.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/family_bonds.py b/scripts/loot/lootItems/rarelootchest/family_bonds.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/family_bonds.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/feared.py b/scripts/loot/lootItems/rarelootchest/feared.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/feared.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/fighter_study.py b/scripts/loot/lootItems/rarelootchest/fighter_study.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/fighter_study.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/fighters_courage.py b/scripts/loot/lootItems/rarelootchest/fighters_courage.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/fighters_courage.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/geonosian_costume_instructions.py b/scripts/loot/lootItems/rarelootchest/geonosian_costume_instructions.py new file mode 100644 index 00000000..72f76e42 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/geonosian_costume_instructions.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/item/costume_kit/shared_costume_deed.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/hanging_life_day_orb.py b/scripts/loot/lootItems/rarelootchest/hanging_life_day_orb.py new file mode 100644 index 00000000..24ff425b --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/hanging_life_day_orb.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday07_orb.iff'] # needs verification diff --git a/scripts/loot/lootItems/rarelootchest/hutt_greed.py b/scripts/loot/lootItems/rarelootchest/hutt_greed.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/hutt_greed.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/imperial_oppression.py b/scripts/loot/lootItems/rarelootchest/imperial_oppression.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/imperial_oppression.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/jedi_statue_schematic.py b/scripts/loot/lootItems/rarelootchest/jedi_statue_schematic.py new file mode 100644 index 00000000..0e8ba392 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/jedi_statue_schematic.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/draft_schematic/furniture/shared_must_furniture_jedi_statue.iff'] # needs verification diff --git a/scripts/loot/lootItems/rarelootchest/jubilee_wheel_schematic.py b/scripts/loot/lootItems/rarelootchest/jubilee_wheel_schematic.py new file mode 100644 index 00000000..596fcbdd --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/jubilee_wheel_schematic.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/object/shared_hoverlifter_speeder_crafted.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/kachirho_wall_cornucopia.py b/scripts/loot/lootItems/rarelootchest/kachirho_wall_cornucopia.py new file mode 100644 index 00000000..85a71191 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/kachirho_wall_cornucopia.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/item/ep3/shared_poi_kash_mystic_tree_healthy.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/kowakian_cage.py b/scripts/loot/lootItems/rarelootchest/kowakian_cage.py new file mode 100644 index 00000000..810362f8 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/kowakian_cage.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/event_perk/shared_lifeday_monkey_cage.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/krayt_costume_instructions.py b/scripts/loot/lootItems/rarelootchest/krayt_costume_instructions.py new file mode 100644 index 00000000..72f76e42 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/krayt_costume_instructions.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/item/costume_kit/shared_costume_deed.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/large_fruit_stand_schematic.py b/scripts/loot/lootItems/rarelootchest/large_fruit_stand_schematic.py new file mode 100644 index 00000000..9f57dba9 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/large_fruit_stand_schematic.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/event_perk/shared_fruit_stand.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/large_unmarked_crate.py b/scripts/loot/lootItems/rarelootchest/large_unmarked_crate.py new file mode 100644 index 00000000..6393f2b9 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/large_unmarked_crate.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/container/drum/shared_large_plain_crate_s01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/lava_geode.py b/scripts/loot/lootItems/rarelootchest/lava_geode.py new file mode 100644 index 00000000..610f4b8c --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/lava_geode.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/loot/mustafar/shared_lava_geode.iff'] \ No newline at end of file diff --git a/scripts/loot/lootItems/rarelootchest/life_day_lamp.py b/scripts/loot/lootItems/rarelootchest/life_day_lamp.py new file mode 100644 index 00000000..37616eb5 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/life_day_lamp.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday07_lamp.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/life_day_proud_wookie.py b/scripts/loot/lootItems/rarelootchest/life_day_proud_wookie.py new file mode 100644 index 00000000..d6bdaef5 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/life_day_proud_wookie.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday07_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/life_day_red_robed_wookie.py b/scripts/loot/lootItems/rarelootchest/life_day_red_robed_wookie.py new file mode 100644 index 00000000..d6bdaef5 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/life_day_red_robed_wookie.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday07_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/living_canals.py b/scripts/loot/lootItems/rarelootchest/living_canals.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/living_canals.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/lugjack_machine_schematic.py b/scripts/loot/lootItems/rarelootchest/lugjack_machine_schematic.py new file mode 100644 index 00000000..7715cf97 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/lugjack_machine_schematic.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/draft_schematic/furniture/shared_furniture_uber_lugjack.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/miniature_wroshyr_tree.py b/scripts/loot/lootItems/rarelootchest/miniature_wroshyr_tree.py new file mode 100644 index 00000000..85a71191 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/miniature_wroshyr_tree.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/item/ep3/shared_poi_kash_mystic_tree_healthy.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/modified_fusion_reactor_schematic.py b/scripts/loot/lootItems/rarelootchest/modified_fusion_reactor_schematic.py new file mode 100644 index 00000000..b1bcf947 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/modified_fusion_reactor_schematic.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/deed/generator_deed/shared_generator_fusion_deed.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/mustafarian_injector.py b/scripts/loot/lootItems/rarelootchest/mustafarian_injector.py new file mode 100644 index 00000000..5eb85000 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/mustafarian_injector.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['bject/tangible/gcw/crafting_quest/shared_gcw_bacta_injectors.iff'] # this is wrong needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/mynock_costume_instructions.py b/scripts/loot/lootItems/rarelootchest/mynock_costume_instructions.py new file mode 100644 index 00000000..72f76e42 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/mynock_costume_instructions.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/item/costume_kit/shared_costume_deed.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/no_division.py b/scripts/loot/lootItems/rarelootchest/no_division.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/no_division.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/nym_collectible_globe.py b/scripts/loot/lootItems/rarelootchest/nym_collectible_globe.py new file mode 100644 index 00000000..eb1c8d23 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/nym_collectible_globe.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/static/worldbuilding/terminal/shared_floor_console_tableglobe_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/pilgrimage.py b/scripts/loot/lootItems/rarelootchest/pilgrimage.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/pilgrimage.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/poster_of_a_ship_schematic.py b/scripts/loot/lootItems/rarelootchest/poster_of_a_ship_schematic.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/poster_of_a_ship_schematic.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/poster_of_a_turret_schematic.py b/scripts/loot/lootItems/rarelootchest/poster_of_a_turret_schematic.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/poster_of_a_turret_schematic.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/poster_of_food_preparation.py b/scripts/loot/lootItems/rarelootchest/poster_of_food_preparation.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/poster_of_food_preparation.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/proton_chair.py b/scripts/loot/lootItems/rarelootchest/proton_chair.py new file mode 100644 index 00000000..94bd8336 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/proton_chair.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/lifeday/shared_lifeday_proton_chair.iff'] diff --git a/scripts/loot/lootItems/rarelootchest/rancor_costume_instructions.py b/scripts/loot/lootItems/rarelootchest/rancor_costume_instructions.py new file mode 100644 index 00000000..72f76e42 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/rancor_costume_instructions.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/item/costume_kit/shared_costume_deed.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/rotj_helmet.py b/scripts/loot/lootItems/rarelootchest/rotj_helmet.py new file mode 100644 index 00000000..acc54422 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/rotj_helmet.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/quest/rebel/shared_rtp_leia_rebel_helmet.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/shard_of_the_serpent.py b/scripts/loot/lootItems/rarelootchest/shard_of_the_serpent.py new file mode 100644 index 00000000..06a94a75 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/shard_of_the_serpent.py @@ -0,0 +1,29 @@ + +def itemTemplate(): + + return ['object/tangible/component/weapon/lightsaber/shared_lightsaber_module_force_crystal.iff'] + +def customItemName(): + + return "Shard Of The Serpent" + +def biolink(): + + return 1 + +def customColor1(): + + return 3 + +def lootDescriptor(): + + return 'rarebuffitem' + +def itemStats(): + + stats = ['buffeffect','Action','+500'] + stats +=['effectname','Harmonious Counteraction','Harmonious Counteraction'] + stats +=['duration','180','180'] + stats +=['cooldown','3600','3600'] + + return stats \ No newline at end of file diff --git a/scripts/loot/lootItems/rarelootchest/stap1_vehicle_deed.py b/scripts/loot/lootItems/rarelootchest/stap1_vehicle_deed.py new file mode 100644 index 00000000..647347bf --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/stap1_vehicle_deed.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/draft_schematic/vehicle/civilian/shared_speeder_stap.iff'] diff --git a/scripts/loot/lootItems/rarelootchest/target_dummy_black_sun.py b/scripts/loot/lootItems/rarelootchest/target_dummy_black_sun.py new file mode 100644 index 00000000..7d85ed97 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/target_dummy_black_sun.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/mobile/shared_target_dummy_blacksun.iff'] diff --git a/scripts/loot/lootItems/rarelootchest/target_dummy_rebel.py b/scripts/loot/lootItems/rarelootchest/target_dummy_rebel.py new file mode 100644 index 00000000..0417d75b --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/target_dummy_rebel.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/mobile/shared_target_dummy_rebel_trooper.iff'] diff --git a/scripts/loot/lootItems/rarelootchest/target_dummy_stormtrooper.py b/scripts/loot/lootItems/rarelootchest/target_dummy_stormtrooper.py new file mode 100644 index 00000000..4ce37ad7 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/target_dummy_stormtrooper.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/mobile/shared_target_dummy_stormtrooper.iff'] diff --git a/scripts/loot/lootItems/rarelootchest/tatooine_dune_speeder.py b/scripts/loot/lootItems/rarelootchest/tatooine_dune_speeder.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/tatooine_dune_speeder.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/triumph.py b/scripts/loot/lootItems/rarelootchest/triumph.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/triumph.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/ugnaught_costume_instructions.py b/scripts/loot/lootItems/rarelootchest/ugnaught_costume_instructions.py new file mode 100644 index 00000000..72f76e42 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/ugnaught_costume_instructions.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/item/costume_kit/shared_costume_deed.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/victory.py b/scripts/loot/lootItems/rarelootchest/victory.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/victory.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/wampa_costume_instructions.py b/scripts/loot/lootItems/rarelootchest/wampa_costume_instructions.py new file mode 100644 index 00000000..72f76e42 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/wampa_costume_instructions.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/item/costume_kit/shared_costume_deed.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/war_terminal.py b/scripts/loot/lootItems/rarelootchest/war_terminal.py new file mode 100644 index 00000000..fcb691ca --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/war_terminal.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/object/tangible/beta/shared_beta_terminal_warp.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/warriors honor.py b/scripts/loot/lootItems/rarelootchest/warriors honor.py new file mode 100644 index 00000000..75858734 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/warriors honor.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday05_painting_01.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/wookie_home_banner_kit.py b/scripts/loot/lootItems/rarelootchest/wookie_home_banner_kit.py new file mode 100644 index 00000000..10432fd0 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/wookie_home_banner_kit.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_wookiee_shield.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/wookie_life_day_orb.py b/scripts/loot/lootItems/rarelootchest/wookie_life_day_orb.py new file mode 100644 index 00000000..90e2b3a0 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/wookie_life_day_orb.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/decorative/shared_event_lifeday07_orb.iff'] # needs correct iff still diff --git a/scripts/loot/lootItems/rarelootchest/xeno_couch.py b/scripts/loot/lootItems/rarelootchest/xeno_couch.py new file mode 100644 index 00000000..6eb683cd --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/xeno_couch.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/house_cleanup/shared_xeno_couch.iff'] diff --git a/scripts/loot/lootItems/rarelootchest/xeno_desk.py b/scripts/loot/lootItems/rarelootchest/xeno_desk.py new file mode 100644 index 00000000..75478c35 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/xeno_desk.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/house_cleanup/shared_xeno_desk.iff'] diff --git a/scripts/loot/lootItems/rarelootchest/xeno_desk_lamp.py b/scripts/loot/lootItems/rarelootchest/xeno_desk_lamp.py new file mode 100644 index 00000000..26b580c3 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/xeno_desk_lamp.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/house_cleanup/shared_xeno_desk_lamp.iff'] diff --git a/scripts/loot/lootItems/rarelootchest/xeno_rug.py b/scripts/loot/lootItems/rarelootchest/xeno_rug.py new file mode 100644 index 00000000..6430ec09 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/xeno_rug.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/house_cleanup/shared_xeno_rug.iff'] diff --git a/scripts/loot/lootItems/rarelootchest/xeno_table.py b/scripts/loot/lootItems/rarelootchest/xeno_table.py new file mode 100644 index 00000000..84542507 --- /dev/null +++ b/scripts/loot/lootItems/rarelootchest/xeno_table.py @@ -0,0 +1,4 @@ + +def itemTemplate(): + + return ['object/tangible/furniture/house_cleanup/shared_xeno_table.iff'] diff --git a/scripts/loot/lootItems/weapons/knife/janta_knife.py b/scripts/loot/lootItems/weapons/knife/janta_knife.py new file mode 100644 index 00000000..669488b2 --- /dev/null +++ b/scripts/loot/lootItems/weapons/knife/janta_knife.py @@ -0,0 +1,15 @@ + +def itemTemplate(): + + return ['object/weapon/melee/knife/shared_knife_janta.iff'] + +def itemStats(): + + stats = ['mindamage','12','27'] + stats += ['maxdamage','48','95'] + stats += ['attackspeed','1.0','1.0'] + stats += ['maxrange','0','4'] + stats += ['damagetype','kinetic','kinetic'] + stats += ['weapontype','4','4'] + + return stats diff --git a/scripts/loot/lootPools/random_loot_primitives.py b/scripts/loot/lootPools/random_loot_primitives.py new file mode 100644 index 00000000..206888dd --- /dev/null +++ b/scripts/loot/lootPools/random_loot_primitives.py @@ -0,0 +1,8 @@ + +def itemNames(): + + return ['janta_knife'] + +def itemChances(): + return [100] + \ No newline at end of file diff --git a/scripts/loot/rarelootchestcontents/exceptionaltable.py b/scripts/loot/rarelootchestcontents/exceptionaltable.py index b8c4ba4d..f652f0a4 100644 --- a/scripts/loot/rarelootchestcontents/exceptionaltable.py +++ b/scripts/loot/rarelootchestcontents/exceptionaltable.py @@ -1,12 +1,48 @@ -def itemTemplates(): - templates = ['Biological_Focus_Crystal','Synapse_Focus_Crystal','Concentrated_Bacta_Tank','DNA_Storage_Device_Kowakian'] - templates = templates + ['Dug_Costume_Instructions','Dusk_in_Kachirho','Mercenaries_Despair','Mercenaries_Lament','Nightsister_Melee_Armguard'] - templates = templates + ['Rare_Painting','Sunriders_Destiny'] +def itemNames(): + # Exceptional part + templates = ['bacta_tank','legendary_e5_carbine','legendary_fwg5_pistol','legendary_nightsister_energy_lance'] + templates +=['legendary_power_hammer','legendary_stun_baton','legendary_t21_rifle','advertisement_rodian'] + templates +=['cunning_of_tyranus','dna_storage_device','dusk_in_kachirho','emperors_senate_office_chair'] + templates +=['fighter','gungan_statue_style_1_schematic','gungan_statue_style_2_schematic','gungan_statue_style_3_schematic'] + templates +=['gungan_statue_style_4_schematic','holo_entertainment_table','jedi_master_cloak','jedi_relic_1'] + templates +=['poster_block_turret_schematic','prayer_mobile','shard_of_ferocity','shard_of_retaliation'] + templates +=['sith_buff_holocron','sith_relic','war_phoenix'] + # Rare part + templates +=['animal_hide_rack_style_1','animal_hide_rack_style_2','animal_hide_rack_style_3','animal_hide_rack_style_4'] + templates +=['at_st_pilots_helmet','aurilian_sculpture_section_1','aurilian_sculpture_section_2','aurilian_sculpture_section_3'] + templates +=['aurilian_sculpture_section_4','banes_heart','bar_corner_piece_1','bar_corner_piece_2'] + templates +=['bar_corner_piece_3','bar_counter_large','bothan_beauty','bothan_buff'] + templates +=['cast_wing_in_flight','corellian_seaside','data_disk_hologram','decorative_bubble_tank'] + templates +=['droid_in_contrast','drum','emperors_eyes','family_bonds'] + templates +=['feared','fighter_study','fighters_courage','geonosian_costume_instructions'] + templates +=['hanging_life_day_orb','hutt_greed','imperial_oppression','jedi_statue_schematic'] + templates +=['jubilee_wheel_schematic','kachirho_wall_cornucopia','kowakian_cage','krayt_costume_instructions'] + templates +=['large_fruit_stand_schematic','large_unmarked_crate','lava_geode','life_day_lamp'] + templates +=['life_day_proud_wookie','life_day_red_robed_wookie','living_canals','lugjack_machine_schematic'] + templates +=['miniature_wroshyr_tree','modified_fusion_reactor_schematic','mustafarian_injector','mynock_costume_instructions'] + templates +=['no_division','nym_collectible_globe','pilgrimage','poster_of_a_ship_schematic'] + templates +=['poster_of_a_turret_schematic','poster_of_food_preparation','proton_chair','rancor_costume_instructions'] + templates +=['rotj_helmet','shard_of_the_serpent','stap1_vehicle_deed','target_dummy_black_sun'] + templates +=['target_dummy_rebel','target_dummy_stormtrooper','tatooine_dune_speeder','triumph'] + templates +=['ugnaught_costume_instructions','victory','wampa_costume_instructions','war_terminal'] + templates +=['warriors honor','wookie_home_banner_kit','wookie_life_day_orb','xeno_couch'] + templates +=['xeno_desk','xeno_desk_lamp','xeno_rug','xeno_table'] + return templates def itemChances(): - chances = [9,9,9,9] - chances = chances+[9,9,9,9,9] - chances = chances+[9,9] #= 100% - return chances \ No newline at end of file + chances = [1.908,1.908,1.908,1.908,1.908,1.908,1.908,1.908,1.908,1.908] #27 Exceptionals + chances += [1.908,1.908,1.908,1.908,1.908,1.908,1.908,1.908,1.908,1.908] + chances += [1.908,1.908,1.908,1.908,1.908,1.908,1.908] + chances += [0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636] #76 Rares + chances += [0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636] + chances += [0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636] + chances += [0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636] + chances += [0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636] + chances += [0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636] + chances += [0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636,0.636] + chances += [0.636,0.636,0.636,0.636,0.636,0.784] + + return chances + \ No newline at end of file diff --git a/scripts/loot/rarelootchestcontents/legendarytable.py b/scripts/loot/rarelootchestcontents/legendarytable.py index d372b968..c46a7855 100644 --- a/scripts/loot/rarelootchestcontents/legendarytable.py +++ b/scripts/loot/rarelootchestcontents/legendarytable.py @@ -1,8 +1,51 @@ def itemNames(): + # Legendary part + templates = ['biological_focus_crystal','synapse_focus_crystal','concentrated_bacta_tank','dna_storage_device_kowakian'] + templates +=['dug_costume_instructions','mercenaries_despair','mercenaries_lament','nightsister_melee_armguard'] + templates +=['rare_painting','sunriders_destiny'] # 10 items + # Exceptional part + templates +=['bacta_tank','legendary_e5_carbine','legendary_fwg5_pistol','legendary_nightsister_energy_lance'] + templates +=['legendary_power_hammer','legendary_stun_baton','legendary_t21_rifle','advertisement_rodian'] + templates +=['cunning_of_tyranus','dna_storage_device','dusk_in_kachirho','emperors_senate_office_chair'] + templates +=['fighter','gungan_statue_style_1_schematic','gungan_statue_style_2_schematic','gungan_statue_style_3_schematic'] + templates +=['gungan_statue_style_4_schematic','holo_entertainment_table','jedi_master_cloak','jedi_relic_1'] + templates +=['poster_block_turret_schematic','prayer_mobile','shard_of_ferocity','shard_of_retaliation'] + templates +=['sith_buff_holocron','sith_relic','war_phoenix'] + # Rare part + templates +=['animal_hide_rack_style_1','animal_hide_rack_style_2','animal_hide_rack_style_3','animal_hide_rack_style_4'] + templates +=['at_st_pilots_helmet','aurilian_sculpture_section_1','aurilian_sculpture_section_2','aurilian_sculpture_section_3'] + templates +=['aurilian_sculpture_section_4','banes_heart','bar_corner_piece_1','bar_corner_piece_2'] + templates +=['bar_corner_piece_3','bar_counter_large','bothan_beauty','bothan_buff'] + templates +=['cast_wing_in_flight','corellian_seaside','data_disk_hologram','decorative_bubble_tank'] + templates +=['droid_in_contrast','drum','emperors_eyes','family_bonds'] + templates +=['feared','fighter_study','fighters_courage','geonosian_costume_instructions'] + templates +=['hanging_life_day_orb','hutt_greed','imperial_oppression','jedi_statue_schematic'] + templates +=['jubilee_wheel_schematic','kachirho_wall_cornucopia','kowakian_cage','krayt_costume_instructions'] + templates +=['large_fruit_stand_schematic','large_unmarked_crate','lava_geode','life_day_lamp'] + templates +=['life_day_proud_wookie','life_day_red_robed_wookie','living_canals','lugjack_machine_schematic'] + templates +=['miniature_wroshyr_tree','modified_fusion_reactor_schematic','mustafarian_injector','mynock_costume_instructions'] + templates +=['no_division','nym_collectible_globe','pilgrimage','poster_of_a_ship_schematic'] + templates +=['poster_of_a_turret_schematic','poster_of_food_preparation','proton_chair','rancor_costume_instructions'] + templates +=['rotj_helmet','shard_of_the_serpent','stap1_vehicle_deed','target_dummy_black_sun'] + templates +=['target_dummy_rebel','target_dummy_stormtrooper','tatooine_dune_speeder','triumph'] + templates +=['ugnaught_costume_instructions','victory','wampa_costume_instructions','war_terminal'] + templates +=['warriors honor','wookie_home_banner_kit','wookie_life_day_orb','xeno_couch'] + templates +=['xeno_desk','xeno_desk_lamp','xeno_rug','xeno_table'] + return templates - return ['colorCrystal'] - def itemChances(): - - return [70] \ No newline at end of file + chances = [1.875,1.875,1.875,1.875,1.875,1.875,1.875,1.875,1.875,1.875] #10 Legendaries + chances += [1.25,1.25,1.25,1.25,1.25,1.25,1.25,1.25,1.25,1.25] #27 Exceptionals + chances += [1.25,1.25,1.25,1.25,1.25,1.25,1.25,1.25,1.25,1.25] + chances += [1.25,1.25,1.25,1.25,1.25,1.25,1.25] + chances += [0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625] #76 Rares + chances += [0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625] + chances += [0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625] + chances += [0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625] + chances += [0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625] + chances += [0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625] + chances += [0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625,0.625] + chances += [0.625,0.625,0.625,0.625,0.625,0.625] + + return chances \ No newline at end of file diff --git a/scripts/loot/rarelootchestcontents/raretable.py b/scripts/loot/rarelootchestcontents/raretable.py index e69de29b..8e049299 100644 --- a/scripts/loot/rarelootchestcontents/raretable.py +++ b/scripts/loot/rarelootchestcontents/raretable.py @@ -0,0 +1,36 @@ + +def itemNames(): + + items = ['animal_hide_rack_style_1','animal_hide_rack_style_2','animal_hide_rack_style_3','animal_hide_rack_style_4'] + items +=['at_st_pilots_helmet','aurilian_sculpture_section_1','aurilian_sculpture_section_2','aurilian_sculpture_section_3'] + items +=['aurilian_sculpture_section_4','banes_heart','bar_corner_piece_1','bar_corner_piece_2'] + items +=['bar_corner_piece_3','bar_counter_large','bothan_beauty','bothan_buff'] + items +=['cast_wing_in_flight','corellian_seaside','data_disk_hologram','decorative_bubble_tank'] + items +=['droid_in_contrast','drum','emperors_eyes','family_bonds'] + items +=['feared','fighter_study','fighters_courage','geonosian_costume_instructions'] + items +=['hanging_life_day_orb','hutt_greed','imperial_oppression','jedi_statue_schematic'] + items +=['jubilee_wheel_schematic','kachirho_wall_cornucopia','kowakian_cage','krayt_costume_instructions'] + items +=['large_fruit_stand_schematic','large_unmarked_crate','lava_geode','life_day_lamp'] + items +=['life_day_proud_wookie','life_day_red_robed_wookie','living_canals','lugjack_machine_schematic'] + items +=['miniature_wroshyr_tree','modified_fusion_reactor_schematic','mustafarian_injector','mynock_costume_instructions'] + items +=['no_division','nym_collectible_globe','pilgrimage','poster_of_a_ship_schematic'] + items +=['poster_of_a_turret_schematic','poster_of_food_preparation','proton_chair','rancor_costume_instructions'] + items +=['rotj_helmet','shard_of_the_serpent','stap1_vehicle_deed','target_dummy_black_sun'] + items +=['target_dummy_rebel','target_dummy_stormtrooper','tatooine_dune_speeder','triumph'] + items +=['ugnaught_costume_instructions','victory','wampa_costume_instructions','war_terminal'] + items +=['warriors honor','wookie_home_banner_kit','wookie_life_day_orb','xeno_couch'] + items +=['xeno_desk','xeno_desk_lamp','xeno_rug','xeno_table'] + return items + +def itemChances(): + + chances=[1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315] + chances+=[1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315] + chances+=[1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315] + chances+=[1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315] + chances+=[1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315] + chances+=[1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315] + chances+=[1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315,1.315] + chances+=[1.315,1.315,1.315,1.315,1.315,1.375] + return chances ##Sum must be exactly 100 76 items -> 1.315 + \ No newline at end of file diff --git a/scripts/mobiles/corellia/acicular_defender.py b/scripts/mobiles/corellia/acicular_defender.py new file mode 100644 index 00000000..1a782b1d --- /dev/null +++ b/scripts/mobiles/corellia/acicular_defender.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('paralope_acicular_defender') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(3) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("paralope") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_paralope.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('acicular_defender', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/afarathu_brute.py b/scripts/mobiles/corellia/afarathu_brute.py new file mode 100644 index 00000000..7f0117bb --- /dev/null +++ b/scripts/mobiles/corellia/afarathu_brute.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('afarathu_cult_brute') + mobileTemplate.setLevel(29) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("afarathu") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('afarathu_brute', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/afarathu_cult_bodyguard.py b/scripts/mobiles/corellia/afarathu_cult_bodyguard.py new file mode 100644 index 00000000..ee9ed78a --- /dev/null +++ b/scripts/mobiles/corellia/afarathu_cult_bodyguard.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('afarathu_cult_bodyguard') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("afarathu") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('afarathu_cult_bodyguard', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/afarathu_cult_follower.py b/scripts/mobiles/corellia/afarathu_cult_follower.py new file mode 100644 index 00000000..05054521 --- /dev/null +++ b/scripts/mobiles/corellia/afarathu_cult_follower.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('afarathu_cult_brute') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(7) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("afarathu") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_polearm_vibro_axe.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('afarathu_cult_follower', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/afarathu_cult_leader.py b/scripts/mobiles/corellia/afarathu_cult_leader.py new file mode 100644 index 00000000..0a477fc2 --- /dev/null +++ b/scripts/mobiles/corellia/afarathu_cult_leader.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('afarathu_cult_leader') + mobileTemplate.setLevel(31) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("afarathu") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('afarathu_cult_leader', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/afarathu_cult_zealot.py b/scripts/mobiles/corellia/afarathu_cult_zealot.py new file mode 100644 index 00000000..a802d628 --- /dev/null +++ b/scripts/mobiles/corellia/afarathu_cult_zealot.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('afarathu_cult_zealot') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("afarathu") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('afarathu_cult_zealot', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/afarathu_hellion.py b/scripts/mobiles/corellia/afarathu_hellion.py new file mode 100644 index 00000000..1fd90fdc --- /dev/null +++ b/scripts/mobiles/corellia/afarathu_hellion.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('afarathu_cult_hellion') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("afarathu") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('afarathu_cult_hellion', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/afarathu_ruffian.py b/scripts/mobiles/corellia/afarathu_ruffian.py new file mode 100644 index 00000000..e49ae409 --- /dev/null +++ b/scripts/mobiles/corellia/afarathu_ruffian.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('afarathu_cult_ruffian') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("afarathu") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e5.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('afarathu_cult_ruffian', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/afarathu_savage.py b/scripts/mobiles/corellia/afarathu_savage.py new file mode 100644 index 00000000..cce01993 --- /dev/null +++ b/scripts/mobiles/corellia/afarathu_savage.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('afarathu_cult_savage') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("afarathu") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('afarathu_savage', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/agrilat_rasp.py b/scripts/mobiles/corellia/agrilat_rasp.py new file mode 100644 index 00000000..9620f42c --- /dev/null +++ b/scripts/mobiles/corellia/agrilat_rasp.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('agrilat_plumed_rasp') + mobileTemplate.setLevel(34) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(3) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("rasp") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_plumed_rasp.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('agrilat_rasp', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/armor_thief.py b/scripts/mobiles/corellia/armor_thief.py new file mode 100644 index 00000000..e47be728 --- /dev/null +++ b/scripts/mobiles/corellia/armor_thief.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corellia_coronet_armor_thief') + mobileTemplate.setLevel(17) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("self") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_ruffian_zabrak_female_01.iff') + templates.add('object/mobile/shared_dressed_ruffian_zabrak_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('armor_thief', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/bageraset.py b/scripts/mobiles/corellia/bageraset.py new file mode 100644 index 00000000..0d9175b6 --- /dev/null +++ b/scripts/mobiles/corellia/bageraset.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bageraset') + mobileTemplate.setLevel(29) + mobileTemplate.setMinLevel(29) + mobileTemplate.setMaxLevel(31) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(230) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(130) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(80) + mobileTemplate.setSocialGroup("bageraset") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bageraset.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bageraset', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/bageraset_bruiser.py b/scripts/mobiles/corellia/bageraset_bruiser.py new file mode 100644 index 00000000..23161eba --- /dev/null +++ b/scripts/mobiles/corellia/bageraset_bruiser.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bageraset_bruiser') + mobileTemplate.setLevel(9) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(230) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(130) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(80) + mobileTemplate.setSocialGroup("bageraset") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bageraset.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bageraset_bruiser', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/beldonnas_league_enforcer.py b/scripts/mobiles/corellia/beldonnas_league_enforcer.py new file mode 100644 index 00000000..6164ee84 --- /dev/null +++ b/scripts/mobiles/corellia/beldonnas_league_enforcer.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('beldonnas_enforcer') + mobileTemplate.setLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("beldonnas league") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_mercenary_elite_hum_f_01.iff') + templates.add('object/mobile/shared_dressed_mercenary_elite_hum_m_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e5.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('beldonnas_enforcer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/beldonnas_league_marshal.py b/scripts/mobiles/corellia/beldonnas_league_marshal.py new file mode 100644 index 00000000..4d042c5a --- /dev/null +++ b/scripts/mobiles/corellia/beldonnas_league_marshal.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('beldonnas_marshal') + mobileTemplate.setLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("beldonnas league") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_mercenary_elite_hum_f_01.iff') + templates.add('object/mobile/shared_dressed_mercenary_elite_hum_m_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e5.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('beldonnas_marshal', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/beldonnas_league_scout.py b/scripts/mobiles/corellia/beldonnas_league_scout.py new file mode 100644 index 00000000..6fecb7b0 --- /dev/null +++ b/scripts/mobiles/corellia/beldonnas_league_scout.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('beldonnas_scout') + mobileTemplate.setLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("beldonnas league") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_mercenary_elite_hum_f_01.iff') + templates.add('object/mobile/shared_dressed_mercenary_elite_hum_m_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e5.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('beldonnas_scout', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/beldonnas_league_soldier.py b/scripts/mobiles/corellia/beldonnas_league_soldier.py new file mode 100644 index 00000000..8006b24e --- /dev/null +++ b/scripts/mobiles/corellia/beldonnas_league_soldier.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('beldonnas_soldier') + mobileTemplate.setLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("self") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_mercenary_elite_hum_f_01.iff') + templates.add('object/mobile/shared_dressed_mercenary_elite_hum_m_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e5.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('beldonnas_soldier', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/bloated_gubbur.py b/scripts/mobiles/corellia/bloated_gubbur.py new file mode 100644 index 00000000..d47764f3 --- /dev/null +++ b/scripts/mobiles/corellia/bloated_gubbur.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gubbur_bloated') + mobileTemplate.setLevel(23) + mobileTemplate.setMinLevel(23) + mobileTemplate.setMaxLevel(23) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(4) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(3) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(3) + mobileTemplate.setSocialGroup("gubbur") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_gubber.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bloated_gubbur', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/blood_stained_prowler.py b/scripts/mobiles/corellia/blood_stained_prowler.py new file mode 100644 index 00000000..4d820f80 --- /dev/null +++ b/scripts/mobiles/corellia/blood_stained_prowler.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('wrix_bloodstained_prowler') + mobileTemplate.setLevel(21) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(70) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(40) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(35) + mobileTemplate.setSocialGroup("wrix") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_wrix.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('blood_stained_prowler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/blood_thirsty_monarch.py b/scripts/mobiles/corellia/blood_thirsty_monarch.py new file mode 100644 index 00000000..d6e1df0a --- /dev/null +++ b/scripts/mobiles/corellia/blood_thirsty_monarch.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corellian_butterfly_monarch_bloodthirsty') + mobileTemplate.setLevel(19) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(27) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(27) + mobileTemplate.setSocialGroup("corellian butterfly") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_corellian_butterfly.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('blood_thirsty_monarch', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/canoid.py b/scripts/mobiles/corellia/canoid.py new file mode 100644 index 00000000..34353c57 --- /dev/null +++ b/scripts/mobiles/corellia/canoid.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('canoid') + mobileTemplate.setLevel(29) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("canoid") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_canoid.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('canoid', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/canoid_hunter.py b/scripts/mobiles/corellia/canoid_hunter.py new file mode 100644 index 00000000..ceac4002 --- /dev/null +++ b/scripts/mobiles/corellia/canoid_hunter.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('canoid_hunter') + mobileTemplate.setLevel(29) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("canoid") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_canoid.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('canoid_hunter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/canoid_pack_leader.py b/scripts/mobiles/corellia/canoid_pack_leader.py new file mode 100644 index 00000000..ebe35901 --- /dev/null +++ b/scripts/mobiles/corellia/canoid_pack_leader.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('canoid_pack_leader') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.2) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("canoid") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_canoid.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('canoid_pack_leader', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/carrion_spat.py b/scripts/mobiles/corellia/carrion_spat.py new file mode 100644 index 00000000..c0e7422f --- /dev/null +++ b/scripts/mobiles/corellia/carrion_spat.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('carrion_spat') + mobileTemplate.setLevel(31) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(260) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(180) + mobileTemplate.setSocialGroup("carrion spat") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_carrion_spat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('carrion_spat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/carrion_spat_corpsereaver.py b/scripts/mobiles/corellia/carrion_spat_corpsereaver.py new file mode 100644 index 00000000..e019d3d5 --- /dev/null +++ b/scripts/mobiles/corellia/carrion_spat_corpsereaver.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('carrion_spat_corpsereaver') + mobileTemplate.setLevel(10) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(260) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(180) + mobileTemplate.setSocialGroup("carrion spat") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_carrion_spat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('carrion_spat_corpsereaver', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/cor_swooper.py b/scripts/mobiles/corellia/cor_swooper.py new file mode 100644 index 00000000..feff7e82 --- /dev/null +++ b/scripts/mobiles/corellia/cor_swooper.py @@ -0,0 +1,37 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('swooper') + mobileTemplate.setLevel(26) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("cor swoop") + mobileTemplate.setAssistRange(4) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_dressed_criminal_swooper_human_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('cor_swooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corellian_butterfly.py b/scripts/mobiles/corellia/corellian_butterfly.py new file mode 100644 index 00000000..cd0300a6 --- /dev/null +++ b/scripts/mobiles/corellia/corellian_butterfly.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corellian_butterfly') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(3) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setSocialGroup("corellian butterfly") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_corellian_butterfly.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('corellian_butterfly', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corellian_butterfly_defender.py b/scripts/mobiles/corellia/corellian_butterfly_defender.py new file mode 100644 index 00000000..36acd0ab --- /dev/null +++ b/scripts/mobiles/corellia/corellian_butterfly_defender.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corellian_butterfly_defender') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(16) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(16) + mobileTemplate.setSocialGroup("corellian butterfly") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_corellian_butterfly.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('corellian_butterfly_defender', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corellian_butterfly_drone.py b/scripts/mobiles/corellia/corellian_butterfly_drone.py new file mode 100644 index 00000000..31c24a22 --- /dev/null +++ b/scripts/mobiles/corellia/corellian_butterfly_drone.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corellian_butterfly_drone') + mobileTemplate.setLevel(23) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(3) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setSocialGroup("corellian butterfly") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_corellian_butterfly.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('corellian_butterfly_drone', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corellian_butterfly_monarch.py b/scripts/mobiles/corellia/corellian_butterfly_monarch.py new file mode 100644 index 00000000..7688682b --- /dev/null +++ b/scripts/mobiles/corellia/corellian_butterfly_monarch.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corellian_butterfly_monarch') + mobileTemplate.setLevel(34) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(27) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(27) + mobileTemplate.setSocialGroup("corellian butterfly") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_corellian_butterfly.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('corellian_butterfly_monarch', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corellian_butterfly_warrior.py b/scripts/mobiles/corellia/corellian_butterfly_warrior.py new file mode 100644 index 00000000..649d7e7a --- /dev/null +++ b/scripts/mobiles/corellia/corellian_butterfly_warrior.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corellian_butterfly_warrior') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(12) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(12) + mobileTemplate.setSocialGroup("corellian butterfly") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_corellian_butterfly.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('corellian_butterfly_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corellian_butterfly_worker.py b/scripts/mobiles/corellia/corellian_butterfly_worker.py new file mode 100644 index 00000000..b50943cb --- /dev/null +++ b/scripts/mobiles/corellia/corellian_butterfly_worker.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corellian_butterfly_warrior') + mobileTemplate.setLevel(28) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(8) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(8) + mobileTemplate.setSocialGroup("corellian butterfly") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_corellian_butterfly.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('corellian_butterfly_worker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_agent.py b/scripts/mobiles/corellia/corsec_agent.py new file mode 100644 index 00000000..d9acc9d3 --- /dev/null +++ b/scripts/mobiles/corellia/corsec_agent.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_agent') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("corsec") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_agent', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_cadet.py b/scripts/mobiles/corellia/corsec_cadet.py new file mode 100644 index 00000000..da3d3b9b --- /dev/null +++ b/scripts/mobiles/corellia/corsec_cadet.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_cadet') + mobileTemplate.setLevel(32) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("corsec") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_cadet', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_captain.py b/scripts/mobiles/corellia/corsec_captain.py new file mode 100644 index 00000000..e752d3f7 --- /dev/null +++ b/scripts/mobiles/corellia/corsec_captain.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_captain') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("corsec") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_captain', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_chief.py b/scripts/mobiles/corellia/corsec_chief.py new file mode 100644 index 00000000..832cff4f --- /dev/null +++ b/scripts/mobiles/corellia/corsec_chief.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_chief') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("corsec") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_chief', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_commissioner.py b/scripts/mobiles/corellia/corsec_commissioner.py new file mode 100644 index 00000000..4c4d7a4f --- /dev/null +++ b/scripts/mobiles/corellia/corsec_commissioner.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_commissioner') + mobileTemplate.setLevel(34) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("corsec") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_commissioner', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_deserter.py b/scripts/mobiles/corellia/corsec_deserter.py new file mode 100644 index 00000000..81b942c0 --- /dev/null +++ b/scripts/mobiles/corellia/corsec_deserter.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_deserter') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("corsec rogue") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_deserter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_detective.py b/scripts/mobiles/corellia/corsec_detective.py new file mode 100644 index 00000000..fe2f0f84 --- /dev/null +++ b/scripts/mobiles/corellia/corsec_detective.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_detective') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("corsec") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_detective_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_detective', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_inspector_sergeant.py b/scripts/mobiles/corellia/corsec_inspector_sergeant.py new file mode 100644 index 00000000..e25c7cf1 --- /dev/null +++ b/scripts/mobiles/corellia/corsec_inspector_sergeant.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_inspector_sergeant') + mobileTemplate.setLevel(34) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("corsec") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_inspector_sergeant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_investigator.py b/scripts/mobiles/corellia/corsec_investigator.py new file mode 100644 index 00000000..0267d243 --- /dev/null +++ b/scripts/mobiles/corellia/corsec_investigator.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_investigator') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("corsec") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_investigator', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_lieutenant.py b/scripts/mobiles/corellia/corsec_lieutenant.py new file mode 100644 index 00000000..0a424dba --- /dev/null +++ b/scripts/mobiles/corellia/corsec_lieutenant.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_lieutenant') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("corsec") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_lieutenant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_major.py b/scripts/mobiles/corellia/corsec_major.py new file mode 100644 index 00000000..2ba188f5 --- /dev/null +++ b/scripts/mobiles/corellia/corsec_major.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_major') + mobileTemplate.setLevel(34) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("corsec") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_major', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_master_sergeant.py b/scripts/mobiles/corellia/corsec_master_sergeant.py new file mode 100644 index 00000000..cf67ce76 --- /dev/null +++ b/scripts/mobiles/corellia/corsec_master_sergeant.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_master_sergeant') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("corsec") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_master_sergeant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_security_specialist.py b/scripts/mobiles/corellia/corsec_security_specialist.py new file mode 100644 index 00000000..ff4cd8e1 --- /dev/null +++ b/scripts/mobiles/corellia/corsec_security_specialist.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mtp_recruiter_corsec_detective') + mobileTemplate.setLevel(81) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aggro corsec") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_security_specialist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_sergeant.py b/scripts/mobiles/corellia/corsec_sergeant.py new file mode 100644 index 00000000..1da24ce0 --- /dev/null +++ b/scripts/mobiles/corellia/corsec_sergeant.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_sergeant') + mobileTemplate.setLevel(32) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("corsec") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_sergeant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_special_agent.py b/scripts/mobiles/corellia/corsec_special_agent.py new file mode 100644 index 00000000..5acdbe2d --- /dev/null +++ b/scripts/mobiles/corellia/corsec_special_agent.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_agent_aggro') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aggro corsec") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_special_agent', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_special_ops_captain.py b/scripts/mobiles/corellia/corsec_special_ops_captain.py new file mode 100644 index 00000000..89207f7d --- /dev/null +++ b/scripts/mobiles/corellia/corsec_special_ops_captain.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_captain_aggro') + mobileTemplate.setLevel(82) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aggro corsec") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_special_ops_captain', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_special_ops_chief.py b/scripts/mobiles/corellia/corsec_special_ops_chief.py new file mode 100644 index 00000000..e0147367 --- /dev/null +++ b/scripts/mobiles/corellia/corsec_special_ops_chief.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_chief_aggro') + mobileTemplate.setLevel(83) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aggro corsec") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_special_ops_chief', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_special_ops_commissioner.py b/scripts/mobiles/corellia/corsec_special_ops_commissioner.py new file mode 100644 index 00000000..805a3a61 --- /dev/null +++ b/scripts/mobiles/corellia/corsec_special_ops_commissioner.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_comissioner_aggro_aggro') + mobileTemplate.setLevel(84) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aggro corsec") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_special_ops_commissioner', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_special_ops_inspector.py b/scripts/mobiles/corellia/corsec_special_ops_inspector.py new file mode 100644 index 00000000..22fc2e2c --- /dev/null +++ b/scripts/mobiles/corellia/corsec_special_ops_inspector.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_inspector_sergeant_aggro') + mobileTemplate.setLevel(81) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aggro corsec") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_special_ops_inspector', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_special_ops_lieutenant.py b/scripts/mobiles/corellia/corsec_special_ops_lieutenant.py new file mode 100644 index 00000000..f1c72217 --- /dev/null +++ b/scripts/mobiles/corellia/corsec_special_ops_lieutenant.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_lieutenant_aggro') + mobileTemplate.setLevel(82) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aggro corsec") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_special_ops_lieutenant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_special_ops_major.py b/scripts/mobiles/corellia/corsec_special_ops_major.py new file mode 100644 index 00000000..e883357e --- /dev/null +++ b/scripts/mobiles/corellia/corsec_special_ops_major.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_major_aggro') + mobileTemplate.setLevel(83) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aggro corsec") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_special_ops_major', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_special_ops_master_sergeant.py b/scripts/mobiles/corellia/corsec_special_ops_master_sergeant.py new file mode 100644 index 00000000..25be9350 --- /dev/null +++ b/scripts/mobiles/corellia/corsec_special_ops_master_sergeant.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_master_sergeant_aggro') + mobileTemplate.setLevel(82) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aggro corsec") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_special_ops_master_sergeant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_special_ops_sergeant.py b/scripts/mobiles/corellia/corsec_special_ops_sergeant.py new file mode 100644 index 00000000..7ecfea25 --- /dev/null +++ b/scripts/mobiles/corellia/corsec_special_ops_sergeant.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_sergeant_aggro') + mobileTemplate.setLevel(81) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aggro corsec") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_special_ops_sergeant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_special_ops_trainee.py b/scripts/mobiles/corellia/corsec_special_ops_trainee.py new file mode 100644 index 00000000..e4184ffe --- /dev/null +++ b/scripts/mobiles/corellia/corsec_special_ops_trainee.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_cadet_aggro') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aggro corsec") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_special_ops_trainee', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_traitor.py b/scripts/mobiles/corellia/corsec_traitor.py new file mode 100644 index 00000000..dce73583 --- /dev/null +++ b/scripts/mobiles/corellia/corsec_traitor.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_traitor') + mobileTemplate.setLevel(31) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("corsec rogue") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_detective_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_traitor', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/corsec_trooper.py b/scripts/mobiles/corellia/corsec_trooper.py new file mode 100644 index 00000000..638d0853 --- /dev/null +++ b/scripts/mobiles/corellia/corsec_trooper.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corsec_trooper') + mobileTemplate.setLevel(32) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("corsec") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('corsec_trooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/crazed_durni.py b/scripts/mobiles/corellia/crazed_durni.py new file mode 100644 index 00000000..45433cfd --- /dev/null +++ b/scripts/mobiles/corellia/crazed_durni.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crazed_durni') + mobileTemplate.setLevel(29) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(3) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("durni") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_durni.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('crazed_durni', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/crimson_razor_cat.py b/scripts/mobiles/corellia/crimson_razor_cat.py new file mode 100644 index 00000000..bfab3242 --- /dev/null +++ b/scripts/mobiles/corellia/crimson_razor_cat.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crimson_sand_panther') + mobileTemplate.setLevel(29) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("razor cat") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_corellian_sand_panther.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('crimson_razor_cat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/cyst_coverd_rot_mite_guard.py b/scripts/mobiles/corellia/cyst_coverd_rot_mite_guard.py new file mode 100644 index 00000000..65a77d1e --- /dev/null +++ b/scripts/mobiles/corellia/cyst_coverd_rot_mite_guard.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('cyst_covered_rot_guard') + mobileTemplate.setLevel(12) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(9) + mobileTemplate.setSocialGroup("decay mite") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_rot_mite.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('cyst_covered_rot_mite_guard', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/dalyrake.py b/scripts/mobiles/corellia/dalyrake.py new file mode 100644 index 00000000..0afd6f97 --- /dev/null +++ b/scripts/mobiles/corellia/dalyrake.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dalyrake') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(25) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(45) + mobileTemplate.setSocialGroup("dalyrake") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_dalyrake.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('dalyrake', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/dalyrake_harvester.py b/scripts/mobiles/corellia/dalyrake_harvester.py new file mode 100644 index 00000000..9578ad06 --- /dev/null +++ b/scripts/mobiles/corellia/dalyrake_harvester.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dalyrake_harvester') + mobileTemplate.setLevel(35) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(25) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(45) + mobileTemplate.setSocialGroup("dalyrake") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_dalyrake.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('dalyrake_harvester', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/dalyrake_matriarch.py b/scripts/mobiles/corellia/dalyrake_matriarch.py new file mode 100644 index 00000000..354cafad --- /dev/null +++ b/scripts/mobiles/corellia/dalyrake_matriarch.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dalyrake_matriarch') + mobileTemplate.setLevel(31) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(35) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(60) + mobileTemplate.setSocialGroup("dalyrake") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_dalyrake_matriarch.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('dalyrake_martriarch', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/deranged_wrix.py b/scripts/mobiles/corellia/deranged_wrix.py new file mode 100644 index 00000000..cff96e90 --- /dev/null +++ b/scripts/mobiles/corellia/deranged_wrix.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('deranged_wrix') + mobileTemplate.setLevel(32) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(55) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(25) + mobileTemplate.setSocialGroup("wrix") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_deranged_wrix.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('deranged_wrix', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/devil_gulginaw.py b/scripts/mobiles/corellia/devil_gulginaw.py new file mode 100644 index 00000000..271d2d18 --- /dev/null +++ b/scripts/mobiles/corellia/devil_gulginaw.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('devil_gulginaw') + mobileTemplate.setLevel(32) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(70) + mobileTemplate.setSocialGroup("gulginaw") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_devil_gulginaw.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('devil_gulginaw', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/dire_cat.py b/scripts/mobiles/corellia/dire_cat.py new file mode 100644 index 00000000..abe8fb00 --- /dev/null +++ b/scripts/mobiles/corellia/dire_cat.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dire_cat') + mobileTemplate.setLevel(28) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("dire cat") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_dire_cat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('dire_cat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/diseased_vrelt.py b/scripts/mobiles/corellia/diseased_vrelt.py new file mode 100644 index 00000000..8d6cf5d5 --- /dev/null +++ b/scripts/mobiles/corellia/diseased_vrelt.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('diseased_vrelt') + mobileTemplate.setLevel(26) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(4) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(3) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("vrelt") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_vrelt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('diseased_vrelt', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/diseased_vrelt_matriarch.py b/scripts/mobiles/corellia/diseased_vrelt_matriarch.py new file mode 100644 index 00000000..4246b62d --- /dev/null +++ b/scripts/mobiles/corellia/diseased_vrelt_matriarch.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('diseased_vrelt_matriarch') + mobileTemplate.setLevel(6) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(10) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(10) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(10) + mobileTemplate.setSocialGroup("vrelt") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_vrelt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('diseased_vrelt_matriarch', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/domestic_bageraset.py b/scripts/mobiles/corellia/domestic_bageraset.py new file mode 100644 index 00000000..b86adf57 --- /dev/null +++ b/scripts/mobiles/corellia/domestic_bageraset.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('domestic_bageraset') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(240) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(145) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(104) + mobileTemplate.setSocialGroup("bageraset") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bageraset.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('domestic_bageraset', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/domestic_humbaba.py b/scripts/mobiles/corellia/domestic_humbaba.py new file mode 100644 index 00000000..694a2810 --- /dev/null +++ b/scripts/mobiles/corellia/domestic_humbaba.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('domestic_humbaba') + mobileTemplate.setLevel(4) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Domesticated Meat") + mobileTemplate.setMeatAmount(215) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(115) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(65) + mobileTemplate.setSocialGroup("humbaba") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_savage_humbaba.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('domestic_humbaba', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/domestic_krahbu.py b/scripts/mobiles/corellia/domestic_krahbu.py new file mode 100644 index 00000000..e06360aa --- /dev/null +++ b/scripts/mobiles/corellia/domestic_krahbu.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('domestic_krahbu') + mobileTemplate.setLevel(4) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(230) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(160) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(145) + mobileTemplate.setSocialGroup("krahbu") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_krahbu.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('domestic_krahbu', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/drall_abbot.py b/scripts/mobiles/corellia/drall_abbot.py new file mode 100644 index 00000000..d9f268fa --- /dev/null +++ b/scripts/mobiles/corellia/drall_abbot.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('drall_abbot') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("drall") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_drall_female.iff') + templates.add('object/mobile/shared_drall_male.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('drall_abbot', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/drall_chieftain.py b/scripts/mobiles/corellia/drall_chieftain.py new file mode 100644 index 00000000..ad9d8a27 --- /dev/null +++ b/scripts/mobiles/corellia/drall_chieftain.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('drall_chieftain') + mobileTemplate.setLevel(38) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("drall") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_drall_female.iff') + templates.add('object/mobile/shared_drall_male.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('drall_chieftain', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/drall_guard.py b/scripts/mobiles/corellia/drall_guard.py new file mode 100644 index 00000000..244b394e --- /dev/null +++ b/scripts/mobiles/corellia/drall_guard.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('drall_guard') + mobileTemplate.setLevel(36) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("drall") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_drall_female.iff') + templates.add('object/mobile/shared_drall_male.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('drall_guard', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/drall_master.py b/scripts/mobiles/corellia/drall_master.py new file mode 100644 index 00000000..69888d59 --- /dev/null +++ b/scripts/mobiles/corellia/drall_master.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('drall_master') + mobileTemplate.setLevel(37) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("drall") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_drall_female.iff') + templates.add('object/mobile/shared_drall_male.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('drall_master', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/drall_monk.py b/scripts/mobiles/corellia/drall_monk.py new file mode 100644 index 00000000..a2324d7c --- /dev/null +++ b/scripts/mobiles/corellia/drall_monk.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('drall_monk') + mobileTemplate.setLevel(37) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("drall") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_drall_female.iff') + templates.add('object/mobile/shared_drall_male.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('drall_monk', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/drall_patriot.py b/scripts/mobiles/corellia/drall_patriot.py new file mode 100644 index 00000000..ab5aaae3 --- /dev/null +++ b/scripts/mobiles/corellia/drall_patriot.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('drall_patriot') + mobileTemplate.setLevel(37) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("drall") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_drall_female.iff') + templates.add('object/mobile/shared_drall_male.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('drall_patriot', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/drall_patriot_conqueror.py b/scripts/mobiles/corellia/drall_patriot_conqueror.py new file mode 100644 index 00000000..b0da4289 --- /dev/null +++ b/scripts/mobiles/corellia/drall_patriot_conqueror.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('drall_patriot_conqueror') + mobileTemplate.setLevel(38) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("drall") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_drall_female.iff') + templates.add('object/mobile/shared_drall_male.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('drall_patriot_conqueror', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/drall_patriot_footsoldier.py b/scripts/mobiles/corellia/drall_patriot_footsoldier.py new file mode 100644 index 00000000..07092987 --- /dev/null +++ b/scripts/mobiles/corellia/drall_patriot_footsoldier.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('drall_patriot_footsoldier') + mobileTemplate.setLevel(37) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("drall") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_drall_female.iff') + templates.add('object/mobile/shared_drall_male.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('drall_patriot_footsoldier', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/drall_patriot_legionnaire.py b/scripts/mobiles/corellia/drall_patriot_legionnaire.py new file mode 100644 index 00000000..63965e2c --- /dev/null +++ b/scripts/mobiles/corellia/drall_patriot_legionnaire.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('drall_patriot_legionnaire') + mobileTemplate.setLevel(38) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("drall") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_drall_female.iff') + templates.add('object/mobile/shared_drall_male.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('drall_patriot_legionnaire', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/drall_sentry.py b/scripts/mobiles/corellia/drall_sentry.py new file mode 100644 index 00000000..5a0222ca --- /dev/null +++ b/scripts/mobiles/corellia/drall_sentry.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('drall_sentry') + mobileTemplate.setLevel(37) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("drall") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_drall_female.iff') + templates.add('object/mobile/shared_drall_male.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('drall_sentry', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/dung_mite_worker.py b/scripts/mobiles/corellia/dung_mite_worker.py new file mode 100644 index 00000000..89c5cce3 --- /dev/null +++ b/scripts/mobiles/corellia/dung_mite_worker.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('sickening_dung_mite_worker') + mobileTemplate.setLevel(13) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(11) + mobileTemplate.setSocialGroup("decay mite") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_sickening_dung_mite_worker.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('dung_mite_worker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/durni.py b/scripts/mobiles/corellia/durni.py index a0dcfeed..a7fd3f7d 100644 --- a/scripts/mobiles/corellia/durni.py +++ b/scripts/mobiles/corellia/durni.py @@ -1,16 +1,43 @@ -import sys -from services.spawn import MobileTemplate -from java.util import Vector - -def addTemplate(core): - mobileTemplate = MobileTemplate() - templates = Vector() - templates.add('object/mobile/shared_durni.iff') - mobileTemplate.setCreatureName('durni') - mobileTemplate.setTemplates(templates) - mobileTemplate.setLevel(4) - attacks = Vector() - mobileTemplate.setDefaultAttack('creatureMeleeAttack') - mobileTemplate.setAttacks(attacks) - core.spawnService.addMobileTemplate('durni', mobileTemplate) - \ No newline at end of file +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('durni') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(3) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("durni") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_durni.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('durni', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/dwarf_gronda.py b/scripts/mobiles/corellia/dwarf_gronda.py new file mode 100644 index 00000000..1926acbf --- /dev/null +++ b/scripts/mobiles/corellia/dwarf_gronda.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dwarf_gronda') + mobileTemplate.setLevel(31) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(280) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(170) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(90) + mobileTemplate.setSocialGroup("gronda") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_dwarf_gronda.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('dwarf_gronda', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/elder_gronda.py b/scripts/mobiles/corellia/elder_gronda.py new file mode 100644 index 00000000..006baee8 --- /dev/null +++ b/scripts/mobiles/corellia/elder_gronda.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gronda_elder') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(360) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(270) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(180) + mobileTemplate.setSocialGroup("gronda") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_gronda.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elder_gronda', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/enraged_carrion_spat.py b/scripts/mobiles/corellia/enraged_carrion_spat.py new file mode 100644 index 00000000..ab07bdb8 --- /dev/null +++ b/scripts/mobiles/corellia/enraged_carrion_spat.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corellia_enraged_carrion_spat') + mobileTemplate.setLevel(16) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(260) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(180) + mobileTemplate.setSocialGroup("enraged carrion spat") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_carrion_spat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('enraged_carrion_spat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/enraged_tabage_mother.py b/scripts/mobiles/corellia/enraged_tabage_mother.py new file mode 100644 index 00000000..9082316a --- /dev/null +++ b/scripts/mobiles/corellia/enraged_tabage_mother.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('enraged_tabage_mother') + mobileTemplate.setLevel(16) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(16) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(16) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(16) + mobileTemplate.setSocialGroup("tagage") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_tabage.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('enraged_tabage_mother', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/female_dire_cat.py b/scripts/mobiles/corellia/female_dire_cat.py new file mode 100644 index 00000000..ee360478 --- /dev/null +++ b/scripts/mobiles/corellia/female_dire_cat.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('female_dire_cat') + mobileTemplate.setLevel(29) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("dire cat") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_female_dire_cat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('female_dire_cat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/female_forest_slice_hound.py b/scripts/mobiles/corellia/female_forest_slice_hound.py new file mode 100644 index 00000000..f7cae4d5 --- /dev/null +++ b/scripts/mobiles/corellia/female_forest_slice_hound.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('female_forest_slice_hound') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("slice hound forest") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_forest_slice_hound.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('female_forest_slice_hound', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/female_grassland_slice_hound.py b/scripts/mobiles/corellia/female_grassland_slice_hound.py new file mode 100644 index 00000000..61a1d186 --- /dev/null +++ b/scripts/mobiles/corellia/female_grassland_slice_hound.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('female_grassland_slice_hound') + mobileTemplate.setLevel(29) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("slice hound grassland") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_female_grassland_slice_hound.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('female_grassland_slice_hound', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/female_razor_cat.py b/scripts/mobiles/corellia/female_razor_cat.py new file mode 100644 index 00000000..fed1bf7a --- /dev/null +++ b/scripts/mobiles/corellia/female_razor_cat.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('female_sand_panther') + mobileTemplate.setLevel(29) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("razor cat") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_crimson_sand_panther.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('female_razor_cat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/female_slice_hound.py b/scripts/mobiles/corellia/female_slice_hound.py new file mode 100644 index 00000000..58b7affa --- /dev/null +++ b/scripts/mobiles/corellia/female_slice_hound.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('female_forest_slice_hound') + mobileTemplate.setLevel(26) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("slice hound") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_corellian_slice_hound.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('female_slice_hound', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/feral_orphan.py b/scripts/mobiles/corellia/feral_orphan.py new file mode 100644 index 00000000..663a9977 --- /dev/null +++ b/scripts/mobiles/corellia/feral_orphan.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dire_cat_feral_orphan') + mobileTemplate.setLevel(12) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("dire cat") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_dire_cat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('orphan_dire_cat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/feral_selonian.py b/scripts/mobiles/corellia/feral_selonian.py new file mode 100644 index 00000000..b85048e4 --- /dev/null +++ b/scripts/mobiles/corellia/feral_selonian.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('feral_selonian') + mobileTemplate.setLevel(39) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("self") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('feral_selonian', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/flail_boss.py b/scripts/mobiles/corellia/flail_boss.py new file mode 100644 index 00000000..a08e159b --- /dev/null +++ b/scripts/mobiles/corellia/flail_boss.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('flail_boss') + mobileTemplate.setLevel(32) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("flail") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_02.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('flail_boss', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/flail_butcher.py b/scripts/mobiles/corellia/flail_butcher.py new file mode 100644 index 00000000..127d98d5 --- /dev/null +++ b/scripts/mobiles/corellia/flail_butcher.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('flail_butcher') + mobileTemplate.setLevel(31) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("flail") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_02.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('flail_butcher', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/flail_cutthroat.py b/scripts/mobiles/corellia/flail_cutthroat.py new file mode 100644 index 00000000..721fd3a1 --- /dev/null +++ b/scripts/mobiles/corellia/flail_cutthroat.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('flail_cutthroat') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(7) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("flail") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_02.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_polearm_vibro_axe.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('flail_cutthroat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/flail_enforcer.py b/scripts/mobiles/corellia/flail_enforcer.py new file mode 100644 index 00000000..4e229bd2 --- /dev/null +++ b/scripts/mobiles/corellia/flail_enforcer.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('flail_enforcer') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("flail") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_02.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('flail_enforcer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/flail_executioner.py b/scripts/mobiles/corellia/flail_executioner.py new file mode 100644 index 00000000..251866ee --- /dev/null +++ b/scripts/mobiles/corellia/flail_executioner.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('flail_executioner') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("flail") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_02.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('flail_executioner', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/flail_killer.py b/scripts/mobiles/corellia/flail_killer.py new file mode 100644 index 00000000..e6c959a9 --- /dev/null +++ b/scripts/mobiles/corellia/flail_killer.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('flail_killer') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("flail") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_02.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('flail_killer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/flail_slayer.py b/scripts/mobiles/corellia/flail_slayer.py new file mode 100644 index 00000000..d5c322a6 --- /dev/null +++ b/scripts/mobiles/corellia/flail_slayer.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('flail_slayer') + mobileTemplate.setLevel(31) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("flail") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_02.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('flail_slayer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/forest_murra.py b/scripts/mobiles/corellia/forest_murra.py new file mode 100644 index 00000000..e2bb7af8 --- /dev/null +++ b/scripts/mobiles/corellia/forest_murra.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('forest_murra') + mobileTemplate.setLevel(31) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(75) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("murra") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_forest_murra.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('forest_murra', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/forest_slice_hound.py b/scripts/mobiles/corellia/forest_slice_hound.py new file mode 100644 index 00000000..9a0d01d0 --- /dev/null +++ b/scripts/mobiles/corellia/forest_slice_hound.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('forest_slice_hound') + mobileTemplate.setLevel(31) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("slice hound forest") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_corellian_slice_hound.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('forest_slice_hound', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/giant_carrion_spat.py b/scripts/mobiles/corellia/giant_carrion_spat.py new file mode 100644 index 00000000..6439aec0 --- /dev/null +++ b/scripts/mobiles/corellia/giant_carrion_spat.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_carrion_spat') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(300) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(295) + mobileTemplate.setSocialGroup("carrion spat") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_giant_carrion_spat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_carrion_spat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/giant_dalyrake.py b/scripts/mobiles/corellia/giant_dalyrake.py new file mode 100644 index 00000000..6efe0f4f --- /dev/null +++ b/scripts/mobiles/corellia/giant_dalyrake.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_dalyrake') + mobileTemplate.setLevel(37) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(60) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(90) + mobileTemplate.setSocialGroup("dalyrake") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_giant_dalyrake.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_dalyrake', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/giant_gubbur.py b/scripts/mobiles/corellia/giant_gubbur.py new file mode 100644 index 00000000..74c9e8c7 --- /dev/null +++ b/scripts/mobiles/corellia/giant_gubbur.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_gubbur') + mobileTemplate.setLevel(26) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Canivore Meat") + mobileTemplate.setMeatAmount(10) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(15) + mobileTemplate.setBoneType("Mammal Hide") + mobileTemplate.setBoneAmount(15) + mobileTemplate.setSocialGroup("gubbur") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_gubbur.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_gubbur', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/giant_horned_krevol.py b/scripts/mobiles/corellia/giant_horned_krevol.py new file mode 100644 index 00000000..4d0654af --- /dev/null +++ b/scripts/mobiles/corellia/giant_horned_krevol.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_horned_krevol') + mobileTemplate.setLevel(8) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(10) + mobileTemplate.setSocialGroup("horned krevol") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_giant_horned_krevol.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_horned_krevol', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/grand_wrix.py b/scripts/mobiles/corellia/grand_wrix.py new file mode 100644 index 00000000..be81d9df --- /dev/null +++ b/scripts/mobiles/corellia/grand_wrix.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('grand_wrix') + mobileTemplate.setLevel(37) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(70) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(40) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(35) + mobileTemplate.setSocialGroup("wrix") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_grand_wrix.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('grand_wrix', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/grassland_slice_hound.py b/scripts/mobiles/corellia/grassland_slice_hound.py new file mode 100644 index 00000000..c1b31c26 --- /dev/null +++ b/scripts/mobiles/corellia/grassland_slice_hound.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('grassland_slice_hound') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("slice hound grass") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_corellian_slice_hound.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gassland_slice_hound', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/gravefeather.py b/scripts/mobiles/corellia/gravefeather.py new file mode 100644 index 00000000..39848ccb --- /dev/null +++ b/scripts/mobiles/corellia/gravefeather.py @@ -0,0 +1,37 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corellia_carrion_spat_gravefeather') + mobileTemplate.setLevel(16) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("enraged carrion spat") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_carrion_spat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gravefeather', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/great_plains_stalker.py b/scripts/mobiles/corellia/great_plains_stalker.py new file mode 100644 index 00000000..63d4f5ab --- /dev/null +++ b/scripts/mobiles/corellia/great_plains_stalker.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('great_plains_stalker') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("razor cat") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_dire_cat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('great_plains_stalker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/greater_gulginaw.py b/scripts/mobiles/corellia/greater_gulginaw.py new file mode 100644 index 00000000..861b5fdf --- /dev/null +++ b/scripts/mobiles/corellia/greater_gulginaw.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('greater_gulginaw') + mobileTemplate.setLevel(37) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(97) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setBoneAmount(48) + mobileTemplate.setSocialGroup("gulginaw") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_greater_gulginaw.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('greater_gulginaw', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/greck_assassin.py b/scripts/mobiles/corellia/greck_assassin.py new file mode 100644 index 00000000..6dee3169 --- /dev/null +++ b/scripts/mobiles/corellia/greck_assassin.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('greck_assassin') + mobileTemplate.setLevel(31) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("olag greck") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_greck_thug_f_01.iff') + templates.add('object/mobile/shared_greck_thug_f_02.iff') + templates.add('object/mobile/shared_greck_thug_f_03.iff') + templates.add('object/mobile/shared_greck_thug_m_01.iff') + templates.add('object/mobile/shared_greck_thug_m_02.iff') + templates.add('object/mobile/shared_greck_thug_m_03.iff') + templates.add('object/mobile/shared_greck_thug_m_04.iff') + templates.add('object/mobile/shared_greck_thug_m_05.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('greck_assassin', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/greck_henchman.py b/scripts/mobiles/corellia/greck_henchman.py new file mode 100644 index 00000000..93e76c9c --- /dev/null +++ b/scripts/mobiles/corellia/greck_henchman.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('greck_henchman') + mobileTemplate.setLevel(23) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("olag greck") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_greck_thug_f_01.iff') + templates.add('object/mobile/shared_greck_thug_f_02.iff') + templates.add('object/mobile/shared_greck_thug_f_03.iff') + templates.add('object/mobile/shared_greck_thug_m_01.iff') + templates.add('object/mobile/shared_greck_thug_m_02.iff') + templates.add('object/mobile/shared_greck_thug_m_03.iff') + templates.add('object/mobile/shared_greck_thug_m_04.iff') + templates.add('object/mobile/shared_greck_thug_m_05.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('greck_henchman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/greck_mugger.py b/scripts/mobiles/corellia/greck_mugger.py new file mode 100644 index 00000000..f4d85a4a --- /dev/null +++ b/scripts/mobiles/corellia/greck_mugger.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('greck_mugger') + mobileTemplate.setLevel(31) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("olag greck") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_greck_thug_f_01.iff') + templates.add('object/mobile/shared_greck_thug_f_02.iff') + templates.add('object/mobile/shared_greck_thug_f_03.iff') + templates.add('object/mobile/shared_greck_thug_m_01.iff') + templates.add('object/mobile/shared_greck_thug_m_02.iff') + templates.add('object/mobile/shared_greck_thug_m_03.iff') + templates.add('object/mobile/shared_greck_thug_m_04.iff') + templates.add('object/mobile/shared_greck_thug_m_05.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('greck_mugger', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/greck_smuggler.py b/scripts/mobiles/corellia/greck_smuggler.py new file mode 100644 index 00000000..87cf3d5c --- /dev/null +++ b/scripts/mobiles/corellia/greck_smuggler.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('greck_smuggler') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("olag greck") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_greck_thug_f_01.iff') + templates.add('object/mobile/shared_greck_thug_f_02.iff') + templates.add('object/mobile/shared_greck_thug_f_03.iff') + templates.add('object/mobile/shared_greck_thug_m_01.iff') + templates.add('object/mobile/shared_greck_thug_m_02.iff') + templates.add('object/mobile/shared_greck_thug_m_03.iff') + templates.add('object/mobile/shared_greck_thug_m_04.iff') + templates.add('object/mobile/shared_greck_thug_m_05.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('greck_smuggler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/gronda.py b/scripts/mobiles/corellia/gronda.py new file mode 100644 index 00000000..0eba1f21 --- /dev/null +++ b/scripts/mobiles/corellia/gronda.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gronda') + mobileTemplate.setLevel(32) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(360) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(270) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(180) + mobileTemplate.setSocialGroup("gronda") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_gronda.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gronda', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/gronda_juggernaut.py b/scripts/mobiles/corellia/gronda_juggernaut.py new file mode 100644 index 00000000..5de0e0e2 --- /dev/null +++ b/scripts/mobiles/corellia/gronda_juggernaut.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gronda_juggernaut') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(500) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(400) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(375) + mobileTemplate.setSocialGroup("gronda") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_gronda.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gronda_juggernaut', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/gronda_patriarch.py b/scripts/mobiles/corellia/gronda_patriarch.py new file mode 100644 index 00000000..9a28a495 --- /dev/null +++ b/scripts/mobiles/corellia/gronda_patriarch.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gronda_patriarch') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(360) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(270) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(180) + mobileTemplate.setSocialGroup("gronda") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_gronda.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gronda_patriarch', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/gubbur.py b/scripts/mobiles/corellia/gubbur.py new file mode 100644 index 00000000..045a255b --- /dev/null +++ b/scripts/mobiles/corellia/gubbur.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gubbur') + mobileTemplate.setLevel(23) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Canivore Meat") + mobileTemplate.setMeatAmount(4) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(3) + mobileTemplate.setBoneType("Mammal Hide") + mobileTemplate.setBoneAmount(3) + mobileTemplate.setSocialGroup("gubbur") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_gubbur.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gubbur', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/gulginaw.py b/scripts/mobiles/corellia/gulginaw.py new file mode 100644 index 00000000..e1f5217a --- /dev/null +++ b/scripts/mobiles/corellia/gulginaw.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gulginaw') + mobileTemplate.setLevel(26) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(75) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setBoneAmount(25) + mobileTemplate.setSocialGroup("gulginaw") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_gulginaw.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gulginaw', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/gurrcat.py b/scripts/mobiles/corellia/gurrcat.py new file mode 100644 index 00000000..7c5fba02 --- /dev/null +++ b/scripts/mobiles/corellia/gurrcat.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gurrcat') + mobileTemplate.setLevel(29) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("dire cat") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_gurrcat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gurrcat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/hidden_daggers_activist.py b/scripts/mobiles/corellia/hidden_daggers_activist.py new file mode 100644 index 00000000..b4af47fb --- /dev/null +++ b/scripts/mobiles/corellia/hidden_daggers_activist.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('hidden_daggers_activist') + mobileTemplate.setLevel(32) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("hidden_daggers") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_hiddendaggers_pilot_f_01.iff') + templates.add('object/mobile/shared_dressed_hiddendaggers_pilot_m_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e5.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('hidden_daggers_activist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/hidden_daggers_dissident.py b/scripts/mobiles/corellia/hidden_daggers_dissident.py new file mode 100644 index 00000000..45a0074b --- /dev/null +++ b/scripts/mobiles/corellia/hidden_daggers_dissident.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('hidden_daggers_dissident') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("hidden_daggers") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_hiddendaggers_pilot_f_01.iff') + templates.add('object/mobile/shared_dressed_hiddendaggers_pilot_m_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e5.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('hidden_daggers_dissident', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/hidden_daggers_extremist.py b/scripts/mobiles/corellia/hidden_daggers_extremist.py new file mode 100644 index 00000000..0037ca1f --- /dev/null +++ b/scripts/mobiles/corellia/hidden_daggers_extremist.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('hidden_daggers_extremist') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("hidden_daggers") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_hiddendaggers_pilot_f_01.iff') + templates.add('object/mobile/shared_dressed_hiddendaggers_pilot_m_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e5.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('hidden_daggers_extremist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/hidden_daggers_leader.py b/scripts/mobiles/corellia/hidden_daggers_leader.py new file mode 100644 index 00000000..ed5ed1c5 --- /dev/null +++ b/scripts/mobiles/corellia/hidden_daggers_leader.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('hidden_daggers_leader') + mobileTemplate.setLevel(34) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("hidden_daggers") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_hiddendaggers_pilot_f_01.iff') + templates.add('object/mobile/shared_dressed_hiddendaggers_pilot_m_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e5.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('hidden_daggers_leader', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/hidden_daggers_lieutenant.py b/scripts/mobiles/corellia/hidden_daggers_lieutenant.py new file mode 100644 index 00000000..c59d3058 --- /dev/null +++ b/scripts/mobiles/corellia/hidden_daggers_lieutenant.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('hidden_daggers_lieutenant') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("hidden_daggers") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_hiddendaggers_pilot_f_01.iff') + templates.add('object/mobile/shared_dressed_hiddendaggers_pilot_m_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e5.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('hidden_daggers_lieutenant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/howling_plumed_rasp.py b/scripts/mobiles/corellia/howling_plumed_rasp.py new file mode 100644 index 00000000..07b5ce52 --- /dev/null +++ b/scripts/mobiles/corellia/howling_plumed_rasp.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('howling_plumed_rasp') + mobileTemplate.setLevel(23) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(3) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("rasp") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_plumed_rasp.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('howling_plumed_rasp', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/humbaba.py b/scripts/mobiles/corellia/humbaba.py new file mode 100644 index 00000000..9e94105e --- /dev/null +++ b/scripts/mobiles/corellia/humbaba.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('humbaba') + mobileTemplate.setLevel(32) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Domesticated Meat") + mobileTemplate.setMeatAmount(230) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(130) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(80) + mobileTemplate.setSocialGroup("humbaba") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_savage_humbaba.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('humbaba', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/krahbu.py b/scripts/mobiles/corellia/krahbu.py new file mode 100644 index 00000000..675c7252 --- /dev/null +++ b/scripts/mobiles/corellia/krahbu.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('krahbu') + mobileTemplate.setLevel(28) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(210) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(135) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(120) + mobileTemplate.setSocialGroup("krahbu") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_krahbu.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('krahbu', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/lord_nyax.py b/scripts/mobiles/corellia/lord_nyax.py new file mode 100644 index 00000000..8285c85c --- /dev/null +++ b/scripts/mobiles/corellia/lord_nyax.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('lord_nyax') + mobileTemplate.setLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("followers of lord nyax") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_lord_nyax.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_t21.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('lord_nyax', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/majestic_plumed_rasp.py b/scripts/mobiles/corellia/majestic_plumed_rasp.py new file mode 100644 index 00000000..d8fb1797 --- /dev/null +++ b/scripts/mobiles/corellia/majestic_plumed_rasp.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('majestic_plumed_rasp') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(4) + mobileTemplate.setSocialGroup("rasp") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_plumed_rasp.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('majestic_plumed_rasp', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/meatlump_buffoon.py b/scripts/mobiles/corellia/meatlump_buffoon.py new file mode 100644 index 00000000..92483e3a --- /dev/null +++ b/scripts/mobiles/corellia/meatlump_buffoon.py @@ -0,0 +1,58 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('meatlump_buffoon') + mobileTemplate.setLevel(31) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("meatlump") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_meatlump_female_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_05.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_06.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_07.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_05.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_06.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_07.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_08.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_09.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e5.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('meatlump_buffoon', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/meatlump_clod.py b/scripts/mobiles/corellia/meatlump_clod.py new file mode 100644 index 00000000..fb0e3b6e --- /dev/null +++ b/scripts/mobiles/corellia/meatlump_clod.py @@ -0,0 +1,58 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('meatlump_clod') + mobileTemplate.setLevel(28) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("meatlump") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_meatlump_female_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_05.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_06.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_07.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_05.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_06.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_07.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_08.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_09.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('meatlump_clod', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/meatlump_cretin.py b/scripts/mobiles/corellia/meatlump_cretin.py new file mode 100644 index 00000000..8e367887 --- /dev/null +++ b/scripts/mobiles/corellia/meatlump_cretin.py @@ -0,0 +1,58 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('meatlump_cretin') + mobileTemplate.setLevel(28) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("meatlump") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_meatlump_female_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_05.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_06.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_07.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_05.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_06.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_07.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_08.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_09.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('meatlump_cretin', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/meatlump_dunder.py b/scripts/mobiles/corellia/meatlump_dunder.py new file mode 100644 index 00000000..001b2b41 --- /dev/null +++ b/scripts/mobiles/corellia/meatlump_dunder.py @@ -0,0 +1,58 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('meatlump_dunder') + mobileTemplate.setLevel(12) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("meatlump") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_meatlump_female_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_05.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_06.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_07.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_05.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_06.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_07.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_08.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_09.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('meatlump_dunder', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/meatlump_fool.py b/scripts/mobiles/corellia/meatlump_fool.py new file mode 100644 index 00000000..3f478bd4 --- /dev/null +++ b/scripts/mobiles/corellia/meatlump_fool.py @@ -0,0 +1,58 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('meatlump_fool') + mobileTemplate.setLevel(26) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("meatlump") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_meatlump_female_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_05.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_06.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_07.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_05.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_06.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_07.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_08.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_09.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e5.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('meatlump_fool', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/meatlump_lieutenant.py b/scripts/mobiles/corellia/meatlump_lieutenant.py new file mode 100644 index 00000000..20b5cb34 --- /dev/null +++ b/scripts/mobiles/corellia/meatlump_lieutenant.py @@ -0,0 +1,47 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('meatlump_lieutenant') + mobileTemplate.setLevel(31) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("meatlump") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(256) + + templates = Vector() + templates.add('object/mobile/shared_dressed_meatlump_lieutenant_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_lieutenant_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_lieutenant_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_lieutenant_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_lieutenant_05.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('meatlump_lieutenant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/meatlump_loon.py b/scripts/mobiles/corellia/meatlump_loon.py new file mode 100644 index 00000000..4ee4af15 --- /dev/null +++ b/scripts/mobiles/corellia/meatlump_loon.py @@ -0,0 +1,58 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('meatlump_loon') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("meatlump") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_meatlump_female_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_05.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_06.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_07.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_05.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_06.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_07.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_08.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_09.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e5.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('meatlump_loon', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/meatlump_lunk.py b/scripts/mobiles/corellia/meatlump_lunk.py new file mode 100644 index 00000000..5b10c57c --- /dev/null +++ b/scripts/mobiles/corellia/meatlump_lunk.py @@ -0,0 +1,58 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corellia_meatlump_lunk') + mobileTemplate.setLevel(13) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("meatlump") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_meatlump_female_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_05.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_06.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_07.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_05.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_06.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_07.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_08.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_09.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('meatlump_lunk', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/meatlump_oaf.py b/scripts/mobiles/corellia/meatlump_oaf.py new file mode 100644 index 00000000..603d88c9 --- /dev/null +++ b/scripts/mobiles/corellia/meatlump_oaf.py @@ -0,0 +1,58 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('meatlump_oaf') + mobileTemplate.setLevel(29) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("meatlump") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_meatlump_female_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_05.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_06.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_07.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_05.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_06.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_07.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_08.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_09.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e5.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('meatlump_oaf', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/meatlump_stooge.py b/scripts/mobiles/corellia/meatlump_stooge.py new file mode 100644 index 00000000..71a470ea --- /dev/null +++ b/scripts/mobiles/corellia/meatlump_stooge.py @@ -0,0 +1,58 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('meatlump_stooge') + mobileTemplate.setLevel(27) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("meatlump") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_meatlump_female_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_05.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_06.iff') + templates.add('object/mobile/shared_dressed_meatlump_female_07.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_01.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_02.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_03.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_04.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_05.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_06.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_07.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_08.iff') + templates.add('object/mobile/shared_dressed_meatlump_male_09.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e5.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('meatlump_stooge', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/merkie_howzat.py b/scripts/mobiles/corellia/merkie_howzat.py new file mode 100644 index 00000000..c3f62778 --- /dev/null +++ b/scripts/mobiles/corellia/merkie_howzat.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corellia_meatlump_merkie_howzat') + mobileTemplate.setLevel(14) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("meatlump") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_meatlump_merkie_howzat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('merkie_howzat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/minor_gubbur.py b/scripts/mobiles/corellia/minor_gubbur.py new file mode 100644 index 00000000..c28ea4e9 --- /dev/null +++ b/scripts/mobiles/corellia/minor_gubbur.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('minor_gubbur') + mobileTemplate.setLevel(22) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Canivore Meat") + mobileTemplate.setMeatAmount(3) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(2) + mobileTemplate.setBoneType("Mammal Hide") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("gubbur") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_gubbur.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('minor_gubbur', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/mottled_wrix.py b/scripts/mobiles/corellia/mottled_wrix.py new file mode 100644 index 00000000..775ceaed --- /dev/null +++ b/scripts/mobiles/corellia/mottled_wrix.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mottled_wrix') + mobileTemplate.setLevel(35) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("wrix") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_grand_wrix.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mottled_wrix', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/mountain_murra.py b/scripts/mobiles/corellia/mountain_murra.py new file mode 100644 index 00000000..3018ee61 --- /dev/null +++ b/scripts/mobiles/corellia/mountain_murra.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mountain_murra') + mobileTemplate.setLevel(31) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(75) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(45) + mobileTemplate.setSocialGroup("murra") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_mountain_murra.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mountain_murra', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/murra.py b/scripts/mobiles/corellia/murra.py new file mode 100644 index 00000000..c10d0eeb --- /dev/null +++ b/scripts/mobiles/corellia/murra.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('murra') + mobileTemplate.setLevel(28) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(55) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(32) + mobileTemplate.setSocialGroup("murra") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_murra.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('murra', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/mutated_krevol_clicker.py b/scripts/mobiles/corellia/mutated_krevol_clicker.py new file mode 100644 index 00000000..6ed56840 --- /dev/null +++ b/scripts/mobiles/corellia/mutated_krevol_clicker.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mutated_krevol_clicker') + mobileTemplate.setLevel(8) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(10) + mobileTemplate.setSocialGroup("horned krevol") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_mutated_krevol_clicker.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mutated_krevol_clicker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/noxious_vrelt_scavenger.py b/scripts/mobiles/corellia/noxious_vrelt_scavenger.py new file mode 100644 index 00000000..74d40423 --- /dev/null +++ b/scripts/mobiles/corellia/noxious_vrelt_scavenger.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('noxious_vrelt_scavenger') + mobileTemplate.setLevel(27) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(10) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(10) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(10) + mobileTemplate.setSocialGroup("vrelt") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_noxious_vrelt_scavenger.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('noxious_vrelt_scavenger', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/paralope.py b/scripts/mobiles/corellia/paralope.py new file mode 100644 index 00000000..8cbea9ed --- /dev/null +++ b/scripts/mobiles/corellia/paralope.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('paralope') + mobileTemplate.setLevel(23) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(3) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("paralope") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_paralope.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('paralope', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/plumped_rasp.py b/scripts/mobiles/corellia/plumped_rasp.py new file mode 100644 index 00000000..9e96d328 --- /dev/null +++ b/scripts/mobiles/corellia/plumped_rasp.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('plumed_rasp') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(3) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("rasp") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_plumed_rasp.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('plumed_rasp', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/ragtag_blackjack.py b/scripts/mobiles/corellia/ragtag_blackjack.py new file mode 100644 index 00000000..dd36e536 --- /dev/null +++ b/scripts/mobiles/corellia/ragtag_blackjack.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corellia_ragtag_blackjack') + mobileTemplate.setLevel(13) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("ragtag gang") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_02.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('ragtag_blackjack', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/ragtag_kook.py b/scripts/mobiles/corellia/ragtag_kook.py new file mode 100644 index 00000000..c8c3f4d7 --- /dev/null +++ b/scripts/mobiles/corellia/ragtag_kook.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('ragtag_kook') + mobileTemplate.setLevel(11) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("ragtag gang") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_02.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('ragtag_kook', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/ragtag_loon.py b/scripts/mobiles/corellia/ragtag_loon.py new file mode 100644 index 00000000..ce506e7e --- /dev/null +++ b/scripts/mobiles/corellia/ragtag_loon.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('ragtag_loon') + mobileTemplate.setLevel(13) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("ragtag gang") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_02.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('ragtag_loon', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/ragtag_lunatic.py b/scripts/mobiles/corellia/ragtag_lunatic.py new file mode 100644 index 00000000..90b31e6e --- /dev/null +++ b/scripts/mobiles/corellia/ragtag_lunatic.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('ragtag_lunatic') + mobileTemplate.setLevel(14) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("ragtag gang") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_02.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('ragtag_lunatic', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/ragtag_maniac.py b/scripts/mobiles/corellia/ragtag_maniac.py new file mode 100644 index 00000000..c56397a5 --- /dev/null +++ b/scripts/mobiles/corellia/ragtag_maniac.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('ragtag_maniac') + mobileTemplate.setLevel(15) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("ragtag gang") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_02.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('ragtag_maniac', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/ragtag_sentry.py b/scripts/mobiles/corellia/ragtag_sentry.py new file mode 100644 index 00000000..50b78c27 --- /dev/null +++ b/scripts/mobiles/corellia/ragtag_sentry.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corellia_ragtag_sentry') + mobileTemplate.setLevel(14) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("ragtag gang") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_female_02.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_01.iff') + templates.add('object/mobile/shared_dressed_criminal_thug_human_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('ragtag_sentry', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/razor_cat.py b/scripts/mobiles/corellia/razor_cat.py new file mode 100644 index 00000000..1e4c8e44 --- /dev/null +++ b/scripts/mobiles/corellia/razor_cat.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('sand_panther') + mobileTemplate.setLevel(38) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("razor cat") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_corellian_sand_panther.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('female_razor_cat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/razor_cat_cub.py b/scripts/mobiles/corellia/razor_cat_cub.py new file mode 100644 index 00000000..1514498f --- /dev/null +++ b/scripts/mobiles/corellia/razor_cat_cub.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('sand_panther_cub') + mobileTemplate.setLevel(37) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(25) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(14) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("razor cat") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_corellian_sand_panther_cub.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('razor_cat_cub', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/razor_cat_eviscerator.py b/scripts/mobiles/corellia/razor_cat_eviscerator.py new file mode 100644 index 00000000..b0b1082c --- /dev/null +++ b/scripts/mobiles/corellia/razor_cat_eviscerator.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('razor_cat_eviscerator') + mobileTemplate.setLevel(23) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("razor cat") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_corellian_sand_panther_cub.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('razor_cat_eviscerator', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/rogue_bageraset.py b/scripts/mobiles/corellia/rogue_bageraset.py new file mode 100644 index 00000000..bb61a0d1 --- /dev/null +++ b/scripts/mobiles/corellia/rogue_bageraset.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rogue_bageraset') + mobileTemplate.setLevel(27) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(230) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(130) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(80) + mobileTemplate.setSocialGroup("bageraset") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bageraset.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('rogue_bageraset', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/rogue_corsec_trooper18.py b/scripts/mobiles/corellia/rogue_corsec_trooper18.py new file mode 100644 index 00000000..74a3fbfd --- /dev/null +++ b/scripts/mobiles/corellia/rogue_corsec_trooper18.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corellia_corsec_rogue') + mobileTemplate.setLevel(18) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("corsec") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('rogue_corsec_trooper18', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/rogue_corsec_trooper33.py b/scripts/mobiles/corellia/rogue_corsec_trooper33.py new file mode 100644 index 00000000..9ed8eaaf --- /dev/null +++ b/scripts/mobiles/corellia/rogue_corsec_trooper33.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corellia_corsec_rogue') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("corsec") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corsec_captain_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_01.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_02.iff') + templates.add('object/mobile/shared_dressed_corsec_captain_human_male_03.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_female_01.iff') + templates.add('object/mobile/shared_dressed_corsec_officer_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('rogue_corsec_trooper33', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/rotting_decy_mite_guard.py b/scripts/mobiles/corellia/rotting_decy_mite_guard.py new file mode 100644 index 00000000..37c77027 --- /dev/null +++ b/scripts/mobiles/corellia/rotting_decy_mite_guard.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rotting_pustule_guard') + mobileTemplate.setLevel(13) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(9) + mobileTemplate.setSocialGroup("decay mite") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_rot_mite.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('dung_mite_worker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/savage_humbaba.py b/scripts/mobiles/corellia/savage_humbaba.py new file mode 100644 index 00000000..8f78c745 --- /dev/null +++ b/scripts/mobiles/corellia/savage_humbaba.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('savage_humbaba') + mobileTemplate.setLevel(39) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Domesticated Meat") + mobileTemplate.setMeatAmount(265) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(168) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(118) + mobileTemplate.setSocialGroup("humbaba") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_savage_humbaba.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('savage_humbaba', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/scavenger_rat.py b/scripts/mobiles/corellia/scavenger_rat.py new file mode 100644 index 00000000..2c3fd051 --- /dev/null +++ b/scripts/mobiles/corellia/scavenger_rat.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('scavenger_rat') + mobileTemplate.setLevel(26) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(4) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(3) + mobileTemplate.setBoneType("Mammal Hide") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("scavenger rat") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_womp_rat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('minor_gubbur', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/selonian_assassin.py b/scripts/mobiles/corellia/selonian_assassin.py new file mode 100644 index 00000000..9953125e --- /dev/null +++ b/scripts/mobiles/corellia/selonian_assassin.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('selonian_assassin') + mobileTemplate.setLevel(39) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("selonian") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('selonian_assassin', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/selonian_captain.py b/scripts/mobiles/corellia/selonian_captain.py new file mode 100644 index 00000000..a915606f --- /dev/null +++ b/scripts/mobiles/corellia/selonian_captain.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('selonian_captain') + mobileTemplate.setLevel(39) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("selonian") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('selonian_captain', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/selonian_champion.py b/scripts/mobiles/corellia/selonian_champion.py new file mode 100644 index 00000000..ef0cc55b --- /dev/null +++ b/scripts/mobiles/corellia/selonian_champion.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('selonian_champion') + mobileTemplate.setLevel(39) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("selonian") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('selonian_champion', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/selonian_healer.py b/scripts/mobiles/corellia/selonian_healer.py new file mode 100644 index 00000000..473039a3 --- /dev/null +++ b/scripts/mobiles/corellia/selonian_healer.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('selonian_healer') + mobileTemplate.setLevel(38) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("selonian") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('selonian_healer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/selonian_hunter.py b/scripts/mobiles/corellia/selonian_hunter.py new file mode 100644 index 00000000..0bb3ba2d --- /dev/null +++ b/scripts/mobiles/corellia/selonian_hunter.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('selonian_hunter') + mobileTemplate.setLevel(37) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("selonian") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('selonian_hunter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/selonian_raider.py b/scripts/mobiles/corellia/selonian_raider.py new file mode 100644 index 00000000..21e93853 --- /dev/null +++ b/scripts/mobiles/corellia/selonian_raider.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('selonian_raider') + mobileTemplate.setLevel(39) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("selonian") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('selonian_raider', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/selonian_scout.py b/scripts/mobiles/corellia/selonian_scout.py new file mode 100644 index 00000000..0b5e1a65 --- /dev/null +++ b/scripts/mobiles/corellia/selonian_scout.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('selonian_scout') + mobileTemplate.setLevel(37) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("selonian") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('selonian_scout', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/selonian_sentinel.py b/scripts/mobiles/corellia/selonian_sentinel.py new file mode 100644 index 00000000..982d63aa --- /dev/null +++ b/scripts/mobiles/corellia/selonian_sentinel.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('selonian_sentinel') + mobileTemplate.setLevel(38) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("selonian") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('selonian_sentinel', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/selonian_separatist.py b/scripts/mobiles/corellia/selonian_separatist.py new file mode 100644 index 00000000..b15a1709 --- /dev/null +++ b/scripts/mobiles/corellia/selonian_separatist.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('selonian_separatist') + mobileTemplate.setLevel(37) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("selonian") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('selonian_separatist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/selonian_separatist_captain.py b/scripts/mobiles/corellia/selonian_separatist_captain.py new file mode 100644 index 00000000..08ce9266 --- /dev/null +++ b/scripts/mobiles/corellia/selonian_separatist_captain.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('selonian_separatist_captain') + mobileTemplate.setLevel(39) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("selonian") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('selonian_separatist_captain', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/selonian_separatist_general.py b/scripts/mobiles/corellia/selonian_separatist_general.py new file mode 100644 index 00000000..a3a1e7d1 --- /dev/null +++ b/scripts/mobiles/corellia/selonian_separatist_general.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('selonian_separatist_general') + mobileTemplate.setLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("selonian") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('selonian_separatist_general', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/selonian_separatist_recruit.py b/scripts/mobiles/corellia/selonian_separatist_recruit.py new file mode 100644 index 00000000..0238328d --- /dev/null +++ b/scripts/mobiles/corellia/selonian_separatist_recruit.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('selonian_separatist_recruit') + mobileTemplate.setLevel(36) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("selonian") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('selonian_separatist_recruit', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/selonian_separatist_soldier.py b/scripts/mobiles/corellia/selonian_separatist_soldier.py new file mode 100644 index 00000000..26b3f080 --- /dev/null +++ b/scripts/mobiles/corellia/selonian_separatist_soldier.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('selonian_separatist_soldier') + mobileTemplate.setLevel(38) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("selonian") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('selonian_separatist_soldier', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/selonian_thief.py b/scripts/mobiles/corellia/selonian_thief.py new file mode 100644 index 00000000..6febb1cf --- /dev/null +++ b/scripts/mobiles/corellia/selonian_thief.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('selonian_thief') + mobileTemplate.setLevel(38) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("selonian") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('selonian_thief', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/selonian_warlord.py b/scripts/mobiles/corellia/selonian_warlord.py new file mode 100644 index 00000000..2efdea82 --- /dev/null +++ b/scripts/mobiles/corellia/selonian_warlord.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('selonian_warlord') + mobileTemplate.setLevel(39) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("selonian") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('selonian_warlord', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/selonian_warrior.py b/scripts/mobiles/corellia/selonian_warrior.py new file mode 100644 index 00000000..b9d0f5ed --- /dev/null +++ b/scripts/mobiles/corellia/selonian_warrior.py @@ -0,0 +1,66 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('selonian_warrior') + mobileTemplate.setLevel(38) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("selonian") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_selonian_m_01.iff') + templates.add('object/mobile/shared_dressed_selonian_m_02.iff') + templates.add('object/mobile/shared_dressed_selonian_m_03.iff') + templates.add('object/mobile/shared_dressed_selonian_m_04.iff') + templates.add('object/mobile/shared_dressed_selonian_m_05.iff') + templates.add('object/mobile/shared_dressed_selonian_m_06.iff') + templates.add('object/mobile/shared_dressed_selonian_m_07.iff') + templates.add('object/mobile/shared_dressed_selonian_m_08.iff') + templates.add('object/mobile/shared_dressed_selonian_m_09.iff') + templates.add('object/mobile/shared_dressed_selonian_m_10.iff') + templates.add('object/mobile/shared_dressed_selonian_m_11.iff') + templates.add('object/mobile/shared_dressed_selonian_m_12.iff') + templates.add('object/mobile/shared_dressed_selonian_f_01.iff') + templates.add('object/mobile/shared_dressed_selonian_f_02.iff') + templates.add('object/mobile/shared_dressed_selonian_f_03.iff') + templates.add('object/mobile/shared_dressed_selonian_f_04.iff') + templates.add('object/mobile/shared_dressed_selonian_f_05.iff') + templates.add('object/mobile/shared_dressed_selonian_f_06.iff') + templates.add('object/mobile/shared_dressed_selonian_f_07.iff') + templates.add('object/mobile/shared_dressed_selonian_f_08.iff') + templates.add('object/mobile/shared_dressed_selonian_f_09.iff') + templates.add('object/mobile/shared_dressed_selonian_f_10.iff') + templates.add('object/mobile/shared_dressed_selonian_f_11.iff') + templates.add('object/mobile/shared_dressed_selonian_f_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('selonian_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/sharnaff.py b/scripts/mobiles/corellia/sharnaff.py new file mode 100644 index 00000000..ca2f3b30 --- /dev/null +++ b/scripts/mobiles/corellia/sharnaff.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('sharnaff') + mobileTemplate.setLevel(35) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(450) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(300) + mobileTemplate.setBoneType("Mammal Hide") + mobileTemplate.setBoneAmount(180) + mobileTemplate.setSocialGroup("sharnaff") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_sharnaff.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('sharnaff', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/sharnaff_bull.py b/scripts/mobiles/corellia/sharnaff_bull.py new file mode 100644 index 00000000..48e5a1fb --- /dev/null +++ b/scripts/mobiles/corellia/sharnaff_bull.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('sharnaff_bull') + mobileTemplate.setLevel(36) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(482) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(335) + mobileTemplate.setBoneType("Mammal Hide") + mobileTemplate.setBoneAmount(200) + mobileTemplate.setSocialGroup("sharnaff") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_sharnaff_bull.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('sharnaff_bull', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/sharnaff_reckless_ravager.py b/scripts/mobiles/corellia/sharnaff_reckless_ravager.py new file mode 100644 index 00000000..024e5adc --- /dev/null +++ b/scripts/mobiles/corellia/sharnaff_reckless_ravager.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('sharnaff_reckless_ravager') + mobileTemplate.setLevel(35) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(450) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(300) + mobileTemplate.setBoneType("Mammal Hide") + mobileTemplate.setBoneAmount(180) + mobileTemplate.setSocialGroup("sharnaff") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_sharnaff.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('sharnaff_reckless', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/slice_hound.py b/scripts/mobiles/corellia/slice_hound.py new file mode 100644 index 00000000..b3a6a914 --- /dev/null +++ b/scripts/mobiles/corellia/slice_hound.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('slice_hound') + mobileTemplate.setLevel(28) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("slice hound") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_corellian_slice_hound.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('slice_hound', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/swamp_gurrcat.py b/scripts/mobiles/corellia/swamp_gurrcat.py new file mode 100644 index 00000000..a5be16fa --- /dev/null +++ b/scripts/mobiles/corellia/swamp_gurrcat.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('swamp_gurrcat') + mobileTemplate.setLevel(26) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("swamp gurrcat") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_gurrcat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('swamp_gurrcat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/swamp_humbaba.py b/scripts/mobiles/corellia/swamp_humbaba.py new file mode 100644 index 00000000..20ac57d0 --- /dev/null +++ b/scripts/mobiles/corellia/swamp_humbaba.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('swamp_humbaba') + mobileTemplate.setLevel(35) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Domesticated Meat") + mobileTemplate.setMeatAmount(250) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(150) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(105) + mobileTemplate.setSocialGroup("humbaba") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_savage_humbaba.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('swamp_humbaba', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/tabage.py b/scripts/mobiles/corellia/tabage.py new file mode 100644 index 00000000..8694c35e --- /dev/null +++ b/scripts/mobiles/corellia/tabage.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tabage') + mobileTemplate.setLevel(26) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(18) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(24) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(7) + mobileTemplate.setSocialGroup("tabage") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_tabage.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('tabage', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/tabage_protector.py b/scripts/mobiles/corellia/tabage_protector.py new file mode 100644 index 00000000..5a8a7f98 --- /dev/null +++ b/scripts/mobiles/corellia/tabage_protector.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tabage_protector') + mobileTemplate.setLevel(12) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(14) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(14) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(14) + mobileTemplate.setSocialGroup("tabage") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_tabage.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('tabage_protector', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/tabage_scavenger.py b/scripts/mobiles/corellia/tabage_scavenger.py new file mode 100644 index 00000000..2ac20717 --- /dev/null +++ b/scripts/mobiles/corellia/tabage_scavenger.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tabage_scavenger') + mobileTemplate.setLevel(12) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(13) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(13) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(13) + mobileTemplate.setSocialGroup("tabage") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_tabage.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('tabage_scavenger', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/tomi_jinsin.py b/scripts/mobiles/corellia/tomi_jinsin.py new file mode 100644 index 00000000..756d0bee --- /dev/null +++ b/scripts/mobiles/corellia/tomi_jinsin.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('corellia_ragtag_tomi_jinsin') + mobileTemplate.setLevel(15) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("ragtag gang") + mobileTemplate.setAssistRange(4) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_corellia_tomi_jinsin.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_cdef.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('tomi_jinsin', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/vehement_durni.py b/scripts/mobiles/corellia/vehement_durni.py new file mode 100644 index 00000000..bb46c2c4 --- /dev/null +++ b/scripts/mobiles/corellia/vehement_durni.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('durni_vehement_warrior') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(3) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("durni") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_durni.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vehement_durni', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/vicious_slice_hound.py b/scripts/mobiles/corellia/vicious_slice_hound.py new file mode 100644 index 00000000..953a6e98 --- /dev/null +++ b/scripts/mobiles/corellia/vicious_slice_hound.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('slice_hound_vicious') + mobileTemplate.setLevel(7) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("slice hound") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_corellian_slice_hound.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vicious_slice_hound', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/violent_krahbu.py b/scripts/mobiles/corellia/violent_krahbu.py new file mode 100644 index 00000000..14dae062 --- /dev/null +++ b/scripts/mobiles/corellia/violent_krahbu.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('violent_krahbu') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(225) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(135) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(135) + mobileTemplate.setSocialGroup("violent krahbu") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_violent_krahbu.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('violent_krahbu', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/vrelt.py b/scripts/mobiles/corellia/vrelt.py new file mode 100644 index 00000000..5606c4ae --- /dev/null +++ b/scripts/mobiles/corellia/vrelt.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('vrelt') + mobileTemplate.setLevel(23) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(4) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(3) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("vrelt") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_vrelt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vrelt', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/vrelt_mother.py b/scripts/mobiles/corellia/vrelt_mother.py new file mode 100644 index 00000000..f4ae34c7 --- /dev/null +++ b/scripts/mobiles/corellia/vrelt_mother.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('startled_vrelt_mother') + mobileTemplate.setLevel(6) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(13) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(13) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(13) + mobileTemplate.setSocialGroup("vrelt") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_vrelt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vrelt_mother', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/vynock.py b/scripts/mobiles/corellia/vynock.py new file mode 100644 index 00000000..7024de6a --- /dev/null +++ b/scripts/mobiles/corellia/vynock.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('vynock') + mobileTemplate.setLevel(28) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(50) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(70) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(20) + mobileTemplate.setSocialGroup("vynock") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_vynock.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vynock', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/war_gronda.py b/scripts/mobiles/corellia/war_gronda.py new file mode 100644 index 00000000..4f779a05 --- /dev/null +++ b/scripts/mobiles/corellia/war_gronda.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('war_gronda') + mobileTemplate.setLevel(32) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(390) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(300) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(240) + mobileTemplate.setSocialGroup("gronda") + mobileTemplate.setAssistRange(10) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_war_gronda.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('war_gronda', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/wooded_paralope.py b/scripts/mobiles/corellia/wooded_paralope.py new file mode 100644 index 00000000..9bb8e3ad --- /dev/null +++ b/scripts/mobiles/corellia/wooded_paralope.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('wooded_paralope') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(3) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("paralope") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_paralope.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('wooded_paralope', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/corellia/wrix.py b/scripts/mobiles/corellia/wrix.py new file mode 100644 index 00000000..d160d3f6 --- /dev/null +++ b/scripts/mobiles/corellia/wrix.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('wrix') + mobileTemplate.setLevel(27) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(60) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(30) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(25) + mobileTemplate.setSocialGroup("wrix") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_grand_wrix.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('wrix', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/abandoned_rebel_private.py b/scripts/mobiles/dantooine/abandoned_rebel_private.py new file mode 100644 index 00000000..31149e62 --- /dev/null +++ b/scripts/mobiles/dantooine/abandoned_rebel_private.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('abandoned_rebel_private') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('rebel') + mobileTemplate.setAssistRange(1) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_dark_jedi_male_human_01.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_dh17.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_rebel.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('abandoned_rebel_private', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/ancient_graul.py b/scripts/mobiles/dantooine/ancient_graul.py new file mode 100644 index 00000000..ad67d937 --- /dev/null +++ b/scripts/mobiles/dantooine/ancient_graul.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('ancient_graul') + mobileTemplate.setLevel(74) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(950) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(875) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(775) + mobileTemplate.setSocialGroup("graul") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_slinking_voritor_hunter.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('ancient_graul', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/bile_drenched_quenker.py b/scripts/mobiles/dantooine/bile_drenched_quenker.py new file mode 100644 index 00000000..573db740 --- /dev/null +++ b/scripts/mobiles/dantooine/bile_drenched_quenker.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('bile_drenched_quenker') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(0) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setBoneAmount(0) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(0) + mobileTemplate.setSocialGroup("quenker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_quenker_relic_reaper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bile_drenched_quenker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/bol.py b/scripts/mobiles/dantooine/bol.py new file mode 100644 index 00000000..43a654b0 --- /dev/null +++ b/scripts/mobiles/dantooine/bol.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('bol') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(0) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(300) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(180) + mobileTemplate.setSocialGroup("bol") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bol_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bol', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/bol_pack_runner.py b/scripts/mobiles/dantooine/bol_pack_runner.py new file mode 100644 index 00000000..bb131bb1 --- /dev/null +++ b/scripts/mobiles/dantooine/bol_pack_runner.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('bol_pack_runner') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(0) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(300) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(180) + mobileTemplate.setSocialGroup("bol") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bol_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bol_pack_runner', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/dantari_chief.py b/scripts/mobiles/dantooine/dantari_chief.py new file mode 100644 index 00000000..d8625846 --- /dev/null +++ b/scripts/mobiles/dantooine/dantari_chief.py @@ -0,0 +1,37 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dantari_chief') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('dantari raiders') + mobileTemplate.setAssistRange(1) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('dantari_chief', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/dantari_raider.py b/scripts/mobiles/dantooine/dantari_raider.py new file mode 100644 index 00000000..9a4b6be3 --- /dev/null +++ b/scripts/mobiles/dantooine/dantari_raider.py @@ -0,0 +1,37 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dantari_raider') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('dantari raiders') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('dantari_raider', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/dantari_strategist.py b/scripts/mobiles/dantooine/dantari_strategist.py new file mode 100644 index 00000000..cd3e4afd --- /dev/null +++ b/scripts/mobiles/dantooine/dantari_strategist.py @@ -0,0 +1,37 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dantari_strategist') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('dantari raiders') + mobileTemplate.setAssistRange(1) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('dantari_strategist', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/dark_adept.py b/scripts/mobiles/dantooine/dark_adept.py index fd56213d..7598e097 100644 --- a/scripts/mobiles/dantooine/dark_adept.py +++ b/scripts/mobiles/dantooine/dark_adept.py @@ -19,6 +19,8 @@ def addTemplate(core): mobileTemplate.setDeathblow(True) mobileTemplate.setSocialGroup('dark jedi') mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) templates = Vector() diff --git a/scripts/mobiles/dantooine/dark_force_crystal_hunter.py b/scripts/mobiles/dantooine/dark_force_crystal_hunter.py index 09b3c0f3..60cbdde3 100644 --- a/scripts/mobiles/dantooine/dark_force_crystal_hunter.py +++ b/scripts/mobiles/dantooine/dark_force_crystal_hunter.py @@ -7,7 +7,6 @@ def addTemplate(core): mobileTemplate = MobileTemplate() mobileTemplate.setCreatureName('dark_force_crystal_hunter') - mobileTemplate.setLevel(90) mobileTemplate.setMinLevel(60) mobileTemplate.setMaxLevel(69) mobileTemplate.setDifficulty(0) @@ -19,6 +18,7 @@ def addTemplate(core): mobileTemplate.setDeathblow(True) mobileTemplate.setSocialGroup('remnants of kun') mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) templates = Vector() templates.add('object/mobile/shared_dressed_dark_force_crystal_hunter.iff') diff --git a/scripts/mobiles/dantooine/dark_jedi_knight.py b/scripts/mobiles/dantooine/dark_jedi_knight.py index bcd26a26..b083645b 100644 --- a/scripts/mobiles/dantooine/dark_jedi_knight.py +++ b/scripts/mobiles/dantooine/dark_jedi_knight.py @@ -19,6 +19,8 @@ def addTemplate(core): mobileTemplate.setDeathblow(True) mobileTemplate.setSocialGroup('dark jedi') mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) templates = Vector() templates.add('object/mobile/shared_dressed_dark_jedi_male_human_01.iff') diff --git a/scripts/mobiles/dantooine/dark_jedi_master.py b/scripts/mobiles/dantooine/dark_jedi_master.py index 8596f272..29ca5598 100644 --- a/scripts/mobiles/dantooine/dark_jedi_master.py +++ b/scripts/mobiles/dantooine/dark_jedi_master.py @@ -17,6 +17,8 @@ def addTemplate(core): mobileTemplate.setDeathblow(True) mobileTemplate.setSocialGroup('dark jedi') mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) templates = Vector() templates.add('object/mobile/shared_dressed_dark_jedi_master_female_twk_01.iff') diff --git a/scripts/mobiles/dantooine/dark_side_savage.py b/scripts/mobiles/dantooine/dark_side_savage.py index 9f8138f1..d7ffc78b 100644 --- a/scripts/mobiles/dantooine/dark_side_savage.py +++ b/scripts/mobiles/dantooine/dark_side_savage.py @@ -16,6 +16,7 @@ def addTemplate(core): mobileTemplate.setMaxSpawnDistance(4) mobileTemplate.setDeathblow(False) mobileTemplate.setSocialGroup('remnants of kun') + mobileTemplate.setRespawnTime(300) templates = Vector() templates.add('object/mobile/shared_dressed_dark_side_savage.iff') diff --git a/scripts/mobiles/dantooine/fierce_piket_protector.py b/scripts/mobiles/dantooine/fierce_piket_protector.py new file mode 100644 index 00000000..28bd6d9b --- /dev/null +++ b/scripts/mobiles/dantooine/fierce_piket_protector.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('fierce_piket_protector') + mobileTemplate.setLevel(68) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(0) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(0) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(0) + mobileTemplate.setSocialGroup("piket") + mobileTemplate.setAssistRange(1) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_piket_longhorn.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('fierce_piket_protector', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/force_sensitive_crypt_crawler.py b/scripts/mobiles/dantooine/force_sensitive_crypt_crawler.py index bbbf90f5..2431c898 100644 --- a/scripts/mobiles/dantooine/force_sensitive_crypt_crawler.py +++ b/scripts/mobiles/dantooine/force_sensitive_crypt_crawler.py @@ -7,7 +7,6 @@ def addTemplate(core): mobileTemplate = MobileTemplate() mobileTemplate.setCreatureName('eow_force_sensitive_crypt_crawler') - mobileTemplate.setLevel(90) mobileTemplate.setMinLevel(60) mobileTemplate.setMaxLevel(70) mobileTemplate.setDifficulty(0) @@ -18,6 +17,7 @@ def addTemplate(core): mobileTemplate.setMaxSpawnDistance(5) mobileTemplate.setDeathblow(False) mobileTemplate.setSocialGroup('remnants of kun') + mobileTemplate.setRespawnTime(300) templates = Vector() templates.add('object/mobile/shared_dressed_force_sensitive_crypt_crawler.iff') diff --git a/scripts/mobiles/dantooine/force_sensitive_renegade.py b/scripts/mobiles/dantooine/force_sensitive_renegade.py index 1efb1591..8005b9d9 100644 --- a/scripts/mobiles/dantooine/force_sensitive_renegade.py +++ b/scripts/mobiles/dantooine/force_sensitive_renegade.py @@ -7,7 +7,6 @@ def addTemplate(core): mobileTemplate = MobileTemplate() mobileTemplate.setCreatureName('force_sensitive_renegade') - mobileTemplate.setLevel(90) mobileTemplate.setMinLevel(61) mobileTemplate.setMaxLevel(69) mobileTemplate.setDifficulty(0) @@ -18,6 +17,7 @@ def addTemplate(core): mobileTemplate.setMaxSpawnDistance(7) mobileTemplate.setDeathblow(False) mobileTemplate.setSocialGroup('force renegade') + mobileTemplate.setRespawnTime(300) templates = Vector() diff --git a/scripts/mobiles/dantooine/forsaken_force_drifter.py b/scripts/mobiles/dantooine/forsaken_force_drifter.py index 3cb43224..46021c2c 100644 --- a/scripts/mobiles/dantooine/forsaken_force_drifter.py +++ b/scripts/mobiles/dantooine/forsaken_force_drifter.py @@ -16,6 +16,7 @@ def addTemplate(core): mobileTemplate.setMaxSpawnDistance(6) mobileTemplate.setDeathblow(False) mobileTemplate.setSocialGroup('force renegade') + mobileTemplate.setRespawnTime(300) templates = Vector() templates.add('object/mobile/shared_dressed_forsaken_force_drifter.iff') diff --git a/scripts/mobiles/dantooine/frenzied_graul.py b/scripts/mobiles/dantooine/frenzied_graul.py new file mode 100644 index 00000000..6136f813 --- /dev/null +++ b/scripts/mobiles/dantooine/frenzied_graul.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('frenzied_graul') + mobileTemplate.setLevel(72) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(1025) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(950) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(855) + mobileTemplate.setSocialGroup("graul") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_slinking_voritor_hunter.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('frenzied_graul', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/grassland_voritor_tracker.py b/scripts/mobiles/dantooine/grassland_voritor_tracker.py new file mode 100644 index 00000000..ead1fdf3 --- /dev/null +++ b/scripts/mobiles/dantooine/grassland_voritor_tracker.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('grassland_voritor_tracker') + mobileTemplate.setLevel(69) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(45) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(35) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(40) + mobileTemplate.setSocialGroup("voritor lizard") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_grassland_voritor_tracker.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('grassland_voritor_tracker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/graul.py b/scripts/mobiles/dantooine/graul.py new file mode 100644 index 00000000..6376c849 --- /dev/null +++ b/scripts/mobiles/dantooine/graul.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('graul') + mobileTemplate.setLevel(73) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(950) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(875) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(775) + mobileTemplate.setSocialGroup("graul") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_graul.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('graul', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/graul_mangler.py b/scripts/mobiles/dantooine/graul_mangler.py new file mode 100644 index 00000000..03cb6e5f --- /dev/null +++ b/scripts/mobiles/dantooine/graul_mangler.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('graul_mangler') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(950) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(875) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(775) + mobileTemplate.setSocialGroup("graul") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_graul.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('graul_mangler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/graul_marauder.py b/scripts/mobiles/dantooine/graul_marauder.py new file mode 100644 index 00000000..a3abb435 --- /dev/null +++ b/scripts/mobiles/dantooine/graul_marauder.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('graul_marauder') + mobileTemplate.setLevel(73) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(950) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(875) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(775) + mobileTemplate.setSocialGroup("graul") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_graul.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('graul_marauder', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/graul_mauler.py b/scripts/mobiles/dantooine/graul_mauler.py new file mode 100644 index 00000000..a7a221bf --- /dev/null +++ b/scripts/mobiles/dantooine/graul_mauler.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('graul_mauler') + mobileTemplate.setLevel(75) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(950) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(875) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(775) + mobileTemplate.setSocialGroup("graul") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_graul.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('graul_mauler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/horned_voritor_jungle_lizard.py b/scripts/mobiles/dantooine/horned_voritor_jungle_lizard.py new file mode 100644 index 00000000..1c54312e --- /dev/null +++ b/scripts/mobiles/dantooine/horned_voritor_jungle_lizard.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('horned_voritor_jungle_lizard') + mobileTemplate.setLevel(73) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(40) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(50) + mobileTemplate.setSocialGroup("voritor lizard") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_voritor_lizard.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('horned_voritor_jungle_lizard', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/hostile_thune_mother.py b/scripts/mobiles/dantooine/hostile_thune_mother.py new file mode 100644 index 00000000..91953e60 --- /dev/null +++ b/scripts/mobiles/dantooine/hostile_thune_mother.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('hostile_thune_mother') + mobileTemplate.setLevel(69) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(135) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setBoneAmount(150) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(0) + mobileTemplate.setSocialGroup("thune") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_thune.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('hostile_thune_mother', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/huurton.py b/scripts/mobiles/dantooine/huurton.py new file mode 100644 index 00000000..ffecdd01 --- /dev/null +++ b/scripts/mobiles/dantooine/huurton.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('huurton') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(15) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(10) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(15) + mobileTemplate.setSocialGroup("huurton") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_huurton.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('huurton', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/huurton_bloodhunter.py b/scripts/mobiles/dantooine/huurton_bloodhunter.py new file mode 100644 index 00000000..b475e391 --- /dev/null +++ b/scripts/mobiles/dantooine/huurton_bloodhunter.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('huurton_bloodhunter') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(15) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(10) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(15) + mobileTemplate.setSocialGroup("huurton") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_huurton.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('huurton_bloodhunter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/huurton_howler.py b/scripts/mobiles/dantooine/huurton_howler.py new file mode 100644 index 00000000..298d084c --- /dev/null +++ b/scripts/mobiles/dantooine/huurton_howler.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('huurton_howler') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(15) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(10) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(15) + mobileTemplate.setSocialGroup("huurton") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_huurton.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('huurton_howler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/huurton_huntress.py b/scripts/mobiles/dantooine/huurton_huntress.py new file mode 100644 index 00000000..9e100764 --- /dev/null +++ b/scripts/mobiles/dantooine/huurton_huntress.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('huurton_huntress') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(15) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(10) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(15) + mobileTemplate.setSocialGroup("huurton") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + + templates = Vector() + templates.add('object/mobile/shared_huurton.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('huurton_huntress', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/huurton_matron.py b/scripts/mobiles/dantooine/huurton_matron.py new file mode 100644 index 00000000..7a4e8537 --- /dev/null +++ b/scripts/mobiles/dantooine/huurton_matron.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('huurton_matron') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(15) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(10) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(15) + mobileTemplate.setSocialGroup("huurton") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_huurton.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('huurton_matron', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/huurton_pub.py b/scripts/mobiles/dantooine/huurton_pub.py new file mode 100644 index 00000000..d1d57c75 --- /dev/null +++ b/scripts/mobiles/dantooine/huurton_pub.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('huurton_pub') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(10) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(5) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(5) + mobileTemplate.setSocialGroup("huurton") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_huurton_pup.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('huurton_pub', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/huurton_reaper.py b/scripts/mobiles/dantooine/huurton_reaper.py new file mode 100644 index 00000000..244538f7 --- /dev/null +++ b/scripts/mobiles/dantooine/huurton_reaper.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('huurton_reaper') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(25) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(10) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(25) + mobileTemplate.setSocialGroup("huurton") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_huurton.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('huurton_reaper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/huurton_stalker.py b/scripts/mobiles/dantooine/huurton_stalker.py new file mode 100644 index 00000000..381d1716 --- /dev/null +++ b/scripts/mobiles/dantooine/huurton_stalker.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('huurton_stalker') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(15) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(10) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(15) + mobileTemplate.setSocialGroup("huurton") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_huurton.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('huurton_stalker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/infant_graul.py b/scripts/mobiles/dantooine/infant_graul.py new file mode 100644 index 00000000..c38fc121 --- /dev/null +++ b/scripts/mobiles/dantooine/infant_graul.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('infant_graul') + mobileTemplate.setLevel(68) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(700) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(750) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(650) + mobileTemplate.setSocialGroup("graul") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_infant_graul.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('infant_graul', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/janta_clan_leader.py b/scripts/mobiles/dantooine/janta_clan_leader.py new file mode 100644 index 00000000..0fcd13a9 --- /dev/null +++ b/scripts/mobiles/dantooine/janta_clan_leader.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('janta_clan_leader') + mobileTemplate.setLevel(74) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('janta tribe') + mobileTemplate.setAssistRange(1) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('janta_clan_leader', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/janta_harvester.py b/scripts/mobiles/dantooine/janta_harvester.py new file mode 100644 index 00000000..37774060 --- /dev/null +++ b/scripts/mobiles/dantooine/janta_harvester.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('janta_harvester') + mobileTemplate.setLevel(74) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('janta tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('janta_harvester', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/janta_herbalist.py b/scripts/mobiles/dantooine/janta_herbalist.py new file mode 100644 index 00000000..389e2a19 --- /dev/null +++ b/scripts/mobiles/dantooine/janta_herbalist.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('janta_herbalist') + mobileTemplate.setLevel(74) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('janta tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('janta_herbalist', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/janta_hunter.py b/scripts/mobiles/dantooine/janta_hunter.py new file mode 100644 index 00000000..615824ff --- /dev/null +++ b/scripts/mobiles/dantooine/janta_hunter.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('janta_hunter') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('janta tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('janta_hunter', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/janta_loreweaver.py b/scripts/mobiles/dantooine/janta_loreweaver.py new file mode 100644 index 00000000..978e8d6a --- /dev/null +++ b/scripts/mobiles/dantooine/janta_loreweaver.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('janta_loreweaver') + mobileTemplate.setLevel(74) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('janta tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('janta_loreweaver', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/janta_primalist.py b/scripts/mobiles/dantooine/janta_primalist.py new file mode 100644 index 00000000..5fd402ca --- /dev/null +++ b/scripts/mobiles/dantooine/janta_primalist.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('janta_primalist') + mobileTemplate.setLevel(75) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('janta tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('janta_primalist', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/janta_rockshaper.py b/scripts/mobiles/dantooine/janta_rockshaper.py new file mode 100644 index 00000000..7693c555 --- /dev/null +++ b/scripts/mobiles/dantooine/janta_rockshaper.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('janta_rockshaper') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('janta tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('janta_rockshaper', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/janta_scout.py b/scripts/mobiles/dantooine/janta_scout.py new file mode 100644 index 00000000..dc58aa98 --- /dev/null +++ b/scripts/mobiles/dantooine/janta_scout.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('janta_scout') + mobileTemplate.setLevel(75) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('janta tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('janta_scout', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/janta_shaman.py b/scripts/mobiles/dantooine/janta_shaman.py new file mode 100644 index 00000000..f7479a02 --- /dev/null +++ b/scripts/mobiles/dantooine/janta_shaman.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('janta_shaman') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('janta tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('janta_shaman', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/janta_soothsayer.py b/scripts/mobiles/dantooine/janta_soothsayer.py new file mode 100644 index 00000000..f1842636 --- /dev/null +++ b/scripts/mobiles/dantooine/janta_soothsayer.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('janta_soothsayer') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('janta tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('janta_soothsayer', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/janta_tribesman.py b/scripts/mobiles/dantooine/janta_tribesman.py new file mode 100644 index 00000000..a741208b --- /dev/null +++ b/scripts/mobiles/dantooine/janta_tribesman.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('janta_tribesman') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('janta tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('janta_tribesman', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/janta_warrior.py b/scripts/mobiles/dantooine/janta_warrior.py new file mode 100644 index 00000000..2f142551 --- /dev/null +++ b/scripts/mobiles/dantooine/janta_warrior.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('janta_warrior') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('janta tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('janta_warrior', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/kunga_clan_leader.py b/scripts/mobiles/dantooine/kunga_clan_leader.py new file mode 100644 index 00000000..00311d37 --- /dev/null +++ b/scripts/mobiles/dantooine/kunga_clan_leader.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kunga_clan_leader') + mobileTemplate.setLevel(72) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('kunga tribe') + mobileTemplate.setAssistRange(1) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('kunga_clan_leader', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/kunga_clan_primalist.py b/scripts/mobiles/dantooine/kunga_clan_primalist.py new file mode 100644 index 00000000..ea256156 --- /dev/null +++ b/scripts/mobiles/dantooine/kunga_clan_primalist.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kunga_clan_primalist') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('kunga tribe') + mobileTemplate.setAssistRange(1) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('kunga_clan_primalist', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/kunga_harvester.py b/scripts/mobiles/dantooine/kunga_harvester.py new file mode 100644 index 00000000..c1f95881 --- /dev/null +++ b/scripts/mobiles/dantooine/kunga_harvester.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kunga_harvester') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('kunga tribe') + mobileTemplate.setAssistRange(1) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('kunga_harvester', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/kunga_herbalist.py b/scripts/mobiles/dantooine/kunga_herbalist.py new file mode 100644 index 00000000..7b0e8887 --- /dev/null +++ b/scripts/mobiles/dantooine/kunga_herbalist.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kunga_herbalist') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('kunga tribe') + mobileTemplate.setAssistRange(1) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('kunga_herbalist', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/kunga_hunter.py b/scripts/mobiles/dantooine/kunga_hunter.py new file mode 100644 index 00000000..d5952172 --- /dev/null +++ b/scripts/mobiles/dantooine/kunga_hunter.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kunga_hunter') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('kunga tribe') + mobileTemplate.setAssistRange(1) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('kunga_hunter', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/kunga_loreweaver.py b/scripts/mobiles/dantooine/kunga_loreweaver.py new file mode 100644 index 00000000..eab9c3df --- /dev/null +++ b/scripts/mobiles/dantooine/kunga_loreweaver.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kunga_loreweaver') + mobileTemplate.setLevel(69) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('kunga tribe') + mobileTemplate.setAssistRange(1) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('kunga_loreweaver', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/kunga_rockshaper.py b/scripts/mobiles/dantooine/kunga_rockshaper.py new file mode 100644 index 00000000..a6434514 --- /dev/null +++ b/scripts/mobiles/dantooine/kunga_rockshaper.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kunga_rockshaper') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('kunga tribe') + mobileTemplate.setAssistRange(1) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('kunga_rockshaper', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/kunga_scout.py b/scripts/mobiles/dantooine/kunga_scout.py new file mode 100644 index 00000000..d5cd7e5c --- /dev/null +++ b/scripts/mobiles/dantooine/kunga_scout.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kunga_scout') + mobileTemplate.setLevel(69) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('kunga tribe') + mobileTemplate.setAssistRange(1) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('kunga_scout', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/kunga_shaman.py b/scripts/mobiles/dantooine/kunga_shaman.py new file mode 100644 index 00000000..9dd33ef8 --- /dev/null +++ b/scripts/mobiles/dantooine/kunga_shaman.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kunga_shaman') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('kunga tribe') + mobileTemplate.setAssistRange(1) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('kunga_shaman', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/kunga_soothsayer.py b/scripts/mobiles/dantooine/kunga_soothsayer.py new file mode 100644 index 00000000..d1321f7b --- /dev/null +++ b/scripts/mobiles/dantooine/kunga_soothsayer.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kunga_soothsayer') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('kunga tribe') + mobileTemplate.setAssistRange(1) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('kunga_soothsayer', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/kunga_tribe_member.py b/scripts/mobiles/dantooine/kunga_tribe_member.py new file mode 100644 index 00000000..df111848 --- /dev/null +++ b/scripts/mobiles/dantooine/kunga_tribe_member.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kunga_tribe_member') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('kunga tribe') + mobileTemplate.setAssistRange(1) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('kunga_tribe_member', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/kunga_warrior.py b/scripts/mobiles/dantooine/kunga_warrior.py new file mode 100644 index 00000000..2bb31e22 --- /dev/null +++ b/scripts/mobiles/dantooine/kunga_warrior.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kunga_warrior') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('kunga tribe') + mobileTemplate.setAssistRange(1) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('kunga_warrior', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/lesser_plains_bol.py b/scripts/mobiles/dantooine/lesser_plains_bol.py new file mode 100644 index 00000000..579a0c20 --- /dev/null +++ b/scripts/mobiles/dantooine/lesser_plains_bol.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('lesser_plains_bol') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(0) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(300) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(180) + mobileTemplate.setSocialGroup("bol") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bol_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('lesser_plains_bol', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/mammoth_thune.py b/scripts/mobiles/dantooine/mammoth_thune.py new file mode 100644 index 00000000..4fd07c82 --- /dev/null +++ b/scripts/mobiles/dantooine/mammoth_thune.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('mammoth_thune') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(225) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setBoneAmount(190) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(0) + mobileTemplate.setSocialGroup("thune") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_thune_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mammoth_thune', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/mokk_clan_leader.py b/scripts/mobiles/dantooine/mokk_clan_leader.py new file mode 100644 index 00000000..a83c7a32 --- /dev/null +++ b/scripts/mobiles/dantooine/mokk_clan_leader.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mokk_clan_leader') + mobileTemplate.setLevel(68) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('mokk tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('mokk_clan_leader', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/mokk_clan_primalist.py b/scripts/mobiles/dantooine/mokk_clan_primalist.py new file mode 100644 index 00000000..839ed2eb --- /dev/null +++ b/scripts/mobiles/dantooine/mokk_clan_primalist.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mokk_clan_primalist') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('mokk tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('mokk_clan_primalist', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/mokk_harvester.py b/scripts/mobiles/dantooine/mokk_harvester.py new file mode 100644 index 00000000..2fd08f45 --- /dev/null +++ b/scripts/mobiles/dantooine/mokk_harvester.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mokk_harvester') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('mokk tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('mokk_harvester', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/mokk_herbalist.py b/scripts/mobiles/dantooine/mokk_herbalist.py new file mode 100644 index 00000000..c5cec1b7 --- /dev/null +++ b/scripts/mobiles/dantooine/mokk_herbalist.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mokk_herbalist') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('mokk tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('mokk_herbalist', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/mokk_hunter.py b/scripts/mobiles/dantooine/mokk_hunter.py new file mode 100644 index 00000000..f56bac8c --- /dev/null +++ b/scripts/mobiles/dantooine/mokk_hunter.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mokk_hunter') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('mokk tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('mokk_hunter', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/mokk_loreweaver.py b/scripts/mobiles/dantooine/mokk_loreweaver.py new file mode 100644 index 00000000..c7df5a02 --- /dev/null +++ b/scripts/mobiles/dantooine/mokk_loreweaver.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mokk_loreweaver') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('mokk tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('mokk_loreweaver', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/mokk_rockshaper.py b/scripts/mobiles/dantooine/mokk_rockshaper.py new file mode 100644 index 00000000..24a5eb6d --- /dev/null +++ b/scripts/mobiles/dantooine/mokk_rockshaper.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mokk_rockshaper') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('mokk tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('mokk_rockshaper', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/mokk_scout.py b/scripts/mobiles/dantooine/mokk_scout.py new file mode 100644 index 00000000..dd85d584 --- /dev/null +++ b/scripts/mobiles/dantooine/mokk_scout.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mokk_scout') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('mokk tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('mokk_scout', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/mokk_shaman.py b/scripts/mobiles/dantooine/mokk_shaman.py new file mode 100644 index 00000000..22df383e --- /dev/null +++ b/scripts/mobiles/dantooine/mokk_shaman.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mokk_shaman') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('mokk tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('mokk_shaman', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/mokk_soothsayer.py b/scripts/mobiles/dantooine/mokk_soothsayer.py new file mode 100644 index 00000000..866598a1 --- /dev/null +++ b/scripts/mobiles/dantooine/mokk_soothsayer.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mokk_soothsayer') + mobileTemplate.setLevel(67) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('mokk tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('mokk_soothsayer', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/mokk_tribesman.py b/scripts/mobiles/dantooine/mokk_tribesman.py new file mode 100644 index 00000000..530f4286 --- /dev/null +++ b/scripts/mobiles/dantooine/mokk_tribesman.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mokk_tribesman') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('mokk tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('mokk_tribesman', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/mokk_warrior.py b/scripts/mobiles/dantooine/mokk_warrior.py new file mode 100644 index 00000000..99fc43c8 --- /dev/null +++ b/scripts/mobiles/dantooine/mokk_warrior.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mokk_warrior') + mobileTemplate.setLevel(68) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('mokk tribe') + mobileTemplate.setAssistRange(12) + + + templates = Vector() + templates.add('object/mobile/shared_dantari_male.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/knife/shared_knife_janta.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_janta.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('mokk_warrior', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/novice_force_mystic.py b/scripts/mobiles/dantooine/novice_force_mystic.py index b034a3ae..1ed0f1a0 100644 --- a/scripts/mobiles/dantooine/novice_force_mystic.py +++ b/scripts/mobiles/dantooine/novice_force_mystic.py @@ -16,6 +16,7 @@ def addTemplate(core): mobileTemplate.setMaxSpawnDistance(7) mobileTemplate.setDeathblow(False) mobileTemplate.setSocialGroup('force renegade') + mobileTemplate.setRespawnTime(300) templates = Vector() templates.add('object/mobile/shared_dressed_novice_force_mystic.iff') diff --git a/scripts/mobiles/dantooine/piket.py b/scripts/mobiles/dantooine/piket.py new file mode 100644 index 00000000..82cb1618 --- /dev/null +++ b/scripts/mobiles/dantooine/piket.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('piket') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(35) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(25) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(30) + mobileTemplate.setSocialGroup("piket") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_piket.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('piket', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/piket_longhorn.py b/scripts/mobiles/dantooine/piket_longhorn.py new file mode 100644 index 00000000..24188d28 --- /dev/null +++ b/scripts/mobiles/dantooine/piket_longhorn.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('piket_longhorn') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(35) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(25) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(30) + mobileTemplate.setSocialGroup("piket") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_piket_longhorn.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('piket_longhorn', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/piket_longhorn_female.py b/scripts/mobiles/dantooine/piket_longhorn_female.py new file mode 100644 index 00000000..dfddbe58 --- /dev/null +++ b/scripts/mobiles/dantooine/piket_longhorn_female.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('piket') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(35) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(25) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(30) + mobileTemplate.setSocialGroup("piket") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_piket_longhorn.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('piket', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/piket_plains_walker.py b/scripts/mobiles/dantooine/piket_plains_walker.py new file mode 100644 index 00000000..5cdb310c --- /dev/null +++ b/scripts/mobiles/dantooine/piket_plains_walker.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('piket_plains_walker') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(35) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(25) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(30) + mobileTemplate.setSocialGroup("piket") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_piket_plains_walker.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('piket_plains_walker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/quenker.py b/scripts/mobiles/dantooine/quenker.py new file mode 100644 index 00000000..9f575295 --- /dev/null +++ b/scripts/mobiles/dantooine/quenker.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('quenker') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(15) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setBoneAmount(10) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(15) + mobileTemplate.setSocialGroup("quenker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_quenker.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('quenker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/quenker_ravager.py b/scripts/mobiles/dantooine/quenker_ravager.py new file mode 100644 index 00000000..125f1b1b --- /dev/null +++ b/scripts/mobiles/dantooine/quenker_ravager.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('quenker_ravager') + mobileTemplate.setLevel(67) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(15) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setBoneAmount(10) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(15) + mobileTemplate.setSocialGroup("quenker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_quenker_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('quenker_ravager', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/quenker_relic_reaper.py b/scripts/mobiles/dantooine/quenker_relic_reaper.py new file mode 100644 index 00000000..ae6ec1a7 --- /dev/null +++ b/scripts/mobiles/dantooine/quenker_relic_reaper.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('quenker_relic_reaper') + mobileTemplate.setLevel(69) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(15) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setBoneAmount(10) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(15) + mobileTemplate.setSocialGroup("quenker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_quenker_relic_reaper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('quenker_relic_reaper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/savage_quenker.py b/scripts/mobiles/dantooine/savage_quenker.py new file mode 100644 index 00000000..3f5a26b7 --- /dev/null +++ b/scripts/mobiles/dantooine/savage_quenker.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('savage_quenker') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(0) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setBoneAmount(0) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(0) + mobileTemplate.setSocialGroup("quenker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_quenker_relic_reaper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('savage_quenker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/seething_bol_crusher.py b/scripts/mobiles/dantooine/seething_bol_crusher.py new file mode 100644 index 00000000..61c1b251 --- /dev/null +++ b/scripts/mobiles/dantooine/seething_bol_crusher.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('seething_bol_crusher') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(0) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(300) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(180) + mobileTemplate.setSocialGroup("bol") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bol.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('seething_bol_crusher', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/slice_hound.py b/scripts/mobiles/dantooine/slice_hound.py new file mode 100644 index 00000000..19175407 --- /dev/null +++ b/scripts/mobiles/dantooine/slice_hound.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('slice_hound') + mobileTemplate.setLevel(51) + mobileTemplate.setMinLevel(51) + mobileTemplate.setMaxLevel(51) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setBoneAmount(35) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(30) + mobileTemplate.setSocialGroup("slice_hound") + mobileTemplate.setAssistRange(1) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_dewback.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('slice_hound', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/slinking_voritor_hunter.py b/scripts/mobiles/dantooine/slinking_voritor_hunter.py new file mode 100644 index 00000000..e4b22c92 --- /dev/null +++ b/scripts/mobiles/dantooine/slinking_voritor_hunter.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('slinking_voritor_hunter') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(90) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(65) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(50) + mobileTemplate.setSocialGroup("voritor lizard") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_slinking_voritor_hunter.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('slinking_voritor_hunter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/spiked_slasher.py b/scripts/mobiles/dantooine/spiked_slasher.py new file mode 100644 index 00000000..2f3d2330 --- /dev/null +++ b/scripts/mobiles/dantooine/spiked_slasher.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('spiked_slasher') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(40) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(50) + mobileTemplate.setSocialGroup("voritor lizard") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_voritor_lizard_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('spiked_slasher', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/stranded_rebel_scout.py b/scripts/mobiles/dantooine/stranded_rebel_scout.py new file mode 100644 index 00000000..af05c180 --- /dev/null +++ b/scripts/mobiles/dantooine/stranded_rebel_scout.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stranded_rebel_scout') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('rebel') + mobileTemplate.setAssistRange(1) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dark_jedi_male_human_01.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_dh17.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_rebel.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stranded_rebel_scout', mobileTemplate) + \ No newline at end of file diff --git a/scripts/mobiles/dantooine/swift_charging_bol.py b/scripts/mobiles/dantooine/swift_charging_bol.py new file mode 100644 index 00000000..2bbccc53 --- /dev/null +++ b/scripts/mobiles/dantooine/swift_charging_bol.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('bol_swift_charger') + mobileTemplate.setLevel(39) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(0) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(300) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(180) + mobileTemplate.setSocialGroup("bol") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bol_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('swift_charging_bol', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/terrible_quenker.py b/scripts/mobiles/dantooine/terrible_quenker.py new file mode 100644 index 00000000..de6a648c --- /dev/null +++ b/scripts/mobiles/dantooine/terrible_quenker.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('terrible_quenker') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(0) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setBoneAmount(0) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(0) + mobileTemplate.setSocialGroup("quenker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_quenker.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('terrible_quenker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/thune.py b/scripts/mobiles/dantooine/thune.py new file mode 100644 index 00000000..e8653e89 --- /dev/null +++ b/scripts/mobiles/dantooine/thune.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('thune') + mobileTemplate.setLevel(68) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(115) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setBoneAmount(125) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(0) + mobileTemplate.setSocialGroup("thune") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_thune.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('thune', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/thune_grassland_guardian.py b/scripts/mobiles/dantooine/thune_grassland_guardian.py new file mode 100644 index 00000000..9c99c933 --- /dev/null +++ b/scripts/mobiles/dantooine/thune_grassland_guardian.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('thune_grassland_guardian') + mobileTemplate.setLevel(72) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(135) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setBoneAmount(150) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(0) + mobileTemplate.setSocialGroup("thune") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_thune_grassland_guardian.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('thune_grassland_guardian', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/thune_herd_leader.py b/scripts/mobiles/dantooine/thune_herd_leader.py new file mode 100644 index 00000000..3ab09c93 --- /dev/null +++ b/scripts/mobiles/dantooine/thune_herd_leader.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('thune_herd_leader') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(135) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setBoneAmount(150) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(0) + mobileTemplate.setSocialGroup("thune") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_thune_herd_leader.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('thune_herd_leader', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/untrained_wielder_of_the_dark_side.py b/scripts/mobiles/dantooine/untrained_wielder_of_the_dark_side.py index dacb0620..de77e40a 100644 --- a/scripts/mobiles/dantooine/untrained_wielder_of_the_dark_side.py +++ b/scripts/mobiles/dantooine/untrained_wielder_of_the_dark_side.py @@ -7,7 +7,6 @@ def addTemplate(core): mobileTemplate = MobileTemplate() mobileTemplate.setCreatureName('untrained_wielder_of_the_dark_side') - mobileTemplate.setLevel(90) mobileTemplate.setMinLevel(61) mobileTemplate.setMaxLevel(70) mobileTemplate.setDifficulty(0) @@ -19,6 +18,7 @@ def addTemplate(core): mobileTemplate.setDeathblow(False) mobileTemplate.setSocialGroup('remnants of kun') mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) templates = Vector() templates.add('object/mobile/shared_dressed_untrained_wielder_of_the_darkside.iff') diff --git a/scripts/mobiles/dantooine/vexed_voritor_lizard.py b/scripts/mobiles/dantooine/vexed_voritor_lizard.py new file mode 100644 index 00000000..84d6a944 --- /dev/null +++ b/scripts/mobiles/dantooine/vexed_voritor_lizard.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('vexed_voritor_lizard') + mobileTemplate.setLevel(73) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(50) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(50) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(50) + mobileTemplate.setSocialGroup("voritor lizard") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_vexed_voritor_lizard.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vexed_voritor_lizard', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/voritor_dasher.py b/scripts/mobiles/dantooine/voritor_dasher.py new file mode 100644 index 00000000..5b805437 --- /dev/null +++ b/scripts/mobiles/dantooine/voritor_dasher.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('voritor_dasher') + mobileTemplate.setLevel(72) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(40) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(35) + mobileTemplate.setSocialGroup("voritor lizard") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_voritor_dasher.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('voritor_dasher', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dantooine/voritor_lizard.py b/scripts/mobiles/dantooine/voritor_lizard.py new file mode 100644 index 00000000..b8b72b90 --- /dev/null +++ b/scripts/mobiles/dantooine/voritor_lizard.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('voritor_lizard') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(35) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(25) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(30) + mobileTemplate.setSocialGroup("voritor lizard") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_voritor_lizard.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('voritor_lizard', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dathomir/alpha_bolma.py b/scripts/mobiles/dathomir/alpha_bolma.py new file mode 100644 index 00000000..b2d7c9e1 --- /dev/null +++ b/scripts/mobiles/dathomir/alpha_bolma.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('alpha_bolma') + mobileTemplate.setLevel(62) + mobileTemplate.setMinLevel(62) + mobileTemplate.setMaxLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(500) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(550) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(500) + mobileTemplate.setSocialGroup("bolma") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bolma_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('alpha_bolma', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dathomir/ancient_reptilian_flier.py b/scripts/mobiles/dathomir/ancient_reptilian_flier.py new file mode 100644 index 00000000..62fbe3da --- /dev/null +++ b/scripts/mobiles/dathomir/ancient_reptilian_flier.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('ancient_reptilian_flier') + mobileTemplate.setLevel(68) + mobileTemplate.setMinLevel(68) + mobileTemplate.setMaxLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(135) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(90) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(85) + mobileTemplate.setSocialGroup("reptilian flier") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_reptilian_flier_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('ancient_reptilian_flier', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dathomir/bane_back_spider.py b/scripts/mobiles/dathomir/bane_back_spider.py new file mode 100644 index 00000000..a6d65231 --- /dev/null +++ b/scripts/mobiles/dathomir/bane_back_spider.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bio_engineered_bane_back') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("gaping") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_gaping_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bane_back_spider', mobileTemplate) + return diff --git a/scripts/mobiles/dathomir/baz_nitch.py b/scripts/mobiles/dathomir/baz_nitch.py new file mode 100644 index 00000000..78854fc9 --- /dev/null +++ b/scripts/mobiles/dathomir/baz_nitch.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('baz_nitch') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(2) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("baz nitch") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_baz_nitch_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('baz_nitch', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dathomir/bolma.py b/scripts/mobiles/dathomir/bolma.py new file mode 100644 index 00000000..61debf7b --- /dev/null +++ b/scripts/mobiles/dathomir/bolma.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bolma') + mobileTemplate.setLevel(55) + mobileTemplate.setMinLevel(55) + mobileTemplate.setMaxLevel(55) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(160) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(150) + mobileTemplate.setSocialGroup("bolma") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bolma_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bolma', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dathomir/bolma_calf.py b/scripts/mobiles/dathomir/bolma_calf.py new file mode 100644 index 00000000..93009c87 --- /dev/null +++ b/scripts/mobiles/dathomir/bolma_calf.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bolma_calf') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(175) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(160) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(150) + mobileTemplate.setSocialGroup("bolma") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bolma_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bolma_calf', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dathomir/bolma_female.py b/scripts/mobiles/dathomir/bolma_female.py new file mode 100644 index 00000000..f7e46729 --- /dev/null +++ b/scripts/mobiles/dathomir/bolma_female.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bolma_female') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(300) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(320) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(300) + mobileTemplate.setSocialGroup("bolma") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bolma_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bolma_female', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dathomir/bolma_male.py b/scripts/mobiles/dathomir/bolma_male.py new file mode 100644 index 00000000..45e2e69a --- /dev/null +++ b/scripts/mobiles/dathomir/bolma_male.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bolma_male') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(320) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(340) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(320) + mobileTemplate.setSocialGroup("bolma") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bolma_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bolma_male', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dathomir/bolma_pack_master.py b/scripts/mobiles/dathomir/bolma_pack_master.py new file mode 100644 index 00000000..41e3ab79 --- /dev/null +++ b/scripts/mobiles/dathomir/bolma_pack_master.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bolma_pack_master') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.2) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(160) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(150) + mobileTemplate.setSocialGroup("bolma") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bolma_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bolma_pack_leader', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dathomir/bolma_youth.py b/scripts/mobiles/dathomir/bolma_youth.py new file mode 100644 index 00000000..f57cf597 --- /dev/null +++ b/scripts/mobiles/dathomir/bolma_youth.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bolma_youth') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(160) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(150) + mobileTemplate.setSocialGroup("bolma") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bolma_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bolma_youth', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dathomir/brackaset.py b/scripts/mobiles/dathomir/brackaset.py new file mode 100644 index 00000000..9ec9fe30 --- /dev/null +++ b/scripts/mobiles/dathomir/brackaset.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('brackaset') + mobileTemplate.setLevel(66) + mobileTemplate.setMinLevel(66) + mobileTemplate.setMaxLevel(6) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(100) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(91) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(81) + mobileTemplate.setSocialGroup("brackaset") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_brackaset_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('brackaset', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dathomir/brackaset_female.py b/scripts/mobiles/dathomir/brackaset_female.py new file mode 100644 index 00000000..c40a29e6 --- /dev/null +++ b/scripts/mobiles/dathomir/brackaset_female.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('brackaset_female') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(100) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(90) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(80) + mobileTemplate.setSocialGroup("brackaset") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_brackaset_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('brackaset_female', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dathomir/brackaset_male.py b/scripts/mobiles/dathomir/brackaset_male.py new file mode 100644 index 00000000..0db9fd64 --- /dev/null +++ b/scripts/mobiles/dathomir/brackaset_male.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('brackaset_male') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(100) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(91) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(81) + mobileTemplate.setSocialGroup("brackaset") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_brackaset_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('brackaset_male', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dathomir/bull_rancor.py b/scripts/mobiles/dathomir/bull_rancor.py new file mode 100644 index 00000000..4d9e798b --- /dev/null +++ b/scripts/mobiles/dathomir/bull_rancor.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bull_rancor') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(1020) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(900) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(850) + mobileTemplate.setSocialGroup("rancor") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_rancor_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bull_rancor', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/dathomir/nightsister_elder.py b/scripts/mobiles/dathomir/nightsister_elder.py new file mode 100644 index 00000000..3531fec8 --- /dev/null +++ b/scripts/mobiles/dathomir/nightsister_elder.py @@ -0,0 +1,61 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('nightsister_elder') + mobileTemplate.setLevel(82) + mobileTemplate.setDifficulty(2) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(6) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('nightsister') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_nightsister_elder.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + lootPoolNames_3 = ['powercrystals_hiq'] + lootPoolChances_3 = [100] + lootGroupChance_3 = 12 + mobileTemplate.addToLootGroups(lootPoolNames_3,lootPoolChances_3,lootGroupChance_3) + + lootPoolNames_4 = ['random_stat_jewelry'] + lootPoolChances_4 = [100] + lootGroupChance_4 = 8 + mobileTemplate.addToLootGroups(lootPoolNames_4,lootPoolChances_4,lootGroupChance_4) + + lootPoolNames_5 = ['sithholocrons'] + lootPoolChances_5 = [100] + lootGroupChance_5 = 3 + mobileTemplate.addToLootGroups(lootPoolNames_5,lootPoolChances_5,lootGroupChance_5) + + core.spawnService.addMobileTemplate('nightsister_elder', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/nightsister_initiate.py b/scripts/mobiles/dathomir/nightsister_initiate.py new file mode 100644 index 00000000..30290e6b --- /dev/null +++ b/scripts/mobiles/dathomir/nightsister_initiate.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('nightsister_initiate') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(6) + mobileTemplate.setDeathblow(True) + mobileTemplate.setStalker(True) + mobileTemplate.setSocialGroup('nightsister') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_nightsister_initiate.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + + core.spawnService.addMobileTemplate('nightsister_initiate', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/nightsister_outcast.py b/scripts/mobiles/dathomir/nightsister_outcast.py new file mode 100644 index 00000000..f87f5f19 --- /dev/null +++ b/scripts/mobiles/dathomir/nightsister_outcast.py @@ -0,0 +1,56 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('nightsister_outcast') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(6) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('nightsister') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_nightsister_outcast.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + lootPoolNames_3 = ['powercrystals_hiq'] + lootPoolChances_3 = [100] + lootGroupChance_3 = 12 + mobileTemplate.addToLootGroups(lootPoolNames_3,lootPoolChances_3,lootGroupChance_3) + + lootPoolNames_5 = ['sithholocrons'] + lootPoolChances_5 = [100] + lootGroupChance_5 = 3 + mobileTemplate.addToLootGroups(lootPoolNames_5,lootPoolChances_5,lootGroupChance_5) + + core.spawnService.addMobileTemplate('nightsister_outcast', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/nightsister_protector.py b/scripts/mobiles/dathomir/nightsister_protector.py new file mode 100644 index 00000000..adcb0d07 --- /dev/null +++ b/scripts/mobiles/dathomir/nightsister_protector.py @@ -0,0 +1,56 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('nightsister_protector') + mobileTemplate.setLevel(81) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(6) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('nightsister') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_nightsister_protector.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + lootPoolNames_4 = ['random_stat_jewelry'] + lootPoolChances_4 = [100] + lootGroupChance_4 = 8 + mobileTemplate.addToLootGroups(lootPoolNames_4,lootPoolChances_4,lootGroupChance_4) + + lootPoolNames_5 = ['sithholocrons'] + lootPoolChances_5 = [100] + lootGroupChance_5 = 3 + mobileTemplate.addToLootGroups(lootPoolNames_5,lootPoolChances_5,lootGroupChance_5) + + core.spawnService.addMobileTemplate('nightsister_protector', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/nightsister_rancor.py b/scripts/mobiles/dathomir/nightsister_rancor.py new file mode 100644 index 00000000..1a783345 --- /dev/null +++ b/scripts/mobiles/dathomir/nightsister_rancor.py @@ -0,0 +1,36 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('nightsister_rancor') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(6) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('nightsister') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_rancor.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('nightsister_rancor', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/nightsister_rancor_tamer.py b/scripts/mobiles/dathomir/nightsister_rancor_tamer.py new file mode 100644 index 00000000..dc77680f --- /dev/null +++ b/scripts/mobiles/dathomir/nightsister_rancor_tamer.py @@ -0,0 +1,56 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('nightsister_rancor_tamer') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(6) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('nightsister') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_nightsister_rancor_tamer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + lootPoolNames_4 = ['random_stat_jewelry'] + lootPoolChances_4 = [100] + lootGroupChance_4 = 8 + mobileTemplate.addToLootGroups(lootPoolNames_4,lootPoolChances_4,lootGroupChance_4) + + lootPoolNames_5 = ['sithholocrons'] + lootPoolChances_5 = [100] + lootGroupChance_5 = 3 + mobileTemplate.addToLootGroups(lootPoolNames_5,lootPoolChances_5,lootGroupChance_5) + + core.spawnService.addMobileTemplate('nightsister_rancor_tamer', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/nightsister_ranger.py b/scripts/mobiles/dathomir/nightsister_ranger.py new file mode 100644 index 00000000..3c474823 --- /dev/null +++ b/scripts/mobiles/dathomir/nightsister_ranger.py @@ -0,0 +1,57 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('nightsister_ranger') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(6) + mobileTemplate.setDeathblow(True) + mobileTemplate.setStalker(True) + mobileTemplate.setSocialGroup('nightsister') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_nightsister_ranger.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + lootPoolNames_4 = ['random_stat_jewelry'] + lootPoolChances_4 = [100] + lootGroupChance_4 = 8 + mobileTemplate.addToLootGroups(lootPoolNames_4,lootPoolChances_4,lootGroupChance_4) + + lootPoolNames_5 = ['sithholocrons'] + lootPoolChances_5 = [100] + lootGroupChance_5 = 3 + mobileTemplate.addToLootGroups(lootPoolNames_5,lootPoolChances_5,lootGroupChance_5) + + core.spawnService.addMobileTemplate('nightsister_ranger', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/nightsister_sentinel.py b/scripts/mobiles/dathomir/nightsister_sentinel.py new file mode 100644 index 00000000..75158183 --- /dev/null +++ b/scripts/mobiles/dathomir/nightsister_sentinel.py @@ -0,0 +1,56 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('nightsister_sentinal') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(6) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('nightsister') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_nightsister_sentinal.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + lootPoolNames_4 = ['random_stat_jewelry'] + lootPoolChances_4 = [100] + lootGroupChance_4 = 8 + mobileTemplate.addToLootGroups(lootPoolNames_4,lootPoolChances_4,lootGroupChance_4) + + lootPoolNames_5 = ['sithholocrons'] + lootPoolChances_5 = [100] + lootGroupChance_5 = 3 + mobileTemplate.addToLootGroups(lootPoolNames_5,lootPoolChances_5,lootGroupChance_5) + + core.spawnService.addMobileTemplate('nightsister_sentinal', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/nightsister_sentry.py b/scripts/mobiles/dathomir/nightsister_sentry.py new file mode 100644 index 00000000..160e6232 --- /dev/null +++ b/scripts/mobiles/dathomir/nightsister_sentry.py @@ -0,0 +1,56 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('nightsister_sentry') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(6) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('nightsister') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_nightsister_stalker.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + lootPoolNames_4 = ['random_stat_jewelry'] + lootPoolChances_4 = [100] + lootGroupChance_4 = 8 + mobileTemplate.addToLootGroups(lootPoolNames_4,lootPoolChances_4,lootGroupChance_4) + + lootPoolNames_5 = ['sithholocrons'] + lootPoolChances_5 = [100] + lootGroupChance_5 = 3 + mobileTemplate.addToLootGroups(lootPoolNames_5,lootPoolChances_5,lootGroupChance_5) + + core.spawnService.addMobileTemplate('nightsister_sentry', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/nightsister_slave.py b/scripts/mobiles/dathomir/nightsister_slave.py index 7ce31682..88e64f2b 100644 --- a/scripts/mobiles/dathomir/nightsister_slave.py +++ b/scripts/mobiles/dathomir/nightsister_slave.py @@ -1,5 +1,6 @@ import sys from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate from java.util import Vector def addTemplate(core): @@ -10,14 +11,22 @@ def addTemplate(core): mobileTemplate.setDifficulty(1) mobileTemplate.setAttackRange(5) mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setOptionsBitmask(192) templates = Vector() templates.add('object/mobile/shared_dressed_dathomir_nightsister_slave.iff') mobileTemplate.setTemplates(templates) + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + attacks = Vector() - mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setDefaultAttack('creatureMeleeAttack') mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('nightsister_slave', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/nightsister_spell_weaver.py b/scripts/mobiles/dathomir/nightsister_spell_weaver.py new file mode 100644 index 00000000..cc12a19a --- /dev/null +++ b/scripts/mobiles/dathomir/nightsister_spell_weaver.py @@ -0,0 +1,56 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('nightsister_spell_weaver') + mobileTemplate.setLevel(81) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(6) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('nightsister') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_nightsister_spellweaver.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + lootPoolNames_4 = ['random_stat_jewelry'] + lootPoolChances_4 = [100] + lootGroupChance_4 = 8 + mobileTemplate.addToLootGroups(lootPoolNames_4,lootPoolChances_4,lootGroupChance_4) + + lootPoolNames_5 = ['sithholocrons'] + lootPoolChances_5 = [100] + lootGroupChance_5 = 3 + mobileTemplate.addToLootGroups(lootPoolNames_5,lootPoolChances_5,lootGroupChance_5) + + core.spawnService.addMobileTemplate('nightsister_spell_weaver', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/nightsister_stalker.py b/scripts/mobiles/dathomir/nightsister_stalker.py new file mode 100644 index 00000000..53a0a500 --- /dev/null +++ b/scripts/mobiles/dathomir/nightsister_stalker.py @@ -0,0 +1,57 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('nightsister_stalker') + mobileTemplate.setLevel(81) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(6) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setStalker(True) + mobileTemplate.setSocialGroup('nightsister') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_nightsister_stalker.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + lootPoolNames_4 = ['random_stat_jewelry'] + lootPoolChances_4 = [100] + lootGroupChance_4 = 8 + mobileTemplate.addToLootGroups(lootPoolNames_4,lootPoolChances_4,lootGroupChance_4) + + lootPoolNames_5 = ['sithholocrons'] + lootPoolChances_5 = [100] + lootGroupChance_5 = 3 + mobileTemplate.addToLootGroups(lootPoolNames_5,lootPoolChances_5,lootGroupChance_5) + + core.spawnService.addMobileTemplate('nightsister_stalker', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/rancor.py b/scripts/mobiles/dathomir/rancor.py index 975e6869..06211eee 100644 --- a/scripts/mobiles/dathomir/rancor.py +++ b/scripts/mobiles/dathomir/rancor.py @@ -9,6 +9,7 @@ def addTemplate(core): mobileTemplate.setLevel(50) mobileTemplate.setDifficulty(1) mobileTemplate.setAttackRange(5) + mobileTemplate.setOptionsBitmask(192) templates = Vector() templates.add('object/mobile/shared_rancor.iff') diff --git a/scripts/mobiles/dathomir/singing_mountain_clan_rancor.py b/scripts/mobiles/dathomir/singing_mountain_clan_rancor.py new file mode 100644 index 00000000..47ff1b5e --- /dev/null +++ b/scripts/mobiles/dathomir/singing_mountain_clan_rancor.py @@ -0,0 +1,36 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('singing_mountain_clan_rancor') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(6) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('mountain clan') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_rancor.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('singing_mountain_clan_rancor', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/singing_mountain_clan_sentry.py b/scripts/mobiles/dathomir/singing_mountain_clan_sentry.py new file mode 100644 index 00000000..ea81eb8e --- /dev/null +++ b/scripts/mobiles/dathomir/singing_mountain_clan_sentry.py @@ -0,0 +1,56 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('singing_mountain_clan_sentry') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(6) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('mountain clan') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_sing_mt_clan_sentry.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_wood_s1.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + lootPoolNames_4 = ['random_stat_jewelry'] + lootPoolChances_4 = [100] + lootGroupChance_4 = 8 + mobileTemplate.addToLootGroups(lootPoolNames_4,lootPoolChances_4,lootGroupChance_4) + + lootPoolNames_5 = ['sithholocrons'] + lootPoolChances_5 = [100] + lootGroupChance_5 = 3 + mobileTemplate.addToLootGroups(lootPoolNames_5,lootPoolChances_5,lootGroupChance_5) + + core.spawnService.addMobileTemplate('singing_mountain_clan_sentry', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/singing_mtn_clan_arch_witch.py b/scripts/mobiles/dathomir/singing_mtn_clan_arch_witch.py new file mode 100644 index 00000000..d8028835 --- /dev/null +++ b/scripts/mobiles/dathomir/singing_mtn_clan_arch_witch.py @@ -0,0 +1,56 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('singing_mtn_clan_arch_witch') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(6) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('mountain clan') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_sing_mt_clan_arch_witch.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + lootPoolNames_4 = ['random_stat_jewelry'] + lootPoolChances_4 = [100] + lootGroupChance_4 = 8 + mobileTemplate.addToLootGroups(lootPoolNames_4,lootPoolChances_4,lootGroupChance_4) + + lootPoolNames_5 = ['sithholocrons'] + lootPoolChances_5 = [100] + lootGroupChance_5 = 3 + mobileTemplate.addToLootGroups(lootPoolNames_5,lootPoolChances_5,lootGroupChance_5) + + core.spawnService.addMobileTemplate('singing_mtn_clan_arch_witch', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/singing_mtn_clan_councilwoman.py b/scripts/mobiles/dathomir/singing_mtn_clan_councilwoman.py new file mode 100644 index 00000000..388b3f29 --- /dev/null +++ b/scripts/mobiles/dathomir/singing_mtn_clan_councilwoman.py @@ -0,0 +1,61 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('singing_mtn_clan_councilwoman') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(2) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(6) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('mountain clan') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_sing_mt_clan_councilwoman.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + lootPoolNames_3 = ['powercrystals_hiq'] + lootPoolChances_3 = [100] + lootGroupChance_3 = 12 + mobileTemplate.addToLootGroups(lootPoolNames_3,lootPoolChances_3,lootGroupChance_3) + + lootPoolNames_4 = ['random_stat_jewelry'] + lootPoolChances_4 = [100] + lootGroupChance_4 = 8 + mobileTemplate.addToLootGroups(lootPoolNames_4,lootPoolChances_4,lootGroupChance_4) + + lootPoolNames_5 = ['sithholocrons'] + lootPoolChances_5 = [100] + lootGroupChance_5 = 3 + mobileTemplate.addToLootGroups(lootPoolNames_5,lootPoolChances_5,lootGroupChance_5) + + core.spawnService.addMobileTemplate('singing_mtn_clan_councilwoman', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/singing_mtn_clan_dragoon.py b/scripts/mobiles/dathomir/singing_mtn_clan_dragoon.py new file mode 100644 index 00000000..2bc60d7e --- /dev/null +++ b/scripts/mobiles/dathomir/singing_mtn_clan_dragoon.py @@ -0,0 +1,56 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('singing_mtn_clan_dragoon') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(6) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('mountain clan') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_sing_mt_clan_dragoon.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + lootPoolNames_4 = ['random_stat_jewelry'] + lootPoolChances_4 = [100] + lootGroupChance_4 = 8 + mobileTemplate.addToLootGroups(lootPoolNames_4,lootPoolChances_4,lootGroupChance_4) + + lootPoolNames_5 = ['sithholocrons'] + lootPoolChances_5 = [100] + lootGroupChance_5 = 3 + mobileTemplate.addToLootGroups(lootPoolNames_5,lootPoolChances_5,lootGroupChance_5) + + core.spawnService.addMobileTemplate('singing_mtn_clan_dragoon', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/singing_mtn_clan_guardian.py b/scripts/mobiles/dathomir/singing_mtn_clan_guardian.py new file mode 100644 index 00000000..863823ec --- /dev/null +++ b/scripts/mobiles/dathomir/singing_mtn_clan_guardian.py @@ -0,0 +1,56 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('singing_mtn_clan_guardian') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(6) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('mountain clan') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_sing_mt_clan_guardian.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + lootPoolNames_4 = ['random_stat_jewelry'] + lootPoolChances_4 = [100] + lootGroupChance_4 = 8 + mobileTemplate.addToLootGroups(lootPoolNames_4,lootPoolChances_4,lootGroupChance_4) + + lootPoolNames_5 = ['sithholocrons'] + lootPoolChances_5 = [100] + lootGroupChance_5 = 3 + mobileTemplate.addToLootGroups(lootPoolNames_5,lootPoolChances_5,lootGroupChance_5) + + core.spawnService.addMobileTemplate('singing_mtn_clan_guardian', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/singing_mtn_clan_huntress.py b/scripts/mobiles/dathomir/singing_mtn_clan_huntress.py new file mode 100644 index 00000000..592a0d44 --- /dev/null +++ b/scripts/mobiles/dathomir/singing_mtn_clan_huntress.py @@ -0,0 +1,57 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('singing_mtn_clan_huntress') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(6) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setStalker(True) + mobileTemplate.setSocialGroup('mountain clan') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_sing_mt_clan_huntress.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + lootPoolNames_4 = ['random_stat_jewelry'] + lootPoolChances_4 = [100] + lootGroupChance_4 = 8 + mobileTemplate.addToLootGroups(lootPoolNames_4,lootPoolChances_4,lootGroupChance_4) + + lootPoolNames_5 = ['sithholocrons'] + lootPoolChances_5 = [100] + lootGroupChance_5 = 3 + mobileTemplate.addToLootGroups(lootPoolNames_5,lootPoolChances_5,lootGroupChance_5) + + core.spawnService.addMobileTemplate('singing_mtn_clan_huntress', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/singing_mtn_clan_initiate.py b/scripts/mobiles/dathomir/singing_mtn_clan_initiate.py new file mode 100644 index 00000000..677dd58c --- /dev/null +++ b/scripts/mobiles/dathomir/singing_mtn_clan_initiate.py @@ -0,0 +1,36 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('singing_mtn_clan_initiate') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(6) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('mountain clan') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_sing_mt_clan_initiate.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('singing_mtn_clan_initiate', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/singing_mtn_clan_outcast.py b/scripts/mobiles/dathomir/singing_mtn_clan_outcast.py new file mode 100644 index 00000000..afe40e1f --- /dev/null +++ b/scripts/mobiles/dathomir/singing_mtn_clan_outcast.py @@ -0,0 +1,56 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('singing_mtn_clan_initiate') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(6) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('mountain clan') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_sing_mt_clan_outcast.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_lance_staff_wood_s1.iff', 7, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + lootPoolNames_4 = ['random_stat_jewelry'] + lootPoolChances_4 = [100] + lootGroupChance_4 = 8 + mobileTemplate.addToLootGroups(lootPoolNames_4,lootPoolChances_4,lootGroupChance_4) + + lootPoolNames_5 = ['sithholocrons'] + lootPoolChances_5 = [100] + lootGroupChance_5 = 3 + mobileTemplate.addToLootGroups(lootPoolNames_5,lootPoolChances_5,lootGroupChance_5) + + core.spawnService.addMobileTemplate('singing_mtn_clan_initiate', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/singing_mtn_clan_rancor_tamer.py b/scripts/mobiles/dathomir/singing_mtn_clan_rancor_tamer.py new file mode 100644 index 00000000..21ccb3ae --- /dev/null +++ b/scripts/mobiles/dathomir/singing_mtn_clan_rancor_tamer.py @@ -0,0 +1,56 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('singing_mtn_clan_rancor_tamer') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(6) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('mountain clan') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_sing_mt_clan_rancor_tamer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + lootPoolNames_4 = ['random_stat_jewelry'] + lootPoolChances_4 = [100] + lootGroupChance_4 = 8 + mobileTemplate.addToLootGroups(lootPoolNames_4,lootPoolChances_4,lootGroupChance_4) + + lootPoolNames_5 = ['sithholocrons'] + lootPoolChances_5 = [100] + lootGroupChance_5 = 3 + mobileTemplate.addToLootGroups(lootPoolNames_5,lootPoolChances_5,lootGroupChance_5) + + core.spawnService.addMobileTemplate('singing_mtn_clan_rancor_tamer', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/singing_mtn_clan_scout.py b/scripts/mobiles/dathomir/singing_mtn_clan_scout.py new file mode 100644 index 00000000..57381784 --- /dev/null +++ b/scripts/mobiles/dathomir/singing_mtn_clan_scout.py @@ -0,0 +1,56 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('singing_mtn_clan_scout') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(6) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('mountain clan') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_sing_mt_clan_scout.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleehit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['jedi_relic_1'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 85 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + lootPoolNames_4 = ['random_stat_jewelry'] + lootPoolChances_4 = [100] + lootGroupChance_4 = 8 + mobileTemplate.addToLootGroups(lootPoolNames_4,lootPoolChances_4,lootGroupChance_4) + + lootPoolNames_5 = ['sithholocrons'] + lootPoolChances_5 = [100] + lootGroupChance_5 = 3 + mobileTemplate.addToLootGroups(lootPoolNames_5,lootPoolChances_5,lootGroupChance_5) + + core.spawnService.addMobileTemplate('singing_mtn_clan_scout', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dathomir/singing_mtn_clan_slave.py b/scripts/mobiles/dathomir/singing_mtn_clan_slave.py new file mode 100644 index 00000000..8457d63e --- /dev/null +++ b/scripts/mobiles/dathomir/singing_mtn_clan_slave.py @@ -0,0 +1,36 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('singing_mtn_clan_slave') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(6) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(6) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('mountain clan') + mobileTemplate.setAssistRange(12) + mobileTemplate.setRespawnTime(300) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dathomir_sing_mt_clan_slave.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('singing_mtn_clan_slave', mobileTemplate) \ No newline at end of file diff --git a/scripts/mobiles/dynamicgroups/bol_group_1.py b/scripts/mobiles/dynamicgroups/bol_group_1.py new file mode 100644 index 00000000..f26dd786 --- /dev/null +++ b/scripts/mobiles/dynamicgroups/bol_group_1.py @@ -0,0 +1,18 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('bol') + mobileTemplates.add('bol_pack_runner') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(2) + dynamicGroup.setName('bol_group_1') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setMinSpawnDistance(150) + core.spawnService.addDynamicGroup('bol_group_1', dynamicGroup) + return diff --git a/scripts/mobiles/dynamicgroups/frenzied_graul_1.py b/scripts/mobiles/dynamicgroups/frenzied_graul_1.py new file mode 100644 index 00000000..dfe2dac0 --- /dev/null +++ b/scripts/mobiles/dynamicgroups/frenzied_graul_1.py @@ -0,0 +1,17 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('frenzied_graul') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(-3) + dynamicGroup.setName('thunes_1') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setMinSpawnDistance(150) + core.spawnService.addDynamicGroup('frenzied_graul', dynamicGroup) + return diff --git a/scripts/mobiles/dynamicgroups/graul_mauler_nw_group_1.py b/scripts/mobiles/dynamicgroups/graul_mauler_nw_group_1.py new file mode 100644 index 00000000..288ff2b9 --- /dev/null +++ b/scripts/mobiles/dynamicgroups/graul_mauler_nw_group_1.py @@ -0,0 +1,17 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('graul_mauler') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(-3) + dynamicGroup.setName('graul_mauler_nw_group_1') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setMinSpawnDistance(150) + core.spawnService.addDynamicGroup('graul_mauler_nw_group_1', dynamicGroup) + return diff --git a/scripts/mobiles/dynamicgroups/huurton_group_1.py b/scripts/mobiles/dynamicgroups/huurton_group_1.py new file mode 100644 index 00000000..d6fe32fa --- /dev/null +++ b/scripts/mobiles/dynamicgroups/huurton_group_1.py @@ -0,0 +1,22 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('huurton') + mobileTemplates.add('huurton_bloodhunter') + mobileTemplates.add('huurton_howler') + mobileTemplates.add('huurton_huntress') + mobileTemplates.add('huurton_matron') + mobileTemplates.add('huurton_reaper') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(-3) + dynamicGroup.setName('huurton_group_1') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setMinSpawnDistance(150) + core.spawnService.addDynamicGroup('huurton_group_1', dynamicGroup) + return diff --git a/scripts/mobiles/dynamicgroups/huurton_group_2.py b/scripts/mobiles/dynamicgroups/huurton_group_2.py new file mode 100644 index 00000000..e66380e5 --- /dev/null +++ b/scripts/mobiles/dynamicgroups/huurton_group_2.py @@ -0,0 +1,20 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('huurton_bloodhunter') + mobileTemplates.add('huurton_howler') + mobileTemplates.add('huurton_huntress') + mobileTemplates.add('huurton_reaper') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(-3) + dynamicGroup.setName('huurton_group_2') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setMinSpawnDistance(150) + core.spawnService.addDynamicGroup('huurton_group_2', dynamicGroup) + return diff --git a/scripts/mobiles/dynamicgroups/jantas_nw_group_1.py b/scripts/mobiles/dynamicgroups/jantas_nw_group_1.py new file mode 100644 index 00000000..eca673e4 --- /dev/null +++ b/scripts/mobiles/dynamicgroups/jantas_nw_group_1.py @@ -0,0 +1,28 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('janta_clan_leader') + mobileTemplates.add('janta_harvester') + mobileTemplates.add('janta_herbalist') + mobileTemplates.add('janta_hunter') + mobileTemplates.add('janta_loreweaver') + mobileTemplates.add('janta_primalist') + mobileTemplates.add('janta_rockshaper') + mobileTemplates.add('janta_scout') + mobileTemplates.add('janta_shaman') + mobileTemplates.add('janta_soothsayer') + mobileTemplates.add('janta_tribesman') + mobileTemplates.add('janta_warrior') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(-3) + dynamicGroup.setName('jantas_nw_group_1') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setMinSpawnDistance(150) + core.spawnService.addDynamicGroup('jantas_nw_group_1', dynamicGroup) + return diff --git a/scripts/mobiles/dynamicgroups/kunga_central_group_1.py b/scripts/mobiles/dynamicgroups/kunga_central_group_1.py new file mode 100644 index 00000000..2c59e7c3 --- /dev/null +++ b/scripts/mobiles/dynamicgroups/kunga_central_group_1.py @@ -0,0 +1,28 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('kunga_clan_leader') + mobileTemplates.add('kunga_clan_primalist') + mobileTemplates.add('kunga_harvester') + mobileTemplates.add('kunga_herbalist') + mobileTemplates.add('kunga_hunter') + mobileTemplates.add('kunga_loreweaver') + mobileTemplates.add('kunga_rockshaper') + mobileTemplates.add('kunga_scout') + mobileTemplates.add('kunga_shaman') + mobileTemplates.add('kunga_soothsayer') + mobileTemplates.add('kunga_tribe_member') + mobileTemplates.add('kunga_warrior') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(-3) + dynamicGroup.setName('kunga_central_group_1') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setMinSpawnDistance(150) + core.spawnService.addDynamicGroup('kunga_central_group_1', dynamicGroup) + return diff --git a/scripts/mobiles/dynamicgroups/mokk_group_1.py b/scripts/mobiles/dynamicgroups/mokk_group_1.py new file mode 100644 index 00000000..ceb31446 --- /dev/null +++ b/scripts/mobiles/dynamicgroups/mokk_group_1.py @@ -0,0 +1,28 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('mokk_clan_leader') + mobileTemplates.add('mokk_clan_primalist') + mobileTemplates.add('mokk_harvester') + mobileTemplates.add('mokk_herbalist') + mobileTemplates.add('mokk_hunter') + mobileTemplates.add('mokk_loreweaver') + mobileTemplates.add('mokk_rockshaper') + mobileTemplates.add('mokk_scout') + mobileTemplates.add('mokk_shaman') + mobileTemplates.add('mokk_soothsayer') + mobileTemplates.add('mokk_tribesman') + mobileTemplates.add('mokk_warrior') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(-3) + dynamicGroup.setName('mokk_group_1') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setMinSpawnDistance(150) + core.spawnService.addDynamicGroup('mokk_group_1', dynamicGroup) + return diff --git a/scripts/mobiles/dynamicgroups/nightsisters_dyn_1.py b/scripts/mobiles/dynamicgroups/nightsisters_dyn_1.py new file mode 100644 index 00000000..90504a9b --- /dev/null +++ b/scripts/mobiles/dynamicgroups/nightsisters_dyn_1.py @@ -0,0 +1,24 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('nightsister_initiate') + mobileTemplates.add('nightsister_outcast') + mobileTemplates.add('nightsister_protector') + mobileTemplates.add('nightsister_ranger') + mobileTemplates.add('nightsister_sentinel') + mobileTemplates.add('nightsister_sentry') + mobileTemplates.add('nightsister_spell_weaver') + mobileTemplates.add('nightsister_stalker') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(-5) + dynamicGroup.setName('nightsisters_dyn_1') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setMinSpawnDistance(100) + core.spawnService.addDynamicGroup('nightsisters_dyn_1', dynamicGroup) + return diff --git a/scripts/mobiles/dynamicgroups/piket_longhorn_group_1.py b/scripts/mobiles/dynamicgroups/piket_longhorn_group_1.py new file mode 100644 index 00000000..6e5da709 --- /dev/null +++ b/scripts/mobiles/dynamicgroups/piket_longhorn_group_1.py @@ -0,0 +1,18 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('piket_longhorn') + mobileTemplates.add('piket_longhorn_female') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(-3) + dynamicGroup.setName('piket_longhorn_group_1') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setMinSpawnDistance(150) + core.spawnService.addDynamicGroup('piket_longhorn_group_1', dynamicGroup) + return diff --git a/scripts/mobiles/dynamicgroups/piket_plains_walker_group.py b/scripts/mobiles/dynamicgroups/piket_plains_walker_group.py new file mode 100644 index 00000000..2d6914b7 --- /dev/null +++ b/scripts/mobiles/dynamicgroups/piket_plains_walker_group.py @@ -0,0 +1,20 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('piket_plains_walker') + mobileTemplates.add('piket_plains_walker') + mobileTemplates.add('piket_plains_walker') + mobileTemplates.add('piket_plains_walker') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(-3) + dynamicGroup.setName('piket_plains_walker_group') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setMinSpawnDistance(150) + core.spawnService.addDynamicGroup('piket_plains_walker_group', dynamicGroup) + return diff --git a/scripts/mobiles/dynamicgroups/quenker_group_south_1.py b/scripts/mobiles/dynamicgroups/quenker_group_south_1.py new file mode 100644 index 00000000..c7a7382e --- /dev/null +++ b/scripts/mobiles/dynamicgroups/quenker_group_south_1.py @@ -0,0 +1,18 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('quenker_ravager') + mobileTemplates.add('quenker_relic_reaper') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(-3) + dynamicGroup.setName('quenker_group_south_1') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setMinSpawnDistance(150) + core.spawnService.addDynamicGroup('quenker_group_south_1', dynamicGroup) + return diff --git a/scripts/mobiles/dynamicgroups/quenker_relic_reaper_group.py b/scripts/mobiles/dynamicgroups/quenker_relic_reaper_group.py new file mode 100644 index 00000000..ce21e847 --- /dev/null +++ b/scripts/mobiles/dynamicgroups/quenker_relic_reaper_group.py @@ -0,0 +1,17 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('quenker_relic_reaper') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(-3) + dynamicGroup.setName('quenker_relic_reaper_group') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setMinSpawnDistance(150) + core.spawnService.addDynamicGroup('quenker_relic_reaper_group', dynamicGroup) + return diff --git a/scripts/mobiles/dynamicgroups/smc_dyn_1.py b/scripts/mobiles/dynamicgroups/smc_dyn_1.py new file mode 100644 index 00000000..ecc20a13 --- /dev/null +++ b/scripts/mobiles/dynamicgroups/smc_dyn_1.py @@ -0,0 +1,24 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('singing_mountain_clan_sentry') + mobileTemplates.add('singing_mtn_clan_dragoon') + mobileTemplates.add('singing_mtn_clan_guardian') + mobileTemplates.add('singing_mtn_clan_huntress') + mobileTemplates.add('singing_mtn_clan_initiate') + mobileTemplates.add('singing_mtn_clan_outcast') + mobileTemplates.add('singing_mtn_clan_scout') + mobileTemplates.add('singing_mtn_clan_slave') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(-5) + dynamicGroup.setName('smc_dyn_1') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setMinSpawnDistance(60) + core.spawnService.addDynamicGroup('smc_dyn_1', dynamicGroup) + return diff --git a/scripts/mobiles/dynamicgroups/thune_group_2.py b/scripts/mobiles/dynamicgroups/thune_group_2.py new file mode 100644 index 00000000..0be9a58f --- /dev/null +++ b/scripts/mobiles/dynamicgroups/thune_group_2.py @@ -0,0 +1,19 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('thune') + mobileTemplates.add('thune_grassland_guardian') + mobileTemplates.add('thune_herd_leader') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(-3) + dynamicGroup.setName('thune_group_2') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setMinSpawnDistance(150) + core.spawnService.addDynamicGroup('thune_group_2', dynamicGroup) + return diff --git a/scripts/mobiles/dynamicgroups/thunes_1.py b/scripts/mobiles/dynamicgroups/thunes_1.py new file mode 100644 index 00000000..87f32125 --- /dev/null +++ b/scripts/mobiles/dynamicgroups/thunes_1.py @@ -0,0 +1,19 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('mammoth_thune') + mobileTemplates.add('thune') + mobileTemplates.add('thune_herd_leader') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(-3) + dynamicGroup.setName('thunes_1') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setMinSpawnDistance(150) + core.spawnService.addDynamicGroup('thunes_1', dynamicGroup) + return diff --git a/scripts/mobiles/dynamicgroups/voritor_nw_group_1.py b/scripts/mobiles/dynamicgroups/voritor_nw_group_1.py new file mode 100644 index 00000000..6e2e927c --- /dev/null +++ b/scripts/mobiles/dynamicgroups/voritor_nw_group_1.py @@ -0,0 +1,17 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('voritor_dasher') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(-3) + dynamicGroup.setName('graul_mauler_nw_group_1') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setMinSpawnDistance(150) + core.spawnService.addDynamicGroup('voritor_nw_group_1', dynamicGroup) + return diff --git a/scripts/mobiles/dynamicgroups/voritors_east_group_1.py b/scripts/mobiles/dynamicgroups/voritors_east_group_1.py new file mode 100644 index 00000000..db34fc32 --- /dev/null +++ b/scripts/mobiles/dynamicgroups/voritors_east_group_1.py @@ -0,0 +1,21 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('horned_voritor_jungle_lizard') + mobileTemplates.add('vexed_voritor_lizard') + mobileTemplates.add('voritor_dasher') + mobileTemplates.add('voritor_lizard') + mobileTemplates.add('spiked_slasher') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(-3) + dynamicGroup.setName('voritors_east_group_1') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setMinSpawnDistance(150) + core.spawnService.addDynamicGroup('voritors_east_group_1', dynamicGroup) + return diff --git a/scripts/mobiles/dynamicgroups/voritors_wild_1.py b/scripts/mobiles/dynamicgroups/voritors_wild_1.py new file mode 100644 index 00000000..7bd480b2 --- /dev/null +++ b/scripts/mobiles/dynamicgroups/voritors_wild_1.py @@ -0,0 +1,18 @@ +import sys +from services.spawn import DynamicSpawnGroup +from services.spawn import MobileTemplate +from java.util import Vector + +def addDynamicGroup(core): + dynamicGroup = DynamicSpawnGroup() + mobileTemplates = Vector() + mobileTemplates.add('slinking_voritor_hunter') + mobileTemplates.add('horned_voritor_jungle_lizard') + dynamicGroup.setMobiles(mobileTemplates) + dynamicGroup.setGroupMembersNumber(1) + dynamicGroup.setName('voritors_wild_1') + dynamicGroup.setMaxSpawns(-1) + dynamicGroup.setGroupMembersNumber(-5) + dynamicGroup.setMinSpawnDistance(150) + core.spawnService.addDynamicGroup('voritors_wild_1', dynamicGroup) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/aged_lantern_bird.py b/scripts/mobiles/endor/aged_lantern_bird.py new file mode 100644 index 00000000..b0245822 --- /dev/null +++ b/scripts/mobiles/endor/aged_lantern_bird.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('aged_lantern_bird') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(41) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(46) + mobileTemplate.setSocialGroup("lantern") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_lantern.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('aged_lantern_bird', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/arachne_hatchling.py b/scripts/mobiles/endor/arachne_hatchling.py new file mode 100644 index 00000000..998d667a --- /dev/null +++ b/scripts/mobiles/endor/arachne_hatchling.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('arachne_hatchling') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(1) + mobileTemplate.setSocialGroup("arachne") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_arachne.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('arachne_hatchling', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/arachne_queen.py b/scripts/mobiles/endor/arachne_queen.py new file mode 100644 index 00000000..e255f9e4 --- /dev/null +++ b/scripts/mobiles/endor/arachne_queen.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('queen_arachne') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(60) + mobileTemplate.setSocialGroup("arachne") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_arachne.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('arachne_queen', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/arachne_webmaster.py b/scripts/mobiles/endor/arachne_webmaster.py new file mode 100644 index 00000000..d0539151 --- /dev/null +++ b/scripts/mobiles/endor/arachne_webmaster.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('arachne_webmaster') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(30) + mobileTemplate.setSocialGroup("arachne") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_arachne.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('arachne_webmaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/arachne_widow.py b/scripts/mobiles/endor/arachne_widow.py new file mode 100644 index 00000000..e7f858bf --- /dev/null +++ b/scripts/mobiles/endor/arachne_widow.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('arachne_widow') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(30) + mobileTemplate.setSocialGroup("arachne") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + + templates = Vector() + templates.add('object/mobile/shared_arachne.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('arachne_widow', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/archaic_gondula_ritualist.py b/scripts/mobiles/endor/archaic_gondula_ritualist.py new file mode 100644 index 00000000..4d2b3981 --- /dev/null +++ b/scripts/mobiles/endor/archaic_gondula_ritualist.py @@ -0,0 +1,72 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('archaid_gondula_ritualist') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('archaic_gondula_ritualist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/archaic_jinda_ritualist.py b/scripts/mobiles/endor/archaic_jinda_ritualist.py new file mode 100644 index 00000000..d432d38d --- /dev/null +++ b/scripts/mobiles/endor/archaic_jinda_ritualist.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('archaic_jinda_ritualist') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('archaic_jinda_ritualist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/archaic_panshee_ritualist.py b/scripts/mobiles/endor/archaic_panshee_ritualist.py new file mode 100644 index 00000000..6d8be713 --- /dev/null +++ b/scripts/mobiles/endor/archaic_panshee_ritualist.py @@ -0,0 +1,71 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('archaic_panshee_ritualist') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('archaic_panshee_ritualist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bark_mite_burrower.py b/scripts/mobiles/endor/bark_mite_burrower.py new file mode 100644 index 00000000..ae677c2a --- /dev/null +++ b/scripts/mobiles/endor/bark_mite_burrower.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bark_mite_burrower') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("bark mite") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bark_mite_burrower', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bark_mite_burrower_collector.py b/scripts/mobiles/endor/bark_mite_burrower_collector.py new file mode 100644 index 00000000..aa66d47c --- /dev/null +++ b/scripts/mobiles/endor/bark_mite_burrower_collector.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bark_mite_burrower') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("bark mite") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bark_mite_burrower_collector', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bark_mite_burrower_drone.py b/scripts/mobiles/endor/bark_mite_burrower_drone.py new file mode 100644 index 00000000..44084b2c --- /dev/null +++ b/scripts/mobiles/endor/bark_mite_burrower_drone.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bark_mite_burrower_drone') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("bark mite") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bark_mite_burrower_drone', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bark_mite_burrower_swarmling.py b/scripts/mobiles/endor/bark_mite_burrower_swarmling.py new file mode 100644 index 00000000..3beb10f2 --- /dev/null +++ b/scripts/mobiles/endor/bark_mite_burrower_swarmling.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bark_mite_burrower_swarmling') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.7) + mobileTemplate.setSocialGroup("bark mite") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bark_mite_burrower_swarmling', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bark_mite_burrower_worker.py b/scripts/mobiles/endor/bark_mite_burrower_worker.py new file mode 100644 index 00000000..58eebafb --- /dev/null +++ b/scripts/mobiles/endor/bark_mite_burrower_worker.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bark_mite_burrower_worker') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("bark mite") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bark_mite_burrower_worker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bedraggled_korga_laborer.py b/scripts/mobiles/endor/bedraggled_korga_laborer.py new file mode 100644 index 00000000..525c5c62 --- /dev/null +++ b/scripts/mobiles/endor/bedraggled_korga_laborer.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bedraggled_korga_laborer') + mobileTemplate.setLevel(74) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('bedraggled_korga_laborer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bedraggled_pubam_laborer.py b/scripts/mobiles/endor/bedraggled_pubam_laborer.py new file mode 100644 index 00000000..bf574598 --- /dev/null +++ b/scripts/mobiles/endor/bedraggled_pubam_laborer.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bedraggled_pubam_laborer') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('bedraggled_pubam_laborer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/beguilding_korga_scout.py b/scripts/mobiles/endor/beguilding_korga_scout.py new file mode 100644 index 00000000..54990abf --- /dev/null +++ b/scripts/mobiles/endor/beguilding_korga_scout.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('beguiling_korga_scout') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('beguiling_korga_scout', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/beguiling_donkuwah_scout.py b/scripts/mobiles/endor/beguiling_donkuwah_scout.py new file mode 100644 index 00000000..18f80d28 --- /dev/null +++ b/scripts/mobiles/endor/beguiling_donkuwah_scout.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('beguiling_donkuwah_scout') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('beguiling_donkuwah_scout', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/beguiling_pubam_scout.py b/scripts/mobiles/endor/beguiling_pubam_scout.py new file mode 100644 index 00000000..197ae8c4 --- /dev/null +++ b/scripts/mobiles/endor/beguiling_pubam_scout.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('beguiling_pubam_scout') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setStalker(False) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('beguiling_pubam_scout', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/berserk_marauder.py b/scripts/mobiles/endor/berserk_marauder.py new file mode 100644 index 00000000..f58a0b69 --- /dev/null +++ b/scripts/mobiles/endor/berserk_marauder.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('berserk_marauder') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("marauder") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_marauder_male_01.iff') + templates.add('object/mobile/shared_marauder_male_02.iff') + templates.add('object/mobile/shared_marauder_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_polearm_vibro_axe.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('berserk_marauder', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bewitching_donkuwah_shaman.py b/scripts/mobiles/endor/bewitching_donkuwah_shaman.py new file mode 100644 index 00000000..43d2ed95 --- /dev/null +++ b/scripts/mobiles/endor/bewitching_donkuwah_shaman.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bewitching_donkuwah_shaman') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('beitching_donkuwah_shaman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bewitching_korga_dark_shaman.py b/scripts/mobiles/endor/bewitching_korga_dark_shaman.py new file mode 100644 index 00000000..85382e22 --- /dev/null +++ b/scripts/mobiles/endor/bewitching_korga_dark_shaman.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bewitching_korga_dark_shaman') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('beitching_korga_dark_shaman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bewitching_pubam_dark_shaman.py b/scripts/mobiles/endor/bewitching_pubam_dark_shaman.py new file mode 100644 index 00000000..bab0d5ad --- /dev/null +++ b/scripts/mobiles/endor/bewitching_pubam_dark_shaman.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bewitching_pubam_dark_shaman') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('beitching_pubam_dark_shaman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/black_sun_assassin.py b/scripts/mobiles/endor/black_sun_assassin.py new file mode 100644 index 00000000..14ce26a2 --- /dev/null +++ b/scripts/mobiles/endor/black_sun_assassin.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('eow_mand_bunker_blksun_assassin') + mobileTemplate.setLevel(88) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("death watch") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_black_sun_assassin.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('black_sun_assassin', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/black_sun_guard.py b/scripts/mobiles/endor/black_sun_guard.py new file mode 100644 index 00000000..fdc8999e --- /dev/null +++ b/scripts/mobiles/endor/black_sun_guard.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('eow_mand_bunker_blksun_guard') + mobileTemplate.setLevel(88) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("death watch") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_black_sun_guard.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('black_sun_guard', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/black_sun_thug.py b/scripts/mobiles/endor/black_sun_thug.py new file mode 100644 index 00000000..21bdb8f4 --- /dev/null +++ b/scripts/mobiles/endor/black_sun_thug.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('eow_mand_bunker_blksun_thug') + mobileTemplate.setLevel(86) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("death watch") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_black_sun_thug.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('black_sun_thug', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/blood_drenched_merek_king.py b/scripts/mobiles/endor/blood_drenched_merek_king.py new file mode 100644 index 00000000..8e9f8d68 --- /dev/null +++ b/scripts/mobiles/endor/blood_drenched_merek_king.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('blood_drenched_merek_king') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.2) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(55) + mobileTemplate.setSocialGroup("merek") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_merek.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('blood_drenched_merek_king', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/blood_frenzied_boar_wolf.py b/scripts/mobiles/endor/blood_frenzied_boar_wolf.py new file mode 100644 index 00000000..0cab5637 --- /dev/null +++ b/scripts/mobiles/endor/blood_frenzied_boar_wolf.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('blood_frenzied_boar_wolf') + mobileTemplate.setLevel(68) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("boar wolf") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_boar_wolf.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('blood_frenzied_boar_wolf', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/blood_stained_merek.py b/scripts/mobiles/endor/blood_stained_merek.py new file mode 100644 index 00000000..936e35fd --- /dev/null +++ b/scripts/mobiles/endor/blood_stained_merek.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('blood_stained_merek') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(75) + mobileTemplate.setSocialGroup("merek") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_merek.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('blood_stained_merek', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bloodseeker_mite_drone.py b/scripts/mobiles/endor/bloodseeker_mite_drone.py new file mode 100644 index 00000000..8b1cc815 --- /dev/null +++ b/scripts/mobiles/endor/bloodseeker_mite_drone.py @@ -0,0 +1,37 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bloodseeker_mite_drone') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("bloodseeker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bloodseeker.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bloodseeker_mite_drone', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bloodseeker_mite_queen.py b/scripts/mobiles/endor/bloodseeker_mite_queen.py new file mode 100644 index 00000000..ee9dcbe5 --- /dev/null +++ b/scripts/mobiles/endor/bloodseeker_mite_queen.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bloodseeker_mite_queen') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.2) + mobileTemplate.setSocialGroup("bloodseeker") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_bloodseeker.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bloodseeker_mite_queen', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/blooming_jax.py b/scripts/mobiles/endor/blooming_jax.py new file mode 100644 index 00000000..942fa6a7 --- /dev/null +++ b/scripts/mobiles/endor/blooming_jax.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('blooming_jax') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(25) + mobileTemplate.setSocialGroup("jax") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_jax.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('blooming_jax', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/blurrg.py b/scripts/mobiles/endor/blurrg.py new file mode 100644 index 00000000..791d992b --- /dev/null +++ b/scripts/mobiles/endor/blurrg.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('blurrg') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("blurrg") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_blurrg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('blurrg', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/blurrg_hunter.py b/scripts/mobiles/endor/blurrg_hunter.py new file mode 100644 index 00000000..cba89a23 --- /dev/null +++ b/scripts/mobiles/endor/blurrg_hunter.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('blurrg_hunter') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("blurrg") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_blurrg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('blurrg_hunter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/blurrg_pup.py b/scripts/mobiles/endor/blurrg_pup.py new file mode 100644 index 00000000..e4be7a4d --- /dev/null +++ b/scripts/mobiles/endor/blurrg_pup.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('blurrg_pup') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setSocialGroup("blurrg") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_blurrg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('blurrg_pup', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/blurrg_raptor.py b/scripts/mobiles/endor/blurrg_raptor.py new file mode 100644 index 00000000..3049bce3 --- /dev/null +++ b/scripts/mobiles/endor/blurrg_raptor.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('blurrg_raptor') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("blurrg") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_blurrg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('blurrg_raptor', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/blurrg_sand_crawler.py b/scripts/mobiles/endor/blurrg_sand_crawler.py new file mode 100644 index 00000000..18bdcc45 --- /dev/null +++ b/scripts/mobiles/endor/blurrg_sand_crawler.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('blurrg_sand_crawler') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("blurrg") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_blurrg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('blurrg_sand_crawler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/blurrg_tracker.py b/scripts/mobiles/endor/blurrg_tracker.py new file mode 100644 index 00000000..7bf9d70e --- /dev/null +++ b/scripts/mobiles/endor/blurrg_tracker.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('blurrg_tracker') + mobileTemplate.setLevel(54) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("blurrg") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_blurrg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('blurrg_tracker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/blushing_jax.py b/scripts/mobiles/endor/blushing_jax.py new file mode 100644 index 00000000..5d7d64a5 --- /dev/null +++ b/scripts/mobiles/endor/blushing_jax.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('blushing_jax') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(25) + mobileTemplate.setSocialGroup("jax") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_jax.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('blushing_jax', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/boar_wolf.py b/scripts/mobiles/endor/boar_wolf.py new file mode 100644 index 00000000..ef24834a --- /dev/null +++ b/scripts/mobiles/endor/boar_wolf.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('boar_wolf') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("boar wolf") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_boar_wolf.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('boar_wolf', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/boar_wolf_cub.py b/scripts/mobiles/endor/boar_wolf_cub.py new file mode 100644 index 00000000..b3288cec --- /dev/null +++ b/scripts/mobiles/endor/boar_wolf_cub.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('boar_wolf_cub') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setSocialGroup("boar wolf") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_boar_wolf.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('boar_wolf_cub', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/boar_wolf_ravager.py b/scripts/mobiles/endor/boar_wolf_ravager.py new file mode 100644 index 00000000..e7dce369 --- /dev/null +++ b/scripts/mobiles/endor/boar_wolf_ravager.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('boar_wolf_ravager') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("boar wolf") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_boar_wolf.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('boar_wolf_ravager', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bolle_bol_bark_biter.py b/scripts/mobiles/endor/bolle_bol_bark_biter.py new file mode 100644 index 00000000..9c524a65 --- /dev/null +++ b/scripts/mobiles/endor/bolle_bol_bark_biter.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bolle_bol_bark_biter') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(300) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(180) + mobileTemplate.setSocialGroup("bolle bol") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bolle_bol.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bolle_bol_bark_biter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bolle_bol_calf.py b/scripts/mobiles/endor/bolle_bol_calf.py new file mode 100644 index 00000000..54427381 --- /dev/null +++ b/scripts/mobiles/endor/bolle_bol_calf.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bolle_bol_calf') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(300) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(180) + mobileTemplate.setSocialGroup("bolle bol") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bolle_bol.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bolle_bol_calf', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bolle_bol_colt.py b/scripts/mobiles/endor/bolle_bol_colt.py new file mode 100644 index 00000000..249e29ce --- /dev/null +++ b/scripts/mobiles/endor/bolle_bol_colt.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bolle_bol_bolt') + mobileTemplate.setLevel(57) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(300) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(180) + mobileTemplate.setSocialGroup("bolle bol") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bolle_bol.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bolle_bol_colt', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bolle_bol_female.py b/scripts/mobiles/endor/bolle_bol_female.py new file mode 100644 index 00000000..f954d854 --- /dev/null +++ b/scripts/mobiles/endor/bolle_bol_female.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bolle_bol_female') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(300) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(180) + mobileTemplate.setSocialGroup("bolle bol") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bolle_bol.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bolle_bol_female', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bolle_bol_herd_leader.py b/scripts/mobiles/endor/bolle_bol_herd_leader.py new file mode 100644 index 00000000..49519ff6 --- /dev/null +++ b/scripts/mobiles/endor/bolle_bol_herd_leader.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bolle_bol_herd_leader') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.2) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(300) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(180) + mobileTemplate.setSocialGroup("bolle bol") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bolle_bol.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bolle_bol_herd_leader', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bolle_bol_male.py b/scripts/mobiles/endor/bolle_bol_male.py new file mode 100644 index 00000000..fc1c59b5 --- /dev/null +++ b/scripts/mobiles/endor/bolle_bol_male.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bolle_bol_male') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(300) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(180) + mobileTemplate.setSocialGroup("bolle bol") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bolle_bol.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bolle_bol_male', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bolle_bol_stomper.py b/scripts/mobiles/endor/bolle_bol_stomper.py new file mode 100644 index 00000000..2276e31c --- /dev/null +++ b/scripts/mobiles/endor/bolle_bol_stomper.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bolle_bol_stomper') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(300) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(180) + mobileTemplate.setSocialGroup("bolle bol") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bolle_bol.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bolle_bol_stomper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bordok_ancient.py b/scripts/mobiles/endor/bordok_ancient.py new file mode 100644 index 00000000..6cf931b6 --- /dev/null +++ b/scripts/mobiles/endor/bordok_ancient.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bordok_ancient') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("bordok") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bordok.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bordok_ancient', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bordok_foal.py b/scripts/mobiles/endor/bordok_foal.py new file mode 100644 index 00000000..2df76fe4 --- /dev/null +++ b/scripts/mobiles/endor/bordok_foal.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bordok_foal') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setSocialGroup("bordok") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bordok.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bordok_foal', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bordok_herd_master.py b/scripts/mobiles/endor/bordok_herd_master.py new file mode 100644 index 00000000..d2580402 --- /dev/null +++ b/scripts/mobiles/endor/bordok_herd_master.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bordok_herd_master') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.2) + mobileTemplate.setSocialGroup("bordok") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bordok.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bordok_herd_master', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bordok_mare.py b/scripts/mobiles/endor/bordok_mare.py new file mode 100644 index 00000000..a9fd9e2e --- /dev/null +++ b/scripts/mobiles/endor/bordok_mare.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bordok_mare') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("bordok") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bordok.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bordok_mare', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/bounding_jax.py b/scripts/mobiles/endor/bounding_jax.py new file mode 100644 index 00000000..6655fe84 --- /dev/null +++ b/scripts/mobiles/endor/bounding_jax.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bounding_jax') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(25) + mobileTemplate.setSocialGroup("jax") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_jax.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bounding_jax', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/competent_gondula_ritualist.py b/scripts/mobiles/endor/competent_gondula_ritualist.py new file mode 100644 index 00000000..1e1ae82d --- /dev/null +++ b/scripts/mobiles/endor/competent_gondula_ritualist.py @@ -0,0 +1,71 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('competent_gondula_ritualist') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('competent_gondula_ritualist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/competent_jinda_ritualist.py b/scripts/mobiles/endor/competent_jinda_ritualist.py new file mode 100644 index 00000000..0e665bcb --- /dev/null +++ b/scripts/mobiles/endor/competent_jinda_ritualist.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('competent_jinda_ritualist') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('competent_jinda_ritualist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/competent_panshee_ritualist.py b/scripts/mobiles/endor/competent_panshee_ritualist.py new file mode 100644 index 00000000..4bb444fd --- /dev/null +++ b/scripts/mobiles/endor/competent_panshee_ritualist.py @@ -0,0 +1,70 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('competent_panshee_ritualist') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('competent_panshee_ritualist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/cowardly_gurreck.py b/scripts/mobiles/endor/cowardly_gurreck.py new file mode 100644 index 00000000..c7c7422f --- /dev/null +++ b/scripts/mobiles/endor/cowardly_gurreck.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('cowardly_gurreck') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("gurreck") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_gurreck.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('cowardly_gurreck', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/crafty_donkuwah_scout.py b/scripts/mobiles/endor/crafty_donkuwah_scout.py new file mode 100644 index 00000000..19a54232 --- /dev/null +++ b/scripts/mobiles/endor/crafty_donkuwah_scout.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crafty_donkuwah_scout') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('crafty_donkuwah_scout', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/crafty_korga_scout.py b/scripts/mobiles/endor/crafty_korga_scout.py new file mode 100644 index 00000000..8c7693e5 --- /dev/null +++ b/scripts/mobiles/endor/crafty_korga_scout.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crafty_korga_scout') + mobileTemplate.setLevel(74) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('crafty_korga_scout', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/crafty_pubam_scout.py b/scripts/mobiles/endor/crafty_pubam_scout.py new file mode 100644 index 00000000..28ac20b0 --- /dev/null +++ b/scripts/mobiles/endor/crafty_pubam_scout.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crafty_pubam_scout') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('crafty_pubam_scout', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/crazed_gurreck.py b/scripts/mobiles/endor/crazed_gurreck.py new file mode 100644 index 00000000..25681b8f --- /dev/null +++ b/scripts/mobiles/endor/crazed_gurreck.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crazed_gurreck') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("gurreck") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_gurreck.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gurreck', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/crimson_blurrg.py b/scripts/mobiles/endor/crimson_blurrg.py new file mode 100644 index 00000000..4658189c --- /dev/null +++ b/scripts/mobiles/endor/crimson_blurrg.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crimson_blurrg') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("blurrg") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_blurrg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('crimson_blurrg', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/delirious_merek_avenger.py b/scripts/mobiles/endor/delirious_merek_avenger.py new file mode 100644 index 00000000..28f5c78e --- /dev/null +++ b/scripts/mobiles/endor/delirious_merek_avenger.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('delirious_merek_avenger') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(45) + mobileTemplate.setSocialGroup("merek") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_merek.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('delirious_merek_avenger', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/deranged_mantigrue.py b/scripts/mobiles/endor/deranged_mantigrue.py new file mode 100644 index 00000000..26c25be3 --- /dev/null +++ b/scripts/mobiles/endor/deranged_mantigrue.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('deranged_mantigrue') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("mantigrue") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_condor_dragon.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('deranged_mantigrue', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/deranged_ravisher.py b/scripts/mobiles/endor/deranged_ravisher.py new file mode 100644 index 00000000..a11c2b47 --- /dev/null +++ b/scripts/mobiles/endor/deranged_ravisher.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('squill_deranged_ravisher') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("squill") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_squill.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('deranged_ravisher', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/desert_gurreck_charger.py b/scripts/mobiles/endor/desert_gurreck_charger.py new file mode 100644 index 00000000..02afdbec --- /dev/null +++ b/scripts/mobiles/endor/desert_gurreck_charger.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('desert_gurreck_charger') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("gurreck") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_gurreck.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('desert_gurreck_charger', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/desert_scavenger.py b/scripts/mobiles/endor/desert_scavenger.py new file mode 100644 index 00000000..74ec2356 --- /dev/null +++ b/scripts/mobiles/endor/desert_scavenger.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('borgle_desert_runner') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(5) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(5) + mobileTemplate.setSocialGroup("borgle") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_borgle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('desert_scavenger', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/diminutive_bounding_jax.py b/scripts/mobiles/endor/diminutive_bounding_jax.py new file mode 100644 index 00000000..fe7fd2c9 --- /dev/null +++ b/scripts/mobiles/endor/diminutive_bounding_jax.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('jax_bounding_dwarf') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(25) + mobileTemplate.setSocialGroup("jax") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_jax.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('diminutive_bounding_jax', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/diseased_blurrg.py b/scripts/mobiles/endor/diseased_blurrg.py new file mode 100644 index 00000000..8ed0af4a --- /dev/null +++ b/scripts/mobiles/endor/diseased_blurrg.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('diseased_blurrg') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("self") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_blurrg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('diseased_blurrg', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/domesticated_blurrg.py b/scripts/mobiles/endor/domesticated_blurrg.py new file mode 100644 index 00000000..387efca4 --- /dev/null +++ b/scripts/mobiles/endor/domesticated_blurrg.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('domesticated_blurrg') + mobileTemplate.setLevel(20) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.8) + mobileTemplate.setSocialGroup("self") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_blurrg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + + core.spawnService.addMobileTemplate('domesticated_blurrg', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/domesticated_merek.py b/scripts/mobiles/endor/domesticated_merek.py new file mode 100644 index 00000000..ef5ca26b --- /dev/null +++ b/scripts/mobiles/endor/domesticated_merek.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('domesticated_merek') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.8) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(45) + mobileTemplate.setSocialGroup("self") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_merek.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('domesticated_merek', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/donkuwah_battlelord.py b/scripts/mobiles/endor/donkuwah_battlelord.py new file mode 100644 index 00000000..9e80467b --- /dev/null +++ b/scripts/mobiles/endor/donkuwah_battlelord.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('donkuwah_battlelord') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('donkuwah_battlelord', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/donkuwah_chieftan.py b/scripts/mobiles/endor/donkuwah_chieftan.py new file mode 100644 index 00000000..f6121fac --- /dev/null +++ b/scripts/mobiles/endor/donkuwah_chieftan.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('donkuwah_chieftan') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('donkuwah_chieftan', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/donkuwah_cub.py b/scripts/mobiles/endor/donkuwah_cub.py new file mode 100644 index 00000000..0793e545 --- /dev/null +++ b/scripts/mobiles/endor/donkuwah_cub.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('donkuwah_cub') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(.5) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('donkuwah_cub', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/donkuwah_laborer.py b/scripts/mobiles/endor/donkuwah_laborer.py new file mode 100644 index 00000000..414675c9 --- /dev/null +++ b/scripts/mobiles/endor/donkuwah_laborer.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('donkuwah_laborer') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('donkuwah_laborer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/donkuwah_scout.py b/scripts/mobiles/endor/donkuwah_scout.py new file mode 100644 index 00000000..12af41ef --- /dev/null +++ b/scripts/mobiles/endor/donkuwah_scout.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('donkuwah_scout') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('donkuwah_scout', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/donkuwah_shaman.py b/scripts/mobiles/endor/donkuwah_shaman.py new file mode 100644 index 00000000..0915ecc8 --- /dev/null +++ b/scripts/mobiles/endor/donkuwah_shaman.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('donkuwah_shaman') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('donkuwah_shaman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/donkuwah_spiritmaster.py b/scripts/mobiles/endor/donkuwah_spiritmaster.py new file mode 100644 index 00000000..38054cb5 --- /dev/null +++ b/scripts/mobiles/endor/donkuwah_spiritmaster.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('donkuwah_spiritmaster') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('donkuwah_spiritmaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/donkuwah_tribesman.py b/scripts/mobiles/endor/donkuwah_tribesman.py new file mode 100644 index 00000000..46a56efd --- /dev/null +++ b/scripts/mobiles/endor/donkuwah_tribesman.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('donkuwah_tribesman') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('donkuwah_tribesman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/dulok_outcast.py b/scripts/mobiles/endor/dulok_outcast.py new file mode 100644 index 00000000..12ca3972 --- /dev/null +++ b/scripts/mobiles/endor/dulok_outcast.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dulok_outcast') + mobileTemplate.setLevel(72) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('dulok outpost') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('dulok_outcast', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/dulok_outcast_raider.py b/scripts/mobiles/endor/dulok_outcast_raider.py new file mode 100644 index 00000000..b8c794a4 --- /dev/null +++ b/scripts/mobiles/endor/dulok_outcast_raider.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dulok_outcast_raider') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('dulok outpost') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('dulok_outcast_raider', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/eerie_donkuwah_spiritmaster.py b/scripts/mobiles/endor/eerie_donkuwah_spiritmaster.py new file mode 100644 index 00000000..8d11a81c --- /dev/null +++ b/scripts/mobiles/endor/eerie_donkuwah_spiritmaster.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('eerie_donkuwah_spiritmaster') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('eerie_donkuwah_spiritmaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/eerie_korga_spiritmaster.py b/scripts/mobiles/endor/eerie_korga_spiritmaster.py new file mode 100644 index 00000000..e058170a --- /dev/null +++ b/scripts/mobiles/endor/eerie_korga_spiritmaster.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('eerie_korga_spiritmaster') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('eerie_korga_spiritmaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/eerie_pubam_spiritmaster.py b/scripts/mobiles/endor/eerie_pubam_spiritmaster.py new file mode 100644 index 00000000..53a236ab --- /dev/null +++ b/scripts/mobiles/endor/eerie_pubam_spiritmaster.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('eerie_pubam_spiritmaster') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('eerie_pubam_spiritmaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/elder_hanadak_matriarch.py b/scripts/mobiles/endor/elder_hanadak_matriarch.py new file mode 100644 index 00000000..1e76fbd1 --- /dev/null +++ b/scripts/mobiles/endor/elder_hanadak_matriarch.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('elder_hanadak_matriarch') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.2) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(35) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(35) + mobileTemplate.setSocialGroup("hanadak") + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_hanadak.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elder_hanadak_matriarch', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/elder_squall.py b/scripts/mobiles/endor/elder_squall.py new file mode 100644 index 00000000..90784af3 --- /dev/null +++ b/scripts/mobiles/endor/elder_squall.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('elder_squall') + mobileTemplate.setLevel(72) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(12) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(8) + mobileTemplate.setSocialGroup("squall") + mobileTemplate.setAssistRange(0) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_squall.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elder_squall', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/enraged_donkuwah.py b/scripts/mobiles/endor/enraged_donkuwah.py new file mode 100644 index 00000000..38330b98 --- /dev/null +++ b/scripts/mobiles/endor/enraged_donkuwah.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('enraged_donkuwah') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('enraged_donkuwah', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/enraged_korga.py b/scripts/mobiles/endor/enraged_korga.py new file mode 100644 index 00000000..4a1230aa --- /dev/null +++ b/scripts/mobiles/endor/enraged_korga.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('enraged_korga') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('enraged_korga', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/enraged_pubam.py b/scripts/mobiles/endor/enraged_pubam.py new file mode 100644 index 00000000..99cf03ea --- /dev/null +++ b/scripts/mobiles/endor/enraged_pubam.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('enraged_pubam') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('enraged_pubam', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/erratic_swirl_prong.py b/scripts/mobiles/endor/erratic_swirl_prong.py new file mode 100644 index 00000000..5fa40517 --- /dev/null +++ b/scripts/mobiles/endor/erratic_swirl_prong.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('erratic_swirl_prong') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("swirl prong") + mobileTemplate.setAssistRange(0) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_swirl_prong.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('erratic_swirl_prong', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/ewok_outcast.py b/scripts/mobiles/endor/ewok_outcast.py new file mode 100644 index 00000000..28f721c5 --- /dev/null +++ b/scripts/mobiles/endor/ewok_outcast.py @@ -0,0 +1,70 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('ewok_outcast') + mobileTemplate.setLevel(72) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('ewok outcast') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/creature/shared_base_ranged_weapon.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('ewok_outcast', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/ewok_outcast_raider.py b/scripts/mobiles/endor/ewok_outcast_raider.py new file mode 100644 index 00000000..1b8812ee --- /dev/null +++ b/scripts/mobiles/endor/ewok_outcast_raider.py @@ -0,0 +1,70 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('ewok_outcast_raider') + mobileTemplate.setLevel(73) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('ewok outcast') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/creature/shared_base_ranged_weapon.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('ewok_outcast_raider', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/feral_marauder.py b/scripts/mobiles/endor/feral_marauder.py new file mode 100644 index 00000000..46722d05 --- /dev/null +++ b/scripts/mobiles/endor/feral_marauder.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('feral_marauder') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("marauder") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_marauder_male_01.iff') + templates.add('object/mobile/shared_marauder_male_02.iff') + templates.add('object/mobile/shared_marauder_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('feral_marauder', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/festering_squill.py b/scripts/mobiles/endor/festering_squill.py new file mode 100644 index 00000000..2b90129c --- /dev/null +++ b/scripts/mobiles/endor/festering_squill.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('festering_squill') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("squill") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_squill.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('festering_squill', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/fierce_borgle.py b/scripts/mobiles/endor/fierce_borgle.py new file mode 100644 index 00000000..f57174d8 --- /dev/null +++ b/scripts/mobiles/endor/fierce_borgle.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fierce_borgle') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(5) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(5) + mobileTemplate.setSocialGroup("borgle") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_borgle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('fierce_borgle', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/foul_donkuwah_laborer.py b/scripts/mobiles/endor/foul_donkuwah_laborer.py new file mode 100644 index 00000000..a00d514b --- /dev/null +++ b/scripts/mobiles/endor/foul_donkuwah_laborer.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('foul_donkuwah_laborer') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('foul_donkuwah_laborer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/foul_korga_laborer.py b/scripts/mobiles/endor/foul_korga_laborer.py new file mode 100644 index 00000000..c72a1d21 --- /dev/null +++ b/scripts/mobiles/endor/foul_korga_laborer.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('foul_korga_laborer') + mobileTemplate.setLevel(74) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('foul_korga_laborer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/foul_pubam_laborer.py b/scripts/mobiles/endor/foul_pubam_laborer.py new file mode 100644 index 00000000..0af2e911 --- /dev/null +++ b/scripts/mobiles/endor/foul_pubam_laborer.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('foul_pubam_laborer') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('foul_pubam_laborer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/frenzied_donkuwah.py b/scripts/mobiles/endor/frenzied_donkuwah.py new file mode 100644 index 00000000..b87bc001 --- /dev/null +++ b/scripts/mobiles/endor/frenzied_donkuwah.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('frenzied_donkuwah') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('frenzied_donkuwah', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/frenzied_korga.py b/scripts/mobiles/endor/frenzied_korga.py new file mode 100644 index 00000000..aa8c93c5 --- /dev/null +++ b/scripts/mobiles/endor/frenzied_korga.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('frenzied_korga') + mobileTemplate.setLevel(75) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('frenzied_korga', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/frenzied_marauder.py b/scripts/mobiles/endor/frenzied_marauder.py new file mode 100644 index 00000000..a577e756 --- /dev/null +++ b/scripts/mobiles/endor/frenzied_marauder.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('frenzied_marauder') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("marauder") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_marauder_male_01.iff') + templates.add('object/mobile/shared_marauder_male_02.iff') + templates.add('object/mobile/shared_marauder_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('frenzied_marauder', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/frenzied_pubam.py b/scripts/mobiles/endor/frenzied_pubam.py new file mode 100644 index 00000000..4c0aeeb6 --- /dev/null +++ b/scripts/mobiles/endor/frenzied_pubam.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('frenzied_pubam') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('frenzied_pubam', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gifted_gondula_shaman.py b/scripts/mobiles/endor/gifted_gondula_shaman.py new file mode 100644 index 00000000..f69e3769 --- /dev/null +++ b/scripts/mobiles/endor/gifted_gondula_shaman.py @@ -0,0 +1,72 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gifted_gondula_shaman') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gifted_gondula_shaman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gifted_jinda_shaman.py b/scripts/mobiles/endor/gifted_jinda_shaman.py new file mode 100644 index 00000000..45207a4c --- /dev/null +++ b/scripts/mobiles/endor/gifted_jinda_shaman.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gifted_jinda_shaman') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gifted_jinda_shaman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gifted_panshee_shaman.py b/scripts/mobiles/endor/gifted_panshee_shaman.py new file mode 100644 index 00000000..7078622d --- /dev/null +++ b/scripts/mobiles/endor/gifted_panshee_shaman.py @@ -0,0 +1,71 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gifted_panshee_shaman') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gifted_panshee_shaman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gleaming_lantern_bird.py b/scripts/mobiles/endor/gleaming_lantern_bird.py new file mode 100644 index 00000000..56d8a363 --- /dev/null +++ b/scripts/mobiles/endor/gleaming_lantern_bird.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gleaming_lantern_bird') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(41) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(46) + mobileTemplate.setSocialGroup("lantern") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_lantern_bird.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gleaming_lantern_bird', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gnarled_donkuwah_spiritmaster.py b/scripts/mobiles/endor/gnarled_donkuwah_spiritmaster.py new file mode 100644 index 00000000..1ebfe172 --- /dev/null +++ b/scripts/mobiles/endor/gnarled_donkuwah_spiritmaster.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gnarled_donkuwah_spiritmaster') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gnarled_donkuwah_spiritmaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gnarled_korga_spiritmaster.py b/scripts/mobiles/endor/gnarled_korga_spiritmaster.py new file mode 100644 index 00000000..b78e3bf4 --- /dev/null +++ b/scripts/mobiles/endor/gnarled_korga_spiritmaster.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gnarled_korga_spiritmaster') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gnarled_korga_spiritmaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gnarled_pubam_spiritmaster.py b/scripts/mobiles/endor/gnarled_pubam_spiritmaster.py new file mode 100644 index 00000000..e915bb47 --- /dev/null +++ b/scripts/mobiles/endor/gnarled_pubam_spiritmaster.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gnarled_pubam_spiritmaster') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gnarled_pubam_spiritmaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gondula_chief.py b/scripts/mobiles/endor/gondula_chief.py new file mode 100644 index 00000000..043c77da --- /dev/null +++ b/scripts/mobiles/endor/gondula_chief.py @@ -0,0 +1,71 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gondula_chief') + mobileTemplate.setLevel(81) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gondula_chief', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gondula_cub.py b/scripts/mobiles/endor/gondula_cub.py new file mode 100644 index 00000000..24dcf5dd --- /dev/null +++ b/scripts/mobiles/endor/gondula_cub.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gondula_cub') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gondula_cub', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gondula_elder.py b/scripts/mobiles/endor/gondula_elder.py new file mode 100644 index 00000000..98d374f9 --- /dev/null +++ b/scripts/mobiles/endor/gondula_elder.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gondula_elder') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gondula_elder', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gondula_elder_worker.py b/scripts/mobiles/endor/gondula_elder_worker.py new file mode 100644 index 00000000..31112bcc --- /dev/null +++ b/scripts/mobiles/endor/gondula_elder_worker.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gondula_elder_worker') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gondula_elder_worker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gondula_kelbe.py b/scripts/mobiles/endor/gondula_kelbe.py new file mode 100644 index 00000000..59637cd7 --- /dev/null +++ b/scripts/mobiles/endor/gondula_kelbe.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gondula_kelbe') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gondula_kelbe', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gondula_loremaster.py b/scripts/mobiles/endor/gondula_loremaster.py new file mode 100644 index 00000000..3ef2c7cc --- /dev/null +++ b/scripts/mobiles/endor/gondula_loremaster.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gondula_loremaster') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gondula_loremaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gondula_matriarch.py b/scripts/mobiles/endor/gondula_matriarch.py new file mode 100644 index 00000000..fb44f1c8 --- /dev/null +++ b/scripts/mobiles/endor/gondula_matriarch.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gondula_matriarch') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gondula_matriarch', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gondula_outcast.py b/scripts/mobiles/endor/gondula_outcast.py new file mode 100644 index 00000000..bdf83a0e --- /dev/null +++ b/scripts/mobiles/endor/gondula_outcast.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gondula_outcast') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gondula_outcast', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gondula_ritualist.py b/scripts/mobiles/endor/gondula_ritualist.py new file mode 100644 index 00000000..be7f3924 --- /dev/null +++ b/scripts/mobiles/endor/gondula_ritualist.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gondula_ritualist') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gondula_ritualist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gondula_shaman.py b/scripts/mobiles/endor/gondula_shaman.py new file mode 100644 index 00000000..7fb1cdc3 --- /dev/null +++ b/scripts/mobiles/endor/gondula_shaman.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gondula_shaman') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gondula_shaman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gondula_tribesman.py b/scripts/mobiles/endor/gondula_tribesman.py new file mode 100644 index 00000000..6049d8c9 --- /dev/null +++ b/scripts/mobiles/endor/gondula_tribesman.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gondula_tribesman') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gondula_tribesman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gondula_veteran.py b/scripts/mobiles/endor/gondula_veteran.py new file mode 100644 index 00000000..087c94bb --- /dev/null +++ b/scripts/mobiles/endor/gondula_veteran.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gondula_veteran') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gondula_veteran', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gondula_warrior.py b/scripts/mobiles/endor/gondula_warrior.py new file mode 100644 index 00000000..926bc22d --- /dev/null +++ b/scripts/mobiles/endor/gondula_warrior.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gondula_warrior') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('gondula_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/grassland_blood_marauder.py b/scripts/mobiles/endor/grassland_blood_marauder.py new file mode 100644 index 00000000..2f638a71 --- /dev/null +++ b/scripts/mobiles/endor/grassland_blood_marauder.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('grassland_blood_marauder') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("marauder") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_marauder_male_01.iff') + templates.add('object/mobile/shared_marauder_male_02.iff') + templates.add('object/mobile/shared_marauder_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('grassland_blood_marauder', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/grassland_raider.py b/scripts/mobiles/endor/grassland_raider.py new file mode 100644 index 00000000..19b37a18 --- /dev/null +++ b/scripts/mobiles/endor/grassland_raider.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('grassland_raider') + mobileTemplate.setLevel(75) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("marauder") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_marauder_male_01.iff') + templates.add('object/mobile/shared_marauder_male_02.iff') + templates.add('object/mobile/shared_marauder_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('grassland_raider', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/grungy_donkuwah_laborer.py b/scripts/mobiles/endor/grungy_donkuwah_laborer.py new file mode 100644 index 00000000..85a8cd12 --- /dev/null +++ b/scripts/mobiles/endor/grungy_donkuwah_laborer.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('grungy_donkuwah_laborer') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(False) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('grungy_donkuwah_laborer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/grungy_korga_laborer.py b/scripts/mobiles/endor/grungy_korga_laborer.py new file mode 100644 index 00000000..fe83f4c8 --- /dev/null +++ b/scripts/mobiles/endor/grungy_korga_laborer.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('grungy_korga_laborer') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(False) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('grungy_korga_laborer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/grungy_pubam_laborer.py b/scripts/mobiles/endor/grungy_pubam_laborer.py new file mode 100644 index 00000000..fb411f6c --- /dev/null +++ b/scripts/mobiles/endor/grungy_pubam_laborer.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('grungy_pubam_laborer') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(False) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('grungy_pubam_laborer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gurreck.py b/scripts/mobiles/endor/gurreck.py new file mode 100644 index 00000000..8c8f2773 --- /dev/null +++ b/scripts/mobiles/endor/gurreck.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gurreck') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("gurreck") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_gurreck.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gurreck', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/gurreck_forest_stalker.py b/scripts/mobiles/endor/gurreck_forest_stalker.py new file mode 100644 index 00000000..e3e57611 --- /dev/null +++ b/scripts/mobiles/endor/gurreck_forest_stalker.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('woodland_gurreck') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("gurreck") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_gurreck.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gurreck_forest_stalker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/haggard_donkuwah_battlelord.py b/scripts/mobiles/endor/haggard_donkuwah_battlelord.py new file mode 100644 index 00000000..03364a19 --- /dev/null +++ b/scripts/mobiles/endor/haggard_donkuwah_battlelord.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('haggard_donkuwah_battlelord') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('haggard_donkuwah_battlelord', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/haggard_pubam_battlelord.py b/scripts/mobiles/endor/haggard_pubam_battlelord.py new file mode 100644 index 00000000..16c17892 --- /dev/null +++ b/scripts/mobiles/endor/haggard_pubam_battlelord.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('haggard_pubam_battlelord') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('haggard_pubam_battlelord', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/hanadak_ancient.py b/scripts/mobiles/endor/hanadak_ancient.py new file mode 100644 index 00000000..2bc94a65 --- /dev/null +++ b/scripts/mobiles/endor/hanadak_ancient.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('hanadak_ancient') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.2) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(40) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(40) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(40) + mobileTemplate.setSocialGroup("hanadak") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_hanadak.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('hanadak_ancient', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/hanadak_drifter.py b/scripts/mobiles/endor/hanadak_drifter.py new file mode 100644 index 00000000..fe1ab44f --- /dev/null +++ b/scripts/mobiles/endor/hanadak_drifter.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('hanadak_drifter') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(35) + mobileTemplate.setSocialGroup("bageraset") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_hanadak.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('hanadak', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/hardened_gondula_warrior.py b/scripts/mobiles/endor/hardened_gondula_warrior.py new file mode 100644 index 00000000..357a615c --- /dev/null +++ b/scripts/mobiles/endor/hardened_gondula_warrior.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('hardened_gondula_warrior') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('hardened_gondula_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/hardened_jinda_warrior.py b/scripts/mobiles/endor/hardened_jinda_warrior.py new file mode 100644 index 00000000..e39a43c8 --- /dev/null +++ b/scripts/mobiles/endor/hardened_jinda_warrior.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('hardened_jinda_warrior') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('hardened_jinda_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/hardened_panshee_warrior.py b/scripts/mobiles/endor/hardened_panshee_warrior.py new file mode 100644 index 00000000..40abb572 --- /dev/null +++ b/scripts/mobiles/endor/hardened_panshee_warrior.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('hardened_panshee_warrior') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('hardened_panshee_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/highland_remmer.py b/scripts/mobiles/endor/highland_remmer.py new file mode 100644 index 00000000..d0bdd12b --- /dev/null +++ b/scripts/mobiles/endor/highland_remmer.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('highland_remmer') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("remmer") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_remmer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureSpitAttack') + mobileTemplate.setAttacks(attacks) + + + core.spawnService.addMobileTemplate('highland_remmer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/hilltop_gurreck_hunter.py b/scripts/mobiles/endor/hilltop_gurreck_hunter.py new file mode 100644 index 00000000..e09120a4 --- /dev/null +++ b/scripts/mobiles/endor/hilltop_gurreck_hunter.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('hilltop_gurreck_hunter') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("gurreck") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_gurreck.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('hilltop_gurreck_hunter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/infuriated_roba_protector.py b/scripts/mobiles/endor/infuriated_roba_protector.py new file mode 100644 index 00000000..b4bed883 --- /dev/null +++ b/scripts/mobiles/endor/infuriated_roba_protector.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('roba_infuriated_protectorate') + mobileTemplate.setLevel(45) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("roba") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_roba.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('infuriated_roba_protector', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/insane_mantigrue_berserker.py b/scripts/mobiles/endor/insane_mantigrue_berserker.py new file mode 100644 index 00000000..eb9b8783 --- /dev/null +++ b/scripts/mobiles/endor/insane_mantigrue_berserker.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mantigrue_insane_berserker') + mobileTemplate.setLevel(45) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("mantigrue") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_condor_dragon.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('insane_mantigrue_berserker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/jinda_chief.py b/scripts/mobiles/endor/jinda_chief.py new file mode 100644 index 00000000..e8e1601c --- /dev/null +++ b/scripts/mobiles/endor/jinda_chief.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('jinda_chief') + mobileTemplate.setLevel(67) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('jinda_chief', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/jinda_cub.py b/scripts/mobiles/endor/jinda_cub.py new file mode 100644 index 00000000..eaa8ae18 --- /dev/null +++ b/scripts/mobiles/endor/jinda_cub.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('jinda_cub') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('jinda_cub', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/jinda_elder.py b/scripts/mobiles/endor/jinda_elder.py new file mode 100644 index 00000000..5d4ae53f --- /dev/null +++ b/scripts/mobiles/endor/jinda_elder.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('jinda_elder') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('jinda_elder', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/jinda_elder_worker.py b/scripts/mobiles/endor/jinda_elder_worker.py new file mode 100644 index 00000000..03601b2e --- /dev/null +++ b/scripts/mobiles/endor/jinda_elder_worker.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('jinda_elder_worker') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('jinda_elder_worker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/jinda_loremaster.py b/scripts/mobiles/endor/jinda_loremaster.py new file mode 100644 index 00000000..810838c2 --- /dev/null +++ b/scripts/mobiles/endor/jinda_loremaster.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('jinda_loremaster') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('jinda_loremaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/jinda_matriarch.py b/scripts/mobiles/endor/jinda_matriarch.py new file mode 100644 index 00000000..9620e146 --- /dev/null +++ b/scripts/mobiles/endor/jinda_matriarch.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('jinda_matriarch') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('jinda_matriarch', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/jinda_outcast.py b/scripts/mobiles/endor/jinda_outcast.py new file mode 100644 index 00000000..3528c30a --- /dev/null +++ b/scripts/mobiles/endor/jinda_outcast.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('jinda_outcast') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('jinda_outcast', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/jinda_ritualist.py b/scripts/mobiles/endor/jinda_ritualist.py new file mode 100644 index 00000000..30d49c4e --- /dev/null +++ b/scripts/mobiles/endor/jinda_ritualist.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('jinda_ritualist') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('jinda_ritualist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/jinda_shaman.py b/scripts/mobiles/endor/jinda_shaman.py new file mode 100644 index 00000000..577a1717 --- /dev/null +++ b/scripts/mobiles/endor/jinda_shaman.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('jinda_shaman') + mobileTemplate.setLevel(67) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('jinda_shaman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/jinda_tribesman.py b/scripts/mobiles/endor/jinda_tribesman.py new file mode 100644 index 00000000..f854065f --- /dev/null +++ b/scripts/mobiles/endor/jinda_tribesman.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('jinda_tribesman') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('jinda_tribesman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/jinda_veteran.py b/scripts/mobiles/endor/jinda_veteran.py new file mode 100644 index 00000000..c1f06564 --- /dev/null +++ b/scripts/mobiles/endor/jinda_veteran.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('jinda_veteran') + mobileTemplate.setLevel(68) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('jinda_veteran', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/jinda_warrior.py b/scripts/mobiles/endor/jinda_warrior.py new file mode 100644 index 00000000..d11207ad --- /dev/null +++ b/scripts/mobiles/endor/jinda_warrior.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('jinda_warrior') + mobileTemplate.setLevel(67) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('jinda_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/jinda_worker.py b/scripts/mobiles/endor/jinda_worker.py new file mode 100644 index 00000000..14191b38 --- /dev/null +++ b/scripts/mobiles/endor/jinda_worker.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('jinda_worker') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('jinda_worker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/king_merek_harvester.py b/scripts/mobiles/endor/king_merek_harvester.py new file mode 100644 index 00000000..3b86a0af --- /dev/null +++ b/scripts/mobiles/endor/king_merek_harvester.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('king_merek_harvester') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.2) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(50) + mobileTemplate.setSocialGroup("merek") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_merek.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('king_merek_harvester', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/korga_adept.py b/scripts/mobiles/endor/korga_adept.py new file mode 100644 index 00000000..702e1ea2 --- /dev/null +++ b/scripts/mobiles/endor/korga_adept.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('korga_adept') + mobileTemplate.setLevel(74) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('korga_adept', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/korga_ancient.py b/scripts/mobiles/endor/korga_ancient.py new file mode 100644 index 00000000..bd7587de --- /dev/null +++ b/scripts/mobiles/endor/korga_ancient.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('korga_ancient') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('korga_ancient', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/korga_battlelord.py b/scripts/mobiles/endor/korga_battlelord.py new file mode 100644 index 00000000..e4090f3c --- /dev/null +++ b/scripts/mobiles/endor/korga_battlelord.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('korga_battlelord') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('korga_battlelord', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/korga_chieftan.py b/scripts/mobiles/endor/korga_chieftan.py new file mode 100644 index 00000000..5e711248 --- /dev/null +++ b/scripts/mobiles/endor/korga_chieftan.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('korga_chieftan') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('korga_chieftan', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/korga_cub.py b/scripts/mobiles/endor/korga_cub.py new file mode 100644 index 00000000..df2f9b32 --- /dev/null +++ b/scripts/mobiles/endor/korga_cub.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('korga_cub') + mobileTemplate.setLevel(74) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(.5) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(False) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('korga_cub', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/korga_dark_shaman.py b/scripts/mobiles/endor/korga_dark_shaman.py new file mode 100644 index 00000000..993bdc02 --- /dev/null +++ b/scripts/mobiles/endor/korga_dark_shaman.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('korga_dark_shaman') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('korga_dark_shaman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/korga_elder.py b/scripts/mobiles/endor/korga_elder.py new file mode 100644 index 00000000..3cf74376 --- /dev/null +++ b/scripts/mobiles/endor/korga_elder.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('korga_elder') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('korga_elder', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/korga_laborer.py b/scripts/mobiles/endor/korga_laborer.py new file mode 100644 index 00000000..f072bd12 --- /dev/null +++ b/scripts/mobiles/endor/korga_laborer.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('korga_laborer') + mobileTemplate.setLevel(74) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('korga_laborer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/korga_scout.py b/scripts/mobiles/endor/korga_scout.py new file mode 100644 index 00000000..9b9451a9 --- /dev/null +++ b/scripts/mobiles/endor/korga_scout.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('korga_scout') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('korga_scout', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/korga_spiritmaster.py b/scripts/mobiles/endor/korga_spiritmaster.py new file mode 100644 index 00000000..24809a74 --- /dev/null +++ b/scripts/mobiles/endor/korga_spiritmaster.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('korga_spiritmaster') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('korga_spiritmaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/lantern_bird.py b/scripts/mobiles/endor/lantern_bird.py new file mode 100644 index 00000000..b41a66ca --- /dev/null +++ b/scripts/mobiles/endor/lantern_bird.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('lantern_bird') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(41) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(46) + mobileTemplate.setSocialGroup("lantern") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_lantern_bird.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('lantern_bird', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/lice_ridden_remmer_queen.py b/scripts/mobiles/endor/lice_ridden_remmer_queen.py new file mode 100644 index 00000000..eeb24160 --- /dev/null +++ b/scripts/mobiles/endor/lice_ridden_remmer_queen.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('lice_ridden_remmer_queen') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.2) + mobileTemplate.setSocialGroup("remmer") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_remmer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureSpitAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('lice_ridden_remmer_queen', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/mantigrue_hunter.py b/scripts/mobiles/endor/mantigrue_hunter.py new file mode 100644 index 00000000..d4ddd9bf --- /dev/null +++ b/scripts/mobiles/endor/mantigrue_hunter.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mantigrue_hunter') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("mantigrue") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_condor_dragon.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mantigrue_hunter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/mantigrue_night_stalker.py b/scripts/mobiles/endor/mantigrue_night_stalker.py new file mode 100644 index 00000000..af37154e --- /dev/null +++ b/scripts/mobiles/endor/mantigrue_night_stalker.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mantigrue_night_stalker') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("mantigrue") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_condor_dragon.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mantigrue_night_stalker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/mantigrue_reaper.py b/scripts/mobiles/endor/mantigrue_reaper.py new file mode 100644 index 00000000..32049433 --- /dev/null +++ b/scripts/mobiles/endor/mantigrue_reaper.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mantigrue_reaper') + mobileTemplate.setLevel(72) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("mantigrue") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_condor_dragon.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mantigrue_reaper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/mantigrue_screecher.py b/scripts/mobiles/endor/mantigrue_screecher.py new file mode 100644 index 00000000..18f2de92 --- /dev/null +++ b/scripts/mobiles/endor/mantigrue_screecher.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mantigrue_screecher') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.8) + mobileTemplate.setSocialGroup("mantigrue") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_condor_dragon.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mantigrue_screecher', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/marauder.py b/scripts/mobiles/endor/marauder.py new file mode 100644 index 00000000..0107c297 --- /dev/null +++ b/scripts/mobiles/endor/marauder.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('marauder') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("marauder") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_marauder_male_01.iff') + templates.add('object/mobile/shared_marauder_male_02.iff') + templates.add('object/mobile/shared_marauder_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('marauder', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/masterful_ewok_warrior.py b/scripts/mobiles/endor/masterful_ewok_warrior.py new file mode 100644 index 00000000..69b458f5 --- /dev/null +++ b/scripts/mobiles/endor/masterful_ewok_warrior.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('masterful_ewok_warrior') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('masterful_ewok_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/masterful_jinda_warrior.py b/scripts/mobiles/endor/masterful_jinda_warrior.py new file mode 100644 index 00000000..e3f54bdc --- /dev/null +++ b/scripts/mobiles/endor/masterful_jinda_warrior.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('masterful_jinda_warrior') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('masterful_jinda_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/masterful_panshee_warrior.py b/scripts/mobiles/endor/masterful_panshee_warrior.py new file mode 100644 index 00000000..ca78aa51 --- /dev/null +++ b/scripts/mobiles/endor/masterful_panshee_warrior.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('masterful_panshee_warrior') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('masterful_panshee_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/mature_hanadak.py b/scripts/mobiles/endor/mature_hanadak.py new file mode 100644 index 00000000..946a4d49 --- /dev/null +++ b/scripts/mobiles/endor/mature_hanadak.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mature_hanadak') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(20) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(20) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(20) + mobileTemplate.setSocialGroup("hanadak") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_hanadak.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mature_hanadak', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/mature_hanadak_rock_smasher.py b/scripts/mobiles/endor/mature_hanadak_rock_smasher.py new file mode 100644 index 00000000..dbc64f86 --- /dev/null +++ b/scripts/mobiles/endor/mature_hanadak_rock_smasher.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mature_hanadak_rock_smasher') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(35) + mobileTemplate.setSocialGroup("hanadak") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_hanadak.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mature_hanadak_rock_smasher', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/merek_assassin.py b/scripts/mobiles/endor/merek_assassin.py new file mode 100644 index 00000000..8a6720f5 --- /dev/null +++ b/scripts/mobiles/endor/merek_assassin.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('merek_assassin') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(45) + mobileTemplate.setSocialGroup("merek") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_merek.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('merek_assassin', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/merek_cavern_creeper.py b/scripts/mobiles/endor/merek_cavern_creeper.py new file mode 100644 index 00000000..8431fdc7 --- /dev/null +++ b/scripts/mobiles/endor/merek_cavern_creeper.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('merek_cavern_creeper') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(45) + mobileTemplate.setSocialGroup("merek") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_merek.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('merek_cavern_creeper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/merek_deaths_head.py b/scripts/mobiles/endor/merek_deaths_head.py new file mode 100644 index 00000000..2327d0f4 --- /dev/null +++ b/scripts/mobiles/endor/merek_deaths_head.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('merek_deaths_head') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(45) + mobileTemplate.setSocialGroup("merek") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_merek.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('merek_deaths_head', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/merek_harvester.py b/scripts/mobiles/endor/merek_harvester.py new file mode 100644 index 00000000..04d278a5 --- /dev/null +++ b/scripts/mobiles/endor/merek_harvester.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('merek_harvester') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(45) + mobileTemplate.setSocialGroup("merek") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_merek.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('merek_harvester', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/mine_rat.py b/scripts/mobiles/endor/mine_rat.py new file mode 100644 index 00000000..9864ab7d --- /dev/null +++ b/scripts/mobiles/endor/mine_rat.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('death_watch_quenker') + mobileTemplate.setLevel(83) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(.6) + mobileTemplate.setSocialGroup("death watch") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_barbed_quenker.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mine_rat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/miner.py b/scripts/mobiles/endor/miner.py new file mode 100644 index 00000000..ae214a53 --- /dev/null +++ b/scripts/mobiles/endor/miner.py @@ -0,0 +1,47 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('miner') + mobileTemplate.setLevel(85) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("death watch") + mobileTemplate.setAssistRange(1) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_mand_miner_aqualish.iff') + templates.add('object/mobile/shared_dressed_mand_miner_bith.iff') + templates.add('object/mobile/shared_dressed_mand_miner_hum_01.iff') + templates.add('object/mobile/shared_dressed_mand_miner_hum_02.iff') + templates.add('object/mobile/shared_dressed_mand_miner_hum_03.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('miner', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/minor_gorax.py b/scripts/mobiles/endor/minor_gorax.py new file mode 100644 index 00000000..26381725 --- /dev/null +++ b/scripts/mobiles/endor/minor_gorax.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('minor_gorax') + mobileTemplate.setLevel(83) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(.75) + mobileTemplate.setSocialGroup("gorax") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_gorax.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('minor_gorax', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/noxious_squill.py b/scripts/mobiles/endor/noxious_squill.py new file mode 100644 index 00000000..a7754b48 --- /dev/null +++ b/scripts/mobiles/endor/noxious_squill.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('noxious_squill') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("squill") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_squill.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('noxious_squill', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/panshee_chief.py b/scripts/mobiles/endor/panshee_chief.py new file mode 100644 index 00000000..54aafac9 --- /dev/null +++ b/scripts/mobiles/endor/panshee_chief.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('panshee_chief') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('panshee_chief', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/panshee_cub.py b/scripts/mobiles/endor/panshee_cub.py new file mode 100644 index 00000000..b44cd061 --- /dev/null +++ b/scripts/mobiles/endor/panshee_cub.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('panshee_cub') + mobileTemplate.setLevel(69) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('panshee_cub', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/panshee_elder.py b/scripts/mobiles/endor/panshee_elder.py new file mode 100644 index 00000000..e27f50ff --- /dev/null +++ b/scripts/mobiles/endor/panshee_elder.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('panshee_elder') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('panshee_elder', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/panshee_elder_warrior.py b/scripts/mobiles/endor/panshee_elder_warrior.py new file mode 100644 index 00000000..6514b299 --- /dev/null +++ b/scripts/mobiles/endor/panshee_elder_warrior.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('panshee_elder_worker') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('panshee_elder_worker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/panshee_loremaster.py b/scripts/mobiles/endor/panshee_loremaster.py new file mode 100644 index 00000000..9fc40987 --- /dev/null +++ b/scripts/mobiles/endor/panshee_loremaster.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('panshee_loremaster') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('panshee_loremaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/panshee_matriarch.py b/scripts/mobiles/endor/panshee_matriarch.py new file mode 100644 index 00000000..5de9bd16 --- /dev/null +++ b/scripts/mobiles/endor/panshee_matriarch.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('panshee_matriarch') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('panshee_matriarch', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/panshee_ritualist.py b/scripts/mobiles/endor/panshee_ritualist.py new file mode 100644 index 00000000..247a1ad2 --- /dev/null +++ b/scripts/mobiles/endor/panshee_ritualist.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('panshee_ritualist') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('panshee_ritualist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/panshee_shaman.py b/scripts/mobiles/endor/panshee_shaman.py new file mode 100644 index 00000000..28875d0f --- /dev/null +++ b/scripts/mobiles/endor/panshee_shaman.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('panshee_shaman') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('panshee_shaman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/panshee_tribesman.py b/scripts/mobiles/endor/panshee_tribesman.py new file mode 100644 index 00000000..09cd9c33 --- /dev/null +++ b/scripts/mobiles/endor/panshee_tribesman.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('panshee_tribesman') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('panshee_tribesman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/panshee_veteran.py b/scripts/mobiles/endor/panshee_veteran.py new file mode 100644 index 00000000..d8f72bb2 --- /dev/null +++ b/scripts/mobiles/endor/panshee_veteran.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('panshee_veteran') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('panshee_veteran', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/panshee_warrior.py b/scripts/mobiles/endor/panshee_warrior.py new file mode 100644 index 00000000..c6fdb910 --- /dev/null +++ b/scripts/mobiles/endor/panshee_warrior.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('panshee_warrior') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('panshee_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/panshee_worker.py b/scripts/mobiles/endor/panshee_worker.py new file mode 100644 index 00000000..42f15770 --- /dev/null +++ b/scripts/mobiles/endor/panshee_worker.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('panshee_worker') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('panshee_worker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/proficient_gondula_worker.py b/scripts/mobiles/endor/proficient_gondula_worker.py new file mode 100644 index 00000000..a86760e3 --- /dev/null +++ b/scripts/mobiles/endor/proficient_gondula_worker.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('proficient_gondula_worker') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('proficient_gondula_worker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/proficient_jinda_worker.py b/scripts/mobiles/endor/proficient_jinda_worker.py new file mode 100644 index 00000000..7c69d4da --- /dev/null +++ b/scripts/mobiles/endor/proficient_jinda_worker.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('proficient_jinda_worker') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('proficient_jinda_worker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/proficient_panshee_worker.py b/scripts/mobiles/endor/proficient_panshee_worker.py new file mode 100644 index 00000000..6209d853 --- /dev/null +++ b/scripts/mobiles/endor/proficient_panshee_worker.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('proficient_panshee_worker') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('proficient_panshee_worker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/prowling_gurreck.py b/scripts/mobiles/endor/prowling_gurreck.py new file mode 100644 index 00000000..a01f7f7c --- /dev/null +++ b/scripts/mobiles/endor/prowling_gurreck.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gurreck_prowler') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("gurreck") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_gurreck.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('prowling_gurreck', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/pubam_battlelord.py b/scripts/mobiles/endor/pubam_battlelord.py new file mode 100644 index 00000000..bd9fc47d --- /dev/null +++ b/scripts/mobiles/endor/pubam_battlelord.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('pubam_battlelord') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('pubam_battlelord', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/pubam_chieftan.py b/scripts/mobiles/endor/pubam_chieftan.py new file mode 100644 index 00000000..6062e7e6 --- /dev/null +++ b/scripts/mobiles/endor/pubam_chieftan.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('pubam_chieftan') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('pubam_chieftan', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/pubam_cub.py b/scripts/mobiles/endor/pubam_cub.py new file mode 100644 index 00000000..956c66d7 --- /dev/null +++ b/scripts/mobiles/endor/pubam_cub.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('pubam_cub') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(.5) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(False) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('pubam_cub', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/pubam_dark_shaman.py b/scripts/mobiles/endor/pubam_dark_shaman.py new file mode 100644 index 00000000..02a45335 --- /dev/null +++ b/scripts/mobiles/endor/pubam_dark_shaman.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('pubam_dark_shaman') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('pubam_dark_shaman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/pubam_scout.py b/scripts/mobiles/endor/pubam_scout.py new file mode 100644 index 00000000..628635f7 --- /dev/null +++ b/scripts/mobiles/endor/pubam_scout.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('pubam_scout') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('pubam_scout', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/pubam_spiritmaster.py b/scripts/mobiles/endor/pubam_spiritmaster.py new file mode 100644 index 00000000..734eee80 --- /dev/null +++ b/scripts/mobiles/endor/pubam_spiritmaster.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('pubam_spiritmaster') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('pubam_spiritmaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/pubam_tribesman.py b/scripts/mobiles/endor/pubam_tribesman.py new file mode 100644 index 00000000..4022ffa1 --- /dev/null +++ b/scripts/mobiles/endor/pubam_tribesman.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('pubam_tribesman') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('pubam_tribesman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/putrid_borgle.py b/scripts/mobiles/endor/putrid_borgle.py new file mode 100644 index 00000000..136f8aaa --- /dev/null +++ b/scripts/mobiles/endor/putrid_borgle.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('putrid_borgle') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(5) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(5) + mobileTemplate.setSocialGroup("borgle") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_borgle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('putrid_borgle', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/queen_merek_harvester.py b/scripts/mobiles/endor/queen_merek_harvester.py new file mode 100644 index 00000000..28b1706f --- /dev/null +++ b/scripts/mobiles/endor/queen_merek_harvester.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('queen_merek_harvester') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.2) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(50) + mobileTemplate.setSocialGroup("merek") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_merek.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('queen_merek_harvester', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/rabid_squall.py b/scripts/mobiles/endor/rabid_squall.py new file mode 100644 index 00000000..826b7abb --- /dev/null +++ b/scripts/mobiles/endor/rabid_squall.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rabid_squall') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(12) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(8) + mobileTemplate.setSocialGroup("squall") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_squall.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('rabid_squall', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/radiant_lantern_bird.py b/scripts/mobiles/endor/radiant_lantern_bird.py new file mode 100644 index 00000000..04cab08f --- /dev/null +++ b/scripts/mobiles/endor/radiant_lantern_bird.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('radiant_lantern_bird') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(41) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(46) + mobileTemplate.setSocialGroup("lantern") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_lantern_bird.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('radiant_lantern_bird', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/rancid_remmer_warrior.py b/scripts/mobiles/endor/rancid_remmer_warrior.py new file mode 100644 index 00000000..ed4c611d --- /dev/null +++ b/scripts/mobiles/endor/rancid_remmer_warrior.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rancid_remmer_warrior') + mobileTemplate.setLevel(56) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("remmer") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_remmer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureSpitAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('rancid_remmer_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/ravenous_roba_stalker.py b/scripts/mobiles/endor/ravenous_roba_stalker.py new file mode 100644 index 00000000..370997b9 --- /dev/null +++ b/scripts/mobiles/endor/ravenous_roba_stalker.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('ravenous_roba_stalker') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("roba") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_roba.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('ravenous_roba_stalker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/reclusive_roba.py b/scripts/mobiles/endor/reclusive_roba.py new file mode 100644 index 00000000..960b0785 --- /dev/null +++ b/scripts/mobiles/endor/reclusive_roba.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('reclusive_roba') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("roba") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_roba.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('reclusive_roba', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/remmer_carrion_keeper.py b/scripts/mobiles/endor/remmer_carrion_keeper.py new file mode 100644 index 00000000..da8cb837 --- /dev/null +++ b/scripts/mobiles/endor/remmer_carrion_keeper.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('remmer_carrion_keeper') + mobileTemplate.setLevel(55) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("remmer") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_remmer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('remmer_carrion_keeper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/remmer_dune_scavenger.py b/scripts/mobiles/endor/remmer_dune_scavenger.py new file mode 100644 index 00000000..338bd1eb --- /dev/null +++ b/scripts/mobiles/endor/remmer_dune_scavenger.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('remmer_dune_scavenger') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("remmer") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_remmer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureSpitAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('remmer_dune_scavenger', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/revered_panshee_matriarch.py b/scripts/mobiles/endor/revered_panshee_matriarch.py new file mode 100644 index 00000000..c4cabb10 --- /dev/null +++ b/scripts/mobiles/endor/revered_panshee_matriarch.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('revered_panshee_matriarch') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('revered_panshee_matriarch', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/roaming_bordok_stud.py b/scripts/mobiles/endor/roaming_bordok_stud.py new file mode 100644 index 00000000..a2935c51 --- /dev/null +++ b/scripts/mobiles/endor/roaming_bordok_stud.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('roaming_bordok_stud') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("bordok") + mobileTemplate.setAssistRange(0) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bordok.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('roaming_bordok_stud', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/roaming_desert_borgle.py b/scripts/mobiles/endor/roaming_desert_borgle.py new file mode 100644 index 00000000..4c3c5c0d --- /dev/null +++ b/scripts/mobiles/endor/roaming_desert_borgle.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('borgle_desert_roamer') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(5) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(5) + mobileTemplate.setSocialGroup("borgle") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_borgle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('roaming_desert_borgle', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/roba.py b/scripts/mobiles/endor/roba.py new file mode 100644 index 00000000..e290e4dc --- /dev/null +++ b/scripts/mobiles/endor/roba.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('roba') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("roba") + mobileTemplate.setAssistRange(0) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_roba.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('roba', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/roba_boar.py b/scripts/mobiles/endor/roba_boar.py new file mode 100644 index 00000000..333481ae --- /dev/null +++ b/scripts/mobiles/endor/roba_boar.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('roba_boar') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.1) + mobileTemplate.setSocialGroup("roba") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_roba.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('roba_boar', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/roba_pack_leader.py b/scripts/mobiles/endor/roba_pack_leader.py new file mode 100644 index 00000000..d24375b3 --- /dev/null +++ b/scripts/mobiles/endor/roba_pack_leader.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('roba_pack_leader') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("bageraset") + mobileTemplate.setAssistRange(0) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_roba.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('roba_pack_leader', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/roba_runt.py b/scripts/mobiles/endor/roba_runt.py new file mode 100644 index 00000000..bf7c0e26 --- /dev/null +++ b/scripts/mobiles/endor/roba_runt.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('roba_runt') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setSocialGroup("roba") + mobileTemplate.setAssistRange(0) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_roba.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('roba_runt', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/rotten_gut_remmer_king.py b/scripts/mobiles/endor/rotten_gut_remmer_king.py new file mode 100644 index 00000000..646ad605 --- /dev/null +++ b/scripts/mobiles/endor/rotten_gut_remmer_king.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rotten_gut_remmer_king') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.2) + mobileTemplate.setSocialGroup("remmer") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_remmer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('rotten_gut_remmer_king', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/sanguin_bloodseeker_hierarch.py b/scripts/mobiles/endor/sanguin_bloodseeker_hierarch.py new file mode 100644 index 00000000..eaae12ac --- /dev/null +++ b/scripts/mobiles/endor/sanguin_bloodseeker_hierarch.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bloodseeker_mite_sanguine_hierarch') + mobileTemplate.setLevel(59) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("bloodseeker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_bloodseeker.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('sanguin_bloodseeker_hierarch.', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/seasoned_gondula_warrior.py b/scripts/mobiles/endor/seasoned_gondula_warrior.py new file mode 100644 index 00000000..1d952b88 --- /dev/null +++ b/scripts/mobiles/endor/seasoned_gondula_warrior.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('seasoned_gondula_warrior') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('seasoned_gondula_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/seasoned_jinda_warrior.py b/scripts/mobiles/endor/seasoned_jinda_warrior.py new file mode 100644 index 00000000..363f994e --- /dev/null +++ b/scripts/mobiles/endor/seasoned_jinda_warrior.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('seasoned_jinda_warrior') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('seasoned_jinda_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/seasoned_panshee_warrior.py b/scripts/mobiles/endor/seasoned_panshee_warrior.py new file mode 100644 index 00000000..38ff33a9 --- /dev/null +++ b/scripts/mobiles/endor/seasoned_panshee_warrior.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('seasoned_panshee_warrior') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('seasoned_panshee_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/shaggy_donkuwah_youth.py b/scripts/mobiles/endor/shaggy_donkuwah_youth.py new file mode 100644 index 00000000..ebb448e1 --- /dev/null +++ b/scripts/mobiles/endor/shaggy_donkuwah_youth.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('shaggy_donkuwah_youth') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('shaggy_donkuwah_youth', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/shaggy_korga_youth.py b/scripts/mobiles/endor/shaggy_korga_youth.py new file mode 100644 index 00000000..f2d40766 --- /dev/null +++ b/scripts/mobiles/endor/shaggy_korga_youth.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('shaggy_korga_youth') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('shaggy_korga_youth', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/shaggy_pubam_youth.py b/scripts/mobiles/endor/shaggy_pubam_youth.py new file mode 100644 index 00000000..635ed21f --- /dev/null +++ b/scripts/mobiles/endor/shaggy_pubam_youth.py @@ -0,0 +1,50 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('shaggy_pubam_youth') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('shaggy_pubam_youth', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/shimmering_lantern_bird.py b/scripts/mobiles/endor/shimmering_lantern_bird.py new file mode 100644 index 00000000..9a280dc9 --- /dev/null +++ b/scripts/mobiles/endor/shimmering_lantern_bird.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('shimmering_lantern_bird') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(41) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(46) + mobileTemplate.setSocialGroup("lantern") + mobileTemplate.setAssistRange(0) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_lantern_bird.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('shimmering_lantern_bird', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/skilled_gondula_worker.py b/scripts/mobiles/endor/skilled_gondula_worker.py new file mode 100644 index 00000000..7e272bfa --- /dev/null +++ b/scripts/mobiles/endor/skilled_gondula_worker.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('skilled_gondula_worker') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('skilled_gondula_worker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/skilled_jinda_worker.py b/scripts/mobiles/endor/skilled_jinda_worker.py new file mode 100644 index 00000000..160eb2b8 --- /dev/null +++ b/scripts/mobiles/endor/skilled_jinda_worker.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('skilled_jinda_worker') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('skilled_jinda_worker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/skilled_panshee_worker.py b/scripts/mobiles/endor/skilled_panshee_worker.py new file mode 100644 index 00000000..9d06ab6e --- /dev/null +++ b/scripts/mobiles/endor/skilled_panshee_worker.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('skilled_panshee_worker') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('skilled_panshee_worker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/spooky_donkuwah_spiritmaster.py b/scripts/mobiles/endor/spooky_donkuwah_spiritmaster.py new file mode 100644 index 00000000..52f74733 --- /dev/null +++ b/scripts/mobiles/endor/spooky_donkuwah_spiritmaster.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('spooky_donkuwah_spiritmaster') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('spooky_donkuwah_spiritmaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/spooky_korga_spiritmaster.py b/scripts/mobiles/endor/spooky_korga_spiritmaster.py new file mode 100644 index 00000000..660d59af --- /dev/null +++ b/scripts/mobiles/endor/spooky_korga_spiritmaster.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('spooky_korga_spiritmaster') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('spooky_korga_spiritmaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/spooky_pubam_spiritmaster.py b/scripts/mobiles/endor/spooky_pubam_spiritmaster.py new file mode 100644 index 00000000..df1f1a01 --- /dev/null +++ b/scripts/mobiles/endor/spooky_pubam_spiritmaster.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('spooky_pubam_spiritmaster') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('spooky_pubam_spiritmaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/squall.py b/scripts/mobiles/endor/squall.py new file mode 100644 index 00000000..2bf89f7a --- /dev/null +++ b/scripts/mobiles/endor/squall.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('squall') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(12) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(8) + mobileTemplate.setSocialGroup("squall") + mobileTemplate.setAssistRange(0) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_squall.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('squall', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/stoneskin_hanadak.py b/scripts/mobiles/endor/stoneskin_hanadak.py new file mode 100644 index 00000000..a8887f74 --- /dev/null +++ b/scripts/mobiles/endor/stoneskin_hanadak.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stoneskin_hanadak') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(40) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(40) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(40) + mobileTemplate.setSocialGroup("hanadak") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_hanadak.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stoneskin_hanadak', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/swirl_prong.py b/scripts/mobiles/endor/swirl_prong.py new file mode 100644 index 00000000..80755636 --- /dev/null +++ b/scripts/mobiles/endor/swirl_prong.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('swirl_prong') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("swirl prong") + mobileTemplate.setAssistRange(0) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_swirl_prong.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('swirl_prong', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/swirl_prong_impaler.py b/scripts/mobiles/endor/swirl_prong_impaler.py new file mode 100644 index 00000000..b821835f --- /dev/null +++ b/scripts/mobiles/endor/swirl_prong_impaler.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('swirl_prong_impaler') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("swirl prong") + mobileTemplate.setAssistRange(0) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_swirl_prong.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('swirl_prong_impaler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/swirl_prong_pack_leader.py b/scripts/mobiles/endor/swirl_prong_pack_leader.py new file mode 100644 index 00000000..fc4545d4 --- /dev/null +++ b/scripts/mobiles/endor/swirl_prong_pack_leader.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('swirl_prong_pack_leader') + mobileTemplate.setLevel(36) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("swirl prong") + mobileTemplate.setAssistRange(0) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_swirl_prong.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('swirl_prong_pack_leader', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/tainted_donkuwah_dark_shaman.py b/scripts/mobiles/endor/tainted_donkuwah_dark_shaman.py new file mode 100644 index 00000000..e01351d7 --- /dev/null +++ b/scripts/mobiles/endor/tainted_donkuwah_dark_shaman.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tainted_donkuwah_dark_shaman') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('tainted_donkuwah_dark_shaman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/tainted_korga_dark_shaman.py b/scripts/mobiles/endor/tainted_korga_dark_shaman.py new file mode 100644 index 00000000..9c8b932f --- /dev/null +++ b/scripts/mobiles/endor/tainted_korga_dark_shaman.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tainted_korga_dark_shaman') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('tainted_korga_dark_shaman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/tainted_pubam_dark_shaman.py b/scripts/mobiles/endor/tainted_pubam_dark_shaman.py new file mode 100644 index 00000000..e7d6b836 --- /dev/null +++ b/scripts/mobiles/endor/tainted_pubam_dark_shaman.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tainted_pubam_dark_shaman') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('tainted_pubam_dark_shaman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/toxic_merek_battlelord.py b/scripts/mobiles/endor/toxic_merek_battlelord.py new file mode 100644 index 00000000..41347453 --- /dev/null +++ b/scripts/mobiles/endor/toxic_merek_battlelord.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('toxic_merek_battlelord') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.2) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(45) + mobileTemplate.setSocialGroup("merek") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_merek.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('toxic_merek_battlelord', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/tricky_donkuwah_scout.py b/scripts/mobiles/endor/tricky_donkuwah_scout.py new file mode 100644 index 00000000..44496a24 --- /dev/null +++ b/scripts/mobiles/endor/tricky_donkuwah_scout.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tricky_donkuwah_scout') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('tricky_donkuwah_scout', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/tricky_korga_scout.py b/scripts/mobiles/endor/tricky_korga_scout.py new file mode 100644 index 00000000..2aae3dde --- /dev/null +++ b/scripts/mobiles/endor/tricky_korga_scout.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tricky_korga_scout') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('tricky_korga_scout', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/tricky_pubam_scout.py b/scripts/mobiles/endor/tricky_pubam_scout.py new file mode 100644 index 00000000..2062c2c6 --- /dev/null +++ b/scripts/mobiles/endor/tricky_pubam_scout.py @@ -0,0 +1,48 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tricky_pubam_scout') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('tricky_pubam_scout', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/venom_filled_arachne.py b/scripts/mobiles/endor/venom_filled_arachne.py new file mode 100644 index 00000000..cbbca23d --- /dev/null +++ b/scripts/mobiles/endor/venom_filled_arachne.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('venom_filled_arachne') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.2) + mobileTemplate.setSocialGroup("arachne") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_angler.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('venom_filled_arachne', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/vicious_donkuwah_battlelord.py b/scripts/mobiles/endor/vicious_donkuwah_battlelord.py new file mode 100644 index 00000000..e0bc9153 --- /dev/null +++ b/scripts/mobiles/endor/vicious_donkuwah_battlelord.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('vicious_donkuwah_battlelord') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('vicious_donkuwah_battlelord', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/vicious_korga_battlelord.py b/scripts/mobiles/endor/vicious_korga_battlelord.py new file mode 100644 index 00000000..f23838f1 --- /dev/null +++ b/scripts/mobiles/endor/vicious_korga_battlelord.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('vicious_korga_battlelord') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('vicious_korga_battlelord', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/vicious_pubam_battlelord.py b/scripts/mobiles/endor/vicious_pubam_battlelord.py new file mode 100644 index 00000000..3b6ab684 --- /dev/null +++ b/scripts/mobiles/endor/vicious_pubam_battlelord.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('vicious_pubam_battlelord') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('pubam tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('vicious_pubam_battlelord', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/vile_donkuwah_battlelord.py b/scripts/mobiles/endor/vile_donkuwah_battlelord.py new file mode 100644 index 00000000..b53003c9 --- /dev/null +++ b/scripts/mobiles/endor/vile_donkuwah_battlelord.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('vile_donkuwah_battlelord') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('donkuwah tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('vile_donkuwah_battlelord', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/vile_korga_battlelord.py b/scripts/mobiles/endor/vile_korga_battlelord.py new file mode 100644 index 00000000..715abf14 --- /dev/null +++ b/scripts/mobiles/endor/vile_korga_battlelord.py @@ -0,0 +1,49 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('vile_korga_battlelord') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup('korga tribe') + mobileTemplate.setAssistRange(12) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dulok_male.iff') + templates.add('object/mobile/shared_dulok_female.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('vile_korga_battlelord', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/wandering_desert_marauder.py b/scripts/mobiles/endor/wandering_desert_marauder.py new file mode 100644 index 00000000..51647877 --- /dev/null +++ b/scripts/mobiles/endor/wandering_desert_marauder.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('wandering_desert_marauder') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("marauder") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_marauder_male_01.iff') + templates.add('object/mobile/shared_marauder_male_02.iff') + templates.add('object/mobile/shared_marauder_male_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('wandering_desert_marauder', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/weathered_gondula_shaman.py b/scripts/mobiles/endor/weathered_gondula_shaman.py new file mode 100644 index 00000000..a903a2be --- /dev/null +++ b/scripts/mobiles/endor/weathered_gondula_shaman.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('weathered_gondula_shaman') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('weathered_gondula_shaman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/weathered_jinda_shaman.py b/scripts/mobiles/endor/weathered_jinda_shaman.py new file mode 100644 index 00000000..aa39bbc0 --- /dev/null +++ b/scripts/mobiles/endor/weathered_jinda_shaman.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('weathered_jinda_shaman') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('weathered_jinda_shaman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/weathered_panshee_shaman.py b/scripts/mobiles/endor/weathered_panshee_shaman.py new file mode 100644 index 00000000..23f52eaf --- /dev/null +++ b/scripts/mobiles/endor/weathered_panshee_shaman.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('weathered_panshee_shaman') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('weathered_panshee_shaman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/wise_gondula_ritualist.py b/scripts/mobiles/endor/wise_gondula_ritualist.py new file mode 100644 index 00000000..1c9d0ecc --- /dev/null +++ b/scripts/mobiles/endor/wise_gondula_ritualist.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('wise_gondula_ritualist') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('gondula tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('wise_gondula_ritualist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/wise_jinda_ritualist.py b/scripts/mobiles/endor/wise_jinda_ritualist.py new file mode 100644 index 00000000..f49bbd75 --- /dev/null +++ b/scripts/mobiles/endor/wise_jinda_ritualist.py @@ -0,0 +1,51 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('wise_jinda_ritualist') + mobileTemplate.setLevel(67) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('jinda tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_jinda_male.iff') + templates.add('object/mobile/shared_jinda_female.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('wise_jinda_ritualist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/endor/wise_panshee_ritualist.py b/scripts/mobiles/endor/wise_panshee_ritualist.py new file mode 100644 index 00000000..60d2e2f6 --- /dev/null +++ b/scripts/mobiles/endor/wise_panshee_ritualist.py @@ -0,0 +1,73 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('wise_panshee_ritualist') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(3) + mobileTemplate.setMaxSpawnDistance(5) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup('panshee tribe') + mobileTemplate.setAssistRange(1) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(True) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_ewok_f_01.iff') + templates.add('object/mobile/shared_dressed_ewok_f_02.iff') + templates.add('object/mobile/shared_dressed_ewok_f_03.iff') + templates.add('object/mobile/shared_dressed_ewok_f_04.iff') + templates.add('object/mobile/shared_dressed_ewok_f_05.iff') + templates.add('object/mobile/shared_dressed_ewok_f_06.iff') + templates.add('object/mobile/shared_dressed_ewok_f_07.iff') + templates.add('object/mobile/shared_dressed_ewok_f_08.iff') + templates.add('object/mobile/shared_dressed_ewok_f_09.iff') + templates.add('object/mobile/shared_dressed_ewok_f_10.iff') + templates.add('object/mobile/shared_dressed_ewok_f_11.iff') + templates.add('object/mobile/shared_dressed_ewok_f_12.iff') + templates.add('object/mobile/shared_dressed_ewok_m_01.iff') + templates.add('object/mobile/shared_dressed_ewok_m_02.iff') + templates.add('object/mobile/shared_dressed_ewok_m_03.iff') + templates.add('object/mobile/shared_dressed_ewok_m_04.iff') + templates.add('object/mobile/shared_dressed_ewok_m_05.iff') + templates.add('object/mobile/shared_dressed_ewok_m_06.iff') + templates.add('object/mobile/shared_dressed_ewok_m_07.iff') + templates.add('object/mobile/shared_dressed_ewok_m_08.iff') + templates.add('object/mobile/shared_dressed_ewok_m_09.iff') + templates.add('object/mobile/shared_dressed_ewok_m_10.iff') + templates.add('object/mobile/shared_dressed_ewok_m_11.iff') + templates.add('object/mobile/shared_dressed_ewok_m_12.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 65 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + lootPoolNames_2 = ['random_loot_primitives'] + lootPoolChances_2 = [100] + lootGroupChance_2 = 35 + mobileTemplate.addToLootGroups(lootPoolNames_2,lootPoolChances_2,lootGroupChance_2) + + core.spawnService.addMobileTemplate('wise_panshee_ritualist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/forage/goon.py b/scripts/mobiles/forage/goon.py index 3a288b78..16dbc898 100644 --- a/scripts/mobiles/forage/goon.py +++ b/scripts/mobiles/forage/goon.py @@ -32,7 +32,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('forage_goon', mobileTemplate) diff --git a/scripts/mobiles/generic/faction/imperial/ace_imp_bombardier_50.py b/scripts/mobiles/generic/faction/imperial/ace_imp_bombardier_50.py new file mode 100644 index 00000000..99d66d7f --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/ace_imp_bombardier_50.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_bombardier_hard') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_bombardier_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_bombardier_50', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/ace_imp_bombardier_74.py b/scripts/mobiles/generic/faction/imperial/ace_imp_bombardier_74.py new file mode 100644 index 00000000..96ecca64 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/ace_imp_bombardier_74.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_bombardier_hard') + mobileTemplate.setLevel(74) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_bombardier_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_bombardier_74', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/ace_imp_bombardier_89.py b/scripts/mobiles/generic/faction/imperial/ace_imp_bombardier_89.py new file mode 100644 index 00000000..366d5e69 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/ace_imp_bombardier_89.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_bombardier_hard') + mobileTemplate.setLevel(89) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_bombardier_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_bombardier_89', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/ace_imp_storm_com_70.py b/scripts/mobiles/generic/faction/imperial/ace_imp_storm_com_70.py new file mode 100644 index 00000000..8eebeeff --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/ace_imp_storm_com_70.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_storm_commando_hard') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_bombardier_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_bombardier_50', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/ace_imp_storm_com_87.py b/scripts/mobiles/generic/faction/imperial/ace_imp_storm_com_87.py new file mode 100644 index 00000000..23843948 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/ace_imp_storm_com_87.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_storm_commando_hard') + mobileTemplate.setLevel(87) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_bombardier_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_bombardier_87', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/ace_imp_storm_com_89.py b/scripts/mobiles/generic/faction/imperial/ace_imp_storm_com_89.py new file mode 100644 index 00000000..c07765bc --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/ace_imp_storm_com_89.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_storm_commando_hard') + mobileTemplate.setLevel(89) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_bombardier_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_bombardier_89', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/battle_droid_imp.py b/scripts/mobiles/generic/faction/imperial/battle_droid_imp.py new file mode 100644 index 00000000..e53d8f03 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/battle_droid_imp.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from resources.datatables import FactionStatus +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_battle_droid') + mobileTemplate.setLevel(83) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_battle_droid.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e5.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('battle_droid_imperial', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/battle_shocked_imp_noncom_32.py b/scripts/mobiles/generic/faction/imperial/battle_shocked_imp_noncom_32.py new file mode 100644 index 00000000..196596e7 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/battle_shocked_imp_noncom_32.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_noncom_hard') + mobileTemplate.setLevel(32) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_black_blue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('battle-shocked_imp_noncom_32', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/battle_shocked_imp_noncom_77.py b/scripts/mobiles/generic/faction/imperial/battle_shocked_imp_noncom_77.py new file mode 100644 index 00000000..eb20d9ab --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/battle_shocked_imp_noncom_77.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_noncom_hard') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_white_black.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('battle-shocked_imp_noncom_77', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/bombardier.py b/scripts/mobiles/generic/faction/imperial/bombardier.py new file mode 100644 index 00000000..e18c226b --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/bombardier.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bombardier') + mobileTemplate.setLevel(15) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_bombardier_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_bombardier', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/civil_patrol_captain.py b/scripts/mobiles/generic/faction/imperial/civil_patrol_captain.py new file mode 100644 index 00000000..15295c67 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/civil_patrol_captain.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_civil_patrol_captain') + mobileTemplate.setLevel(7) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_patrol_member_01.iff') + templates.add('object/mobile/shared_dressed_patrol_member_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('civil_partrol_captain', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/civil_patrol_commander.py b/scripts/mobiles/generic/faction/imperial/civil_patrol_commander.py new file mode 100644 index 00000000..6117eb27 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/civil_patrol_commander.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_civil_patrol_commander') + mobileTemplate.setLevel(8) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_patrol_member_01.iff') + templates.add('object/mobile/shared_dressed_patrol_member_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('civil_partrol_commander', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/civil_patrol_corporal.py b/scripts/mobiles/generic/faction/imperial/civil_patrol_corporal.py new file mode 100644 index 00000000..200f148e --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/civil_patrol_corporal.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_civil_patrol_corporal') + mobileTemplate.setLevel(4) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_patrol_member_01.iff') + templates.add('object/mobile/shared_dressed_patrol_member_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('civil_partrol_corporal', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/civil_patrol_sergeant.py b/scripts/mobiles/generic/faction/imperial/civil_patrol_sergeant.py new file mode 100644 index 00000000..64087a12 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/civil_patrol_sergeant.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_civil_patrol_sergeant') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_patrol_member_01.iff') + templates.add('object/mobile/shared_dressed_patrol_member_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('civil_partrol_sergeant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/civillian_patrolman.py b/scripts/mobiles/generic/faction/imperial/civillian_patrolman.py new file mode 100644 index 00000000..0671e5f3 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/civillian_patrolman.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_civil_patrolman') + mobileTemplate.setLevel(2) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_patrol_member_01.iff') + templates.add('object/mobile/shared_dressed_patrol_member_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('civilian_patrolman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/comm_operator.py b/scripts/mobiles/generic/faction/imperial/comm_operator.py new file mode 100644 index 00000000..1d8e5fd0 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/comm_operator.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('comm_operator') + mobileTemplate.setLevel(14) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_lieutenant_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('comm_operator', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/command_security_guard.py b/scripts/mobiles/generic/faction/imperial/command_security_guard.py new file mode 100644 index 00000000..a2e49cc7 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/command_security_guard.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('command_security_guard') + mobileTemplate.setLevel(15) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_imp_security_01.iff') + templates.add('object/mobile/shared_imp_security_02.iff') + templates.add('object/mobile/shared_imp_security_03.iff') + templates.add('object/mobile/shared_imp_security_04.iff') + templates.add('object/mobile/shared_imp_security_05.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('command_security_guard', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/commander_byrne.py b/scripts/mobiles/generic/faction/imperial/commander_byrne.py new file mode 100644 index 00000000..c188b7f2 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/commander_byrne.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('commander_byrne') + mobileTemplate.setLevel(23) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_lian_byrne.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('commander_byrne', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/crackdown_stormtrooper_captain.py b/scripts/mobiles/generic/faction/imperial/crackdown_stormtrooper_captain.py new file mode 100644 index 00000000..77046a4a --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/crackdown_stormtrooper_captain.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_army_captain_hard') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_captain_black_black.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_captain_black_gold.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_captain_white_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('crackdown_stormtrooper_captain_hard', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/dark_nova_trooper.py b/scripts/mobiles/generic/faction/imperial/dark_nova_trooper.py new file mode 100644 index 00000000..2bc2b28d --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/dark_nova_trooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stormtrooper_dark_trooper_novatrooper') + mobileTemplate.setLevel(82) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dark_trooper_black_hole.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('dark_novatrooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/dark_trooper.py b/scripts/mobiles/generic/faction/imperial/dark_trooper.py new file mode 100644 index 00000000..079d3c25 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/dark_trooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dark_trooper') + mobileTemplate.setLevel(32) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dark_trooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('dark_trooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/decorated_imperial_colonel_50.py b/scripts/mobiles/generic/faction/imperial/decorated_imperial_colonel_50.py new file mode 100644 index 00000000..3779e04f --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/decorated_imperial_colonel_50.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_colonel_hard') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_colonel_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('decorated_imperial_col_50', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/decorated_imperial_colonel_87.py b/scripts/mobiles/generic/faction/imperial/decorated_imperial_colonel_87.py new file mode 100644 index 00000000..3a766343 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/decorated_imperial_colonel_87.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_colonel_hard') + mobileTemplate.setLevel(87) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_colonel_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('decorated_imperial_col_87', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/detention_security_guard.py b/scripts/mobiles/generic/faction/imperial/detention_security_guard.py new file mode 100644 index 00000000..b45bb0d6 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/detention_security_guard.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('detention_security_guard') + mobileTemplate.setLevel(15) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_stormtrooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('detention_security_guard', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/droid_corps_junior_technican.py b/scripts/mobiles/generic/faction/imperial/droid_corps_junior_technican.py new file mode 100644 index 00000000..937a96dc --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/droid_corps_junior_technican.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_probot_handler') + mobileTemplate.setLevel(15) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_mechanic_nils_cridmeen.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_striker.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('droid_corps_junior_technican', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_dark_trooper.py b/scripts/mobiles/generic/faction/imperial/elite_dark_trooper.py new file mode 100644 index 00000000..cb8084be --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_dark_trooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dark_trooper') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dark_trooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('dark_trooper_elite', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_exogen_class_dark_trooper.py b/scripts/mobiles/generic/faction/imperial/elite_exogen_class_dark_trooper.py new file mode 100644 index 00000000..8a494ecf --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_exogen_class_dark_trooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_elite_dark_trooper') + mobileTemplate.setLevel(88) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_assault_trooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('exogen_dark_trooper_elite', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_imperial_master_sergant_34.py b/scripts/mobiles/generic/faction/imperial/elite_imperial_master_sergant_34.py new file mode 100644 index 00000000..34770523 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_imperial_master_sergant_34.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_master_sergeant_hard') + mobileTemplate.setLevel(34) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_white_black.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_imperial_master_serg_34', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_imperial_master_sergant_79.py b/scripts/mobiles/generic/faction/imperial/elite_imperial_master_sergant_79.py new file mode 100644 index 00000000..9bc7c6d1 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_imperial_master_sergant_79.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_master_sergeant_hard') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_white_black.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_imperial_master_serg_79', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_imperial_sand_trooper_50.py b/scripts/mobiles/generic/faction/imperial/elite_imperial_sand_trooper_50.py new file mode 100644 index 00000000..59417fe9 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_imperial_sand_trooper_50.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_sand_trooper_hard') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sand_trooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_imperial_sand_trooper_50', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_imperial_sand_trooper_85.py b/scripts/mobiles/generic/faction/imperial/elite_imperial_sand_trooper_85.py new file mode 100644 index 00000000..93202c44 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_imperial_sand_trooper_85.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_sand_trooper_hard') + mobileTemplate.setLevel(85) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sand_trooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_imperial_sand_trooper_85', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_imperial_scout_trooper_45.py b/scripts/mobiles/generic/faction/imperial/elite_imperial_scout_trooper_45.py new file mode 100644 index 00000000..19011c10 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_imperial_scout_trooper_45.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_scout_trooper_hard') + mobileTemplate.setLevel(45) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_scout_trooper_white_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_imperial_scout_trooper_45', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_imperial_scout_trooper_84.py b/scripts/mobiles/generic/faction/imperial/elite_imperial_scout_trooper_84.py new file mode 100644 index 00000000..dab6c43f --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_imperial_scout_trooper_84.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_scout_trooper_hard') + mobileTemplate.setLevel(84) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_scout_trooper_white_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_imperial_scout_trooper_84', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_imperial_security_guard_25.py b/scripts/mobiles/generic/faction/imperial/elite_imperial_security_guard_25.py new file mode 100644 index 00000000..38d9f5cf --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_imperial_security_guard_25.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_command_security_guard_hard') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_white_black.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_imperial_secuirty_guard_25', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_imperial_security_guard_76.py b/scripts/mobiles/generic/faction/imperial/elite_imperial_security_guard_76.py new file mode 100644 index 00000000..d59d4eb2 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_imperial_security_guard_76.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_command_security_guard_hard') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_white_black.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_imperial_secuirty_guard_76', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_imperial_stormcaptain.py b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormcaptain.py new file mode 100644 index 00000000..93678b38 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormcaptain.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_captain') + mobileTemplate.setLevel(89) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_captain_black_gold.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_captain_black_black.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_captain_white_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_imperial_stormcaptain', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_imperial_stormrifle_50.py b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormrifle_50.py new file mode 100644 index 00000000..387bf8b8 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormrifle_50.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_rifleman_hard') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_rifleman_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_imperial_stormrifle_50', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_imperial_stormrifle_85.py b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormrifle_85.py new file mode 100644 index 00000000..1f04d9f6 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormrifle_85.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_rifleman_hard') + mobileTemplate.setLevel(85) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_rifleman_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_imperial_stormrifle_85', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_imperial_stormrifle_88.py b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormrifle_88.py new file mode 100644 index 00000000..f20a9ca7 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormrifle_88.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_rifleman_hard') + mobileTemplate.setLevel(88) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_rifleman_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_imperial_stormrifle_88', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_imperial_stormsniper_50.py b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormsniper_50.py new file mode 100644 index 00000000..9f4c25cb --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormsniper_50.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_sniper_hard') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sniper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_imperial_stormsniper_50', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_imperial_stormsniper_85.py b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormsniper_85.py new file mode 100644 index 00000000..7acccd0a --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormsniper_85.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_sniper_hard') + mobileTemplate.setLevel(85) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sniper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_imperial_stormsniper_85', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_imperial_stormsniper_89.py b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormsniper_89.py new file mode 100644 index 00000000..ae834b53 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormsniper_89.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_sniper_hard') + mobileTemplate.setLevel(89) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sniper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_imperial_stormsniper_89', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_imperial_stormtrooper_50.py b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormtrooper_50.py new file mode 100644 index 00000000..70ad5c82 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormtrooper_50.py @@ -0,0 +1,52 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_hard') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_black_black.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_blue.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_gold.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_green.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_grey.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_red.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_white.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_black.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_blue.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_gold.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_green.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_grey.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_red.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_imperial_stormrifle_50', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_imperial_stormtrooper_84.py b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormtrooper_84.py new file mode 100644 index 00000000..2e8ef43a --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormtrooper_84.py @@ -0,0 +1,52 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_hard') + mobileTemplate.setLevel(84) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_black_black.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_blue.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_gold.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_green.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_grey.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_red.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_white.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_black.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_blue.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_gold.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_green.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_grey.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_red.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_imperial_stormrifle_84', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_imperial_stormtrooper_89.py b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormtrooper_89.py new file mode 100644 index 00000000..6ca7b509 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_imperial_stormtrooper_89.py @@ -0,0 +1,52 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_hard') + mobileTemplate.setLevel(89) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_black_black.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_blue.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_gold.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_green.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_grey.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_red.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_white.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_black.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_blue.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_gold.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_green.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_grey.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_red.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_white_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_imperial_stormrifle_89', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_novatrooper.py b/scripts/mobiles/generic/faction/imperial/elite_novatrooper.py new file mode 100644 index 00000000..1ef82853 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_novatrooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stormtrooper_novatrooper_elite') + mobileTemplate.setLevel(82) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_restuss_dark_trooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_novatrooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_novatrooper_commander.py b/scripts/mobiles/generic/faction/imperial/elite_novatrooper_commander.py new file mode 100644 index 00000000..67c5d347 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_novatrooper_commander.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stormtrooper_novatrooper_elite_commander') + mobileTemplate.setLevel(83) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_restuss_dark_trooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_novatrooper_commander', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_sand_trooper_45_1.py b/scripts/mobiles/generic/faction/imperial/elite_sand_trooper_45_1.py new file mode 100644 index 00000000..d2603a01 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_sand_trooper_45_1.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_elite_sand_trooper') + mobileTemplate.setLevel(45) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sandtrooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_sandtrooper_45_1', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_sand_trooper_45_2.py b/scripts/mobiles/generic/faction/imperial/elite_sand_trooper_45_2.py new file mode 100644 index 00000000..d4814148 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_sand_trooper_45_2.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_elite_sand_trooper') + mobileTemplate.setLevel(45) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sandtrooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_sandtrooper_45_2', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_sand_trooper_81.py b/scripts/mobiles/generic/faction/imperial/elite_sand_trooper_81.py new file mode 100644 index 00000000..e58e3f32 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_sand_trooper_81.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_elite_sand_trooper') + mobileTemplate.setLevel(81) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sandtrooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_sandtrooper_81', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_sand_trooper_commando_75.py b/scripts/mobiles/generic/faction/imperial/elite_sand_trooper_commando_75.py new file mode 100644 index 00000000..acc542e9 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_sand_trooper_commando_75.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_elite_sand_trooper_hard') + mobileTemplate.setLevel(75) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sandtrooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_sandtrooper_commando_75', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_sand_trooper_commando_87.py b/scripts/mobiles/generic/faction/imperial/elite_sand_trooper_commando_87.py new file mode 100644 index 00000000..43261c13 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_sand_trooper_commando_87.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_elite_sand_trooper_hard') + mobileTemplate.setLevel(87) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sandtrooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_sandtrooper_commando_87', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/elite_sand_trooper_commando_vet.py b/scripts/mobiles/generic/faction/imperial/elite_sand_trooper_commando_vet.py new file mode 100644 index 00000000..c506a64c --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/elite_sand_trooper_commando_vet.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fbase_elite_sand_trooper_extreme') + mobileTemplate.setLevel(89) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sandtrooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_sandtrooper_commando_vet', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/emperors_hand.py b/scripts/mobiles/generic/faction/imperial/emperors_hand.py new file mode 100644 index 00000000..65456f74 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/emperors_hand.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('emperors_hand') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(2) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_emperors_hand_human_female_01.iff') + templates.add('object/mobile/shared_dressed_emperors_hand_human_male_01.iff') + templates.add('object/mobile/shared_dressed_emperors_hand_human_male_02.iff') + templates.add('object/mobile/shared_dressed_emperors_hand_zabrak_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('emperors_hand', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/eow_fbase_imperial_corporal.py b/scripts/mobiles/generic/faction/imperial/eow_fbase_imperial_corporal.py new file mode 100644 index 00000000..7cca0708 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/eow_fbase_imperial_corporal.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('eow_fbase_imperial_corporal') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + #mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_captain_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + #mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + #mobileTemplate.setDefaultAttack('rangedShot') + #mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('eow_fbase_imperial_corporal', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/eow_fbase_stormtrooper.py b/scripts/mobiles/generic/faction/imperial/eow_fbase_stormtrooper.py new file mode 100644 index 00000000..10a31f91 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/eow_fbase_stormtrooper.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('eow_fbase_stormtrooper') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + #mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + #mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + #mobileTemplate.setDefaultAttack('rangedShot') + #mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('eow_fbase_stormtrooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/exogen_class_dark_trooper.py b/scripts/mobiles/generic/faction/imperial/exogen_class_dark_trooper.py new file mode 100644 index 00000000..74c29bc2 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/exogen_class_dark_trooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_elite_dark_trooper') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dark_trooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('exogen_dark_trooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/experienced_imp_captain_45.py b/scripts/mobiles/generic/faction/imperial/experienced_imp_captain_45.py new file mode 100644 index 00000000..feeb06c8 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/experienced_imp_captain_45.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_army_captain_hard') + mobileTemplate.setLevel(45) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_captain_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('exp_imp_captain_45', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/experienced_imp_captain_85.py b/scripts/mobiles/generic/faction/imperial/experienced_imp_captain_85.py new file mode 100644 index 00000000..47a000b1 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/experienced_imp_captain_85.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_army_captain_hard') + mobileTemplate.setLevel(85) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_captain_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('exp_imp_captain_85', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/experienced_imp_corporal_40.py b/scripts/mobiles/generic/faction/imperial/experienced_imp_corporal_40.py new file mode 100644 index 00000000..82fa8c0f --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/experienced_imp_corporal_40.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_corporal_hard') + mobileTemplate.setLevel(40) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_captain_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('exp_imp_corporal_40', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/experienced_imp_corporal_78.py b/scripts/mobiles/generic/faction/imperial/experienced_imp_corporal_78.py new file mode 100644 index 00000000..f006a0a0 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/experienced_imp_corporal_78.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_corporal_hard') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_captain_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('exp_imp_corporal_78', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/general_otto.py b/scripts/mobiles/generic/faction/imperial/general_otto.py new file mode 100644 index 00000000..37ae9e0b --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/general_otto.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('general_otto') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_general_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('general_otto', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/glory_class_dark_trooper.py b/scripts/mobiles/generic/faction/imperial/glory_class_dark_trooper.py new file mode 100644 index 00000000..8ef5350a --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/glory_class_dark_trooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_dark_trooper_hard') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sand_trooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('glory_trooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/glory_class_dark_trooper_2.py b/scripts/mobiles/generic/faction/imperial/glory_class_dark_trooper_2.py new file mode 100644 index 00000000..75645b7d --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/glory_class_dark_trooper_2.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_dark_trooper_hard') + mobileTemplate.setLevel(86) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sand_trooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('glory_trooper_2', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/grizzled_elite_sand_trooper.py b/scripts/mobiles/generic/faction/imperial/grizzled_elite_sand_trooper.py new file mode 100644 index 00000000..a2d8637c --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/grizzled_elite_sand_trooper.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fbase_scout_trooper_extreme') + mobileTemplate.setLevel(88) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_scout_trooper_white_white.iff') + templates.add('object/mobile/shared_dressed_scout_trooper_m.iff') + templates.add('object/mobile/shared_dressed_scout_trooper_black_black.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('grizzled_elite_scouttrooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/grizzled_elite_scout_trooper.py b/scripts/mobiles/generic/faction/imperial/grizzled_elite_scout_trooper.py new file mode 100644 index 00000000..319b009b --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/grizzled_elite_scout_trooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fbase_sand_trooper_extreme') + mobileTemplate.setLevel(89) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sandtrooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('grizzled_elite_sandtrooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/grizzled_imp_colonel.py b/scripts/mobiles/generic/faction/imperial/grizzled_imp_colonel.py new file mode 100644 index 00000000..9e77381c --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/grizzled_imp_colonel.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fbase_imperial_colonel_extreme') + mobileTemplate.setLevel(89) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_colonel_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('grizzled_imp_colonel', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/grizzled_imp_exterminator.py b/scripts/mobiles/generic/faction/imperial/grizzled_imp_exterminator.py new file mode 100644 index 00000000..e4dc431c --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/grizzled_imp_exterminator.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fbase_imperial_exterminator_extreme') + mobileTemplate.setLevel(89) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_exterminator.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('grizzled_imp_exterminator', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/gunner.py b/scripts/mobiles/generic/faction/imperial/gunner.py new file mode 100644 index 00000000..553f3928 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/gunner.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mission_gunner') + mobileTemplate.setLevel(15) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_gunner_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gunner', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/hardened_swamp_trooper_25.py b/scripts/mobiles/generic/faction/imperial/hardened_swamp_trooper_25.py new file mode 100644 index 00000000..aecc489a --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/hardened_swamp_trooper_25.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_swamp_trooper_hard') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_swamp_trooper.iff') + templates.add('object/mobile/shared_dressed_swamp_trooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('hardened_swamp_troop_25', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/high_colonel.py b/scripts/mobiles/generic/faction/imperial/high_colonel.py new file mode 100644 index 00000000..b2686056 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/high_colonel.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('high_colonel') + mobileTemplate.setLevel(24) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_colonel_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('high_colonel', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_1st_lieutenant_20.py b/scripts/mobiles/generic/faction/imperial/imp_1st_lieutenant_20.py new file mode 100644 index 00000000..fc042194 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_1st_lieutenant_20.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_first_lieutenant') + mobileTemplate.setLevel(20) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_lieutenant_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_fst_lieutenant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_1st_lieutenant_20_2.py b/scripts/mobiles/generic/faction/imperial/imp_1st_lieutenant_20_2.py new file mode 100644 index 00000000..4a4f3898 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_1st_lieutenant_20_2.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_first_lieutenant') + mobileTemplate.setLevel(20) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_lieutenant_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_fst_lieutenant_20_2', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_1st_lieutenant_68.py b/scripts/mobiles/generic/faction/imperial/imp_1st_lieutenant_68.py new file mode 100644 index 00000000..620ad55b --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_1st_lieutenant_68.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_first_lieutenant') + mobileTemplate.setLevel(68) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_lieutenant_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_fst_lieutenant_68', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_army_captain.py b/scripts/mobiles/generic/faction/imperial/imp_army_captain.py new file mode 100644 index 00000000..82b6cfaf --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_army_captain.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_army_captain') + mobileTemplate.setLevel(21) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_captain_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_army_captain', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_assault_trooper.py b/scripts/mobiles/generic/faction/imperial/imp_assault_trooper.py new file mode 100644 index 00000000..ecc796be --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_assault_trooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('assault_trooper') + mobileTemplate.setLevel(26) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_assault_trooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_assault_trooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_assault_trooper_squad_leader.py b/scripts/mobiles/generic/faction/imperial/imp_assault_trooper_squad_leader.py new file mode 100644 index 00000000..d891d25e --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_assault_trooper_squad_leader.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_squad_leader') + mobileTemplate.setLevel(27) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_assault_trooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_assault_trooper_squadleader', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_bombardier_25.py b/scripts/mobiles/generic/faction/imperial/imp_bombardier_25.py new file mode 100644 index 00000000..175e508a --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_bombardier_25.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_bombardier') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_bombardier_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_bombardier_25', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_bombardier_75.py b/scripts/mobiles/generic/faction/imperial/imp_bombardier_75.py new file mode 100644 index 00000000..f011ed76 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_bombardier_75.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_bombardier') + mobileTemplate.setLevel(75) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_bombardier_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_bombardier_75', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_brigadier_general.py b/scripts/mobiles/generic/faction/imperial/imp_brigadier_general.py new file mode 100644 index 00000000..43d93116 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_brigadier_general.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_brigadier_general') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_general_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imperial_brigadier_general', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_cadet.py b/scripts/mobiles/generic/faction/imperial/imp_cadet.py new file mode 100644 index 00000000..bf6dc621 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_cadet.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_cadet') + mobileTemplate.setLevel(7) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_soldier_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_cadet', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_cadet_squad.py b/scripts/mobiles/generic/faction/imperial/imp_cadet_squad.py new file mode 100644 index 00000000..b85ebda8 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_cadet_squad.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_cadet_squadleader') + mobileTemplate.setLevel(7) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_soldier_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_cadet_squadl', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_captain_21.py b/scripts/mobiles/generic/faction/imperial/imp_captain_21.py new file mode 100644 index 00000000..f1ed31c4 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_captain_21.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_army_captain') + mobileTemplate.setLevel(21) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_captain_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_captain_21', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_captain_69.py b/scripts/mobiles/generic/faction/imperial/imp_captain_69.py new file mode 100644 index 00000000..29438eaf --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_captain_69.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_army_captain') + mobileTemplate.setLevel(69) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_captain_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_captain_69', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_colonel.py b/scripts/mobiles/generic/faction/imperial/imp_colonel.py new file mode 100644 index 00000000..9e77381c --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_colonel.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fbase_imperial_colonel_extreme') + mobileTemplate.setLevel(89) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_colonel_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('grizzled_imp_colonel', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_colonel_23.py b/scripts/mobiles/generic/faction/imperial/imp_colonel_23.py new file mode 100644 index 00000000..c939f22d --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_colonel_23.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_colonel') + mobileTemplate.setLevel(23) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_colonel_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_colonel_23', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_colonel_77.py b/scripts/mobiles/generic/faction/imperial/imp_colonel_77.py new file mode 100644 index 00000000..2320abb5 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_colonel_77.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_colonel') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_colonel_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_colonel_77', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_comm_security_guard_15.py b/scripts/mobiles/generic/faction/imperial/imp_comm_security_guard_15.py new file mode 100644 index 00000000..e710c3ff --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_comm_security_guard_15.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_command_security_guard') + mobileTemplate.setLevel(15) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_comm_security_guard_15', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_comm_security_guard_67.py b/scripts/mobiles/generic/faction/imperial/imp_comm_security_guard_67.py new file mode 100644 index 00000000..6ddd90d2 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_comm_security_guard_67.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_command_security_guard') + mobileTemplate.setLevel(67) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_comm_security_guard_67', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_comm_specialist_35.py b/scripts/mobiles/generic/faction/imperial/imp_comm_specialist_35.py new file mode 100644 index 00000000..56493dc3 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_comm_specialist_35.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_comm_operator_hard') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_comm_specialist_77', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_comm_specialist_77.py b/scripts/mobiles/generic/faction/imperial/imp_comm_specialist_77.py new file mode 100644 index 00000000..1685a7df --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_comm_specialist_77.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_comm_operator_hard') + mobileTemplate.setLevel(35) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_comm_specialist_35', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_commop_14.py b/scripts/mobiles/generic/faction/imperial/imp_commop_14.py new file mode 100644 index 00000000..6084ef71 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_commop_14.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fbase_comm_operator') + mobileTemplate.setLevel(14) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_comm_op_14', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_commop_64.py b/scripts/mobiles/generic/faction/imperial/imp_commop_64.py new file mode 100644 index 00000000..2dbf9a69 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_commop_64.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fbase_comm_operator') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_comm_op_64', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_corporal_16.py b/scripts/mobiles/generic/faction/imperial/imp_corporal_16.py new file mode 100644 index 00000000..a76dbe4d --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_corporal_16.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_corporal') + mobileTemplate.setLevel(16) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_corporal_16', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_corporal_66.py b/scripts/mobiles/generic/faction/imperial/imp_corporal_66.py new file mode 100644 index 00000000..ac377ff2 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_corporal_66.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_corporal') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_corporal_66', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_dead-eye_36.py b/scripts/mobiles/generic/faction/imperial/imp_dead-eye_36.py new file mode 100644 index 00000000..d43d6bc0 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_dead-eye_36.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_sharpshooter_hard') + mobileTemplate.setLevel(36) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_dead-eye_36', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_dead-eye_78.py b/scripts/mobiles/generic/faction/imperial/imp_dead-eye_78.py new file mode 100644 index 00000000..4a87a4a1 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_dead-eye_78.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_sharpshooter_hard') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_dead-eye_78', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_exterminator.py b/scripts/mobiles/generic/faction/imperial/imp_exterminator.py new file mode 100644 index 00000000..9ccb2c04 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_exterminator.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_exterminator') + mobileTemplate.setLevel(28) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_exterminator.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_exterminator', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_general.py b/scripts/mobiles/generic/faction/imperial/imp_general.py new file mode 100644 index 00000000..dfc7f87e --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_general.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_general') + mobileTemplate.setLevel(28) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_general_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_general', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_high_general.py b/scripts/mobiles/generic/faction/imperial/imp_high_general.py new file mode 100644 index 00000000..2c20bb4e --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_high_general.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_high_general') + mobileTemplate.setLevel(29) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_general_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_high_general', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_inquisitor_80.py b/scripts/mobiles/generic/faction/imperial/imp_inquisitor_80.py new file mode 100644 index 00000000..c07118cd --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_inquisitor_80.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_inquisitor') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_inquisitor_human_male_01.iff') + templates.add('object/mobile/shared_dressed_imperial_inquisitor_human_male_02.iff') + templates.add('object/mobile/shared_dressed_imperial_inquisitor_human_male_03.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/baton/shared_baton_stun.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_inquisitor_80', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_inquisitor_83.py b/scripts/mobiles/generic/faction/imperial/imp_inquisitor_83.py new file mode 100644 index 00000000..19e156a3 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_inquisitor_83.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_inquisitor') + mobileTemplate.setLevel(16) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_inquisitor_human_male_01.iff') + templates.add('object/mobile/shared_dressed_imperial_inquisitor_human_male_02.iff') + templates.add('object/mobile/shared_dressed_imperial_inquisitor_human_male_03.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_corporal_16', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_lance_corporal.py b/scripts/mobiles/generic/faction/imperial/imp_lance_corporal.py new file mode 100644 index 00000000..e5810fcd --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_lance_corporal.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_lance_corporal') + mobileTemplate.setLevel(15) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_lance_corp', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_lieutenant_colonel.py b/scripts/mobiles/generic/faction/imperial/imp_lieutenant_colonel.py new file mode 100644 index 00000000..0cc698bd --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_lieutenant_colonel.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_lieutenant_colonel') + mobileTemplate.setLevel(22) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_colonel_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_lieutenant_colonel', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_lieutenant_general.py b/scripts/mobiles/generic/faction/imperial/imp_lieutenant_general.py new file mode 100644 index 00000000..b6e52466 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_lieutenant_general.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_lieutenant_general') + mobileTemplate.setLevel(27) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_general_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_lieutenant_general', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_major.py b/scripts/mobiles/generic/faction/imperial/imp_major.py new file mode 100644 index 00000000..aaf2b9ff --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_major.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_major') + mobileTemplate.setLevel(21) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_major_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_major', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_major_general.py b/scripts/mobiles/generic/faction/imperial/imp_major_general.py new file mode 100644 index 00000000..04edf015 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_major_general.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_major_general') + mobileTemplate.setLevel(26) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_general_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_major_general', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_master_sergant_18.py b/scripts/mobiles/generic/faction/imperial/imp_master_sergant_18.py new file mode 100644 index 00000000..ce9f08e6 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_master_sergant_18.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_master_sergeant') + mobileTemplate.setLevel(18) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_master_sergant_18', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_master_sergant_67.py b/scripts/mobiles/generic/faction/imperial/imp_master_sergant_67.py new file mode 100644 index 00000000..99e92ad0 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_master_sergant_67.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_master_sergeant') + mobileTemplate.setLevel(67) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_master_sergant_67', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_medic_16.py b/scripts/mobiles/generic/faction/imperial/imp_medic_16.py new file mode 100644 index 00000000..e9f46309 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_medic_16.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_medic') + mobileTemplate.setLevel(16) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_medic1_human_male_01.iff') + templates.add('object/mobile/shared_dressed_imperial_medic3_human_male_01.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_medic_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_medic_16', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_medic_65.py b/scripts/mobiles/generic/faction/imperial/imp_medic_65.py new file mode 100644 index 00000000..eabbc37a --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_medic_65.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_medic') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_medic1_human_male_01.iff') + templates.add('object/mobile/shared_dressed_imperial_medic3_human_male_01.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_medic_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_medic_65', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_noncom_14.py b/scripts/mobiles/generic/faction/imperial/imp_noncom_14.py new file mode 100644 index 00000000..84223f52 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_noncom_14.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_noncom') + mobileTemplate.setLevel(14) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_noncom_14', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_noncom_64.py b/scripts/mobiles/generic/faction/imperial/imp_noncom_64.py new file mode 100644 index 00000000..23594506 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_noncom_64.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_noncom') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_noncom_64', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_pilot.py b/scripts/mobiles/generic/faction/imperial/imp_pilot.py new file mode 100644 index 00000000..f9b46448 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_pilot.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('storyteller_imperial_pilot') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_tie_pilot_f.iff') + templates.add('object/mobile/shared_tie_pilot_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_pilot', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_private.py b/scripts/mobiles/generic/faction/imperial/imp_private.py new file mode 100644 index 00000000..1439ad02 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_private.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_private') + mobileTemplate.setLevel(15) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_private', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_sandtrooper_25.py b/scripts/mobiles/generic/faction/imperial/imp_sandtrooper_25.py new file mode 100644 index 00000000..2aa37cfd --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_sandtrooper_25.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_sand_trooper') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sand_trooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_sandtrooper_25', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_sandtrooper_75.py b/scripts/mobiles/generic/faction/imperial/imp_sandtrooper_75.py new file mode 100644 index 00000000..39250a46 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_sandtrooper_75.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_sand_trooper') + mobileTemplate.setLevel(75) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sand_trooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_sandtrooper_75', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_scouttrooper_23.py b/scripts/mobiles/generic/faction/imperial/imp_scouttrooper_23.py new file mode 100644 index 00000000..91c361f7 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_scouttrooper_23.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_scout_trooper') + mobileTemplate.setLevel(23) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_scout_trooper_white_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_scout_trooper_23', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_scouttrooper_67.py b/scripts/mobiles/generic/faction/imperial/imp_scouttrooper_67.py new file mode 100644 index 00000000..2e6eff56 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_scouttrooper_67.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_scout_trooper') + mobileTemplate.setLevel(67) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_scout_trooper_white_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_scout_trooper_67', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_second_lieutenant.py b/scripts/mobiles/generic/faction/imperial/imp_second_lieutenant.py new file mode 100644 index 00000000..3ba3a6dc --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_second_lieutenant.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_second_lieutenant') + mobileTemplate.setLevel(20) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_lieutenant_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_2nd_lieutenant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_senior_cadet.py b/scripts/mobiles/generic/faction/imperial/imp_senior_cadet.py new file mode 100644 index 00000000..f02086f2 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_senior_cadet.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_senior_cadet') + mobileTemplate.setLevel(8) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_soldier_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_senior_cadet', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_sergeant_16.py b/scripts/mobiles/generic/faction/imperial/imp_sergeant_16.py new file mode 100644 index 00000000..668fa8f3 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_sergeant_16.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_sergeant') + mobileTemplate.setLevel(16) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_sergeant_16', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_sergeant_65.py b/scripts/mobiles/generic/faction/imperial/imp_sergeant_65.py new file mode 100644 index 00000000..60e57e86 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_sergeant_65.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_sergeant') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_sergeant_65', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_sergeant_major.py b/scripts/mobiles/generic/faction/imperial/imp_sergeant_major.py new file mode 100644 index 00000000..499f8f66 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_sergeant_major.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_sergeant_major') + mobileTemplate.setLevel(16) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_sergeant_major', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_sharpshooter_17.py b/scripts/mobiles/generic/faction/imperial/imp_sharpshooter_17.py new file mode 100644 index 00000000..36d399f6 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_sharpshooter_17.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_sharpshooter') + mobileTemplate.setLevel(17) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_sharpshooter_17', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_sharpshooter_66.py b/scripts/mobiles/generic/faction/imperial/imp_sharpshooter_66.py new file mode 100644 index 00000000..d729278f --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_sharpshooter_66.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_sharpshooter') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_sharpshooter_66', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_specialist_13.py b/scripts/mobiles/generic/faction/imperial/imp_specialist_13.py new file mode 100644 index 00000000..1428ffd7 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_specialist_13.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_specialist_noncom') + mobileTemplate.setLevel(13) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_specialist_13', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_specialist_65.py b/scripts/mobiles/generic/faction/imperial/imp_specialist_65.py new file mode 100644 index 00000000..3ef94922 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_specialist_65.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_specialist_noncom') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_specialist_65', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_staff_corporal.py b/scripts/mobiles/generic/faction/imperial/imp_staff_corporal.py new file mode 100644 index 00000000..ee337374 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_staff_corporal.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_staff_corporal') + mobileTemplate.setLevel(17) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_staff_corp', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_staff_sergeant.py b/scripts/mobiles/generic/faction/imperial/imp_staff_sergeant.py new file mode 100644 index 00000000..8addc0e6 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_staff_sergeant.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_staff_sergeant') + mobileTemplate.setLevel(17) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_staff_serg', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_stealth_operative.py b/scripts/mobiles/generic/faction/imperial/imp_stealth_operative.py new file mode 100644 index 00000000..92a7fceb --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_stealth_operative.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('assassin_mission_recruiter_imperial') + mobileTemplate.setLevel(16) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_stealth_op', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_storm_captain_29.py b/scripts/mobiles/generic/faction/imperial/imp_storm_captain_29.py new file mode 100644 index 00000000..36c2b05c --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_storm_captain_29.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_captain') + mobileTemplate.setLevel(29) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_captain_black_black.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_captain_black_gold.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_captain_white_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_storm_captain_29', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_storm_captain_81.py b/scripts/mobiles/generic/faction/imperial/imp_storm_captain_81.py new file mode 100644 index 00000000..7e87dda5 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_storm_captain_81.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_captain') + mobileTemplate.setLevel(81) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_captain_black_black.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_captain_black_gold.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_captain_white_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_storm_captain_81', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_storm_commando_29.py b/scripts/mobiles/generic/faction/imperial/imp_storm_commando_29.py new file mode 100644 index 00000000..2b462191 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_storm_commando_29.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_storm_commando') + mobileTemplate.setLevel(16) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_commando_m.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_commando1_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_storm_commando_16', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_storm_commando_80.py b/scripts/mobiles/generic/faction/imperial/imp_storm_commando_80.py new file mode 100644 index 00000000..7fff379e --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_storm_commando_80.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_storm_commando') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_commando_m.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_commando1_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_storm_commando_80', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_stormmedic_25.py b/scripts/mobiles/generic/faction/imperial/imp_stormmedic_25.py new file mode 100644 index 00000000..39761871 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_stormmedic_25.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_medic') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_medic1_human_male_01.iff') + templates.add('object/mobile/shared_dressed_imperial_medic3_human_male_01.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_medic_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_stormmedic_25', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_stormmedic_74.py b/scripts/mobiles/generic/faction/imperial/imp_stormmedic_74.py new file mode 100644 index 00000000..7072dac1 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_stormmedic_74.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_medic') + mobileTemplate.setLevel(74) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_medic1_human_male_01.iff') + templates.add('object/mobile/shared_dressed_imperial_medic3_human_male_01.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_medic_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_stormmedic_74', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_stormrifle_25.py b/scripts/mobiles/generic/faction/imperial/imp_stormrifle_25.py new file mode 100644 index 00000000..d05826ec --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_stormrifle_25.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_rifleman') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_rifleman_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_stormrifle_25', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_stormrifle_79.py b/scripts/mobiles/generic/faction/imperial/imp_stormrifle_79.py new file mode 100644 index 00000000..a0d32eb9 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_stormrifle_79.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_rifleman') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_rifleman_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_stormrifle_79', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_stormsniper_25.py b/scripts/mobiles/generic/faction/imperial/imp_stormsniper_25.py new file mode 100644 index 00000000..5e597eca --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_stormsniper_25.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_sniper') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sniper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_stormsniper_25', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_stormsniper_79.py b/scripts/mobiles/generic/faction/imperial/imp_stormsniper_79.py new file mode 100644 index 00000000..eb5b16aa --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_stormsniper_79.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_sniper') + mobileTemplate.setLevel(75) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sniper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_stormsniper_75', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_stormsurgeon_50.py b/scripts/mobiles/generic/faction/imperial/imp_stormsurgeon_50.py new file mode 100644 index 00000000..8794f0c7 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_stormsurgeon_50.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_medic_hard') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_medic1_human_male_01.iff') + templates.add('object/mobile/shared_dressed_imperial_medic3_human_male_01.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_medic_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_stormsurgeon_50', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_stormsurgeon_85.py b/scripts/mobiles/generic/faction/imperial/imp_stormsurgeon_85.py new file mode 100644 index 00000000..75cdf96b --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_stormsurgeon_85.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_medic_hard') + mobileTemplate.setLevel(85) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_medic1_human_male_01.iff') + templates.add('object/mobile/shared_dressed_imperial_medic3_human_male_01.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_medic_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_stormsurgeon_85', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_stormsurgeon_89.py b/scripts/mobiles/generic/faction/imperial/imp_stormsurgeon_89.py new file mode 100644 index 00000000..4cb9f5e4 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_stormsurgeon_89.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper_medic_hard') + mobileTemplate.setLevel(89) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_medic1_human_male_01.iff') + templates.add('object/mobile/shared_dressed_imperial_medic3_human_male_01.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_medic_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_stormsurgeon_89', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_25.py b/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_25.py new file mode 100644 index 00000000..9951511e --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_25.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_stormtrooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_stormtrooper_25', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_80.py b/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_80.py new file mode 100644 index 00000000..20617178 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_80.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_stormtrooper') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_stormtrooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_stormtrooper_80', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_colonel_55.py b/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_colonel_55.py new file mode 100644 index 00000000..fa22af52 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_colonel_55.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fbase_stormtrooper_squad_leader_extreme') + mobileTemplate.setLevel(55) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_stormtrooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_stormtrooper_colonel_55', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_colonel_86.py b/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_colonel_86.py new file mode 100644 index 00000000..9ffb1607 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_colonel_86.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fbase_stormtrooper_squad_leader_extreme') + mobileTemplate.setLevel(86) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_stormtrooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_stormtrooper_colonel_86', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_colonel_89.py b/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_colonel_89.py new file mode 100644 index 00000000..a40e5ebb --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_colonel_89.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fbase_stormtrooper_squad_leader_extreme') + mobileTemplate.setLevel(89) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_stormtrooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_stormtrooper_colonel_89', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_squad_leader_27.py b/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_squad_leader_27.py new file mode 100644 index 00000000..91695b01 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_squad_leader_27.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fbase_stormtrooper_squad_leader') + mobileTemplate.setLevel(27) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_stormtrooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_stormtrooper_squad_leader_27', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_squad_leader_76.py b/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_squad_leader_76.py new file mode 100644 index 00000000..75cd634f --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_stormtrooper_squad_leader_76.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fbase_stormtrooper_squad_leader') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(2) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_stormtrooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_stormtrooper_squad_leader_76', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_surface_marshall.py b/scripts/mobiles/generic/faction/imperial/imp_surface_marshall.py new file mode 100644 index 00000000..9c94d781 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_surface_marshall.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_surface_marshal') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_surface_marshall', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_surgeon_33.py b/scripts/mobiles/generic/faction/imperial/imp_surgeon_33.py new file mode 100644 index 00000000..869eb854 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_surgeon_33.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_medic_hard') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_medic1_human_male_01.iff') + templates.add('object/mobile/shared_dressed_imperial_medic3_human_male_01.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_medic_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_surgeon_33', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_surgeon_77.py b/scripts/mobiles/generic/faction/imperial/imp_surgeon_77.py new file mode 100644 index 00000000..b63705b1 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_surgeon_77.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_medic_hard') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_medic1_human_male_01.iff') + templates.add('object/mobile/shared_dressed_imperial_medic3_human_male_01.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_medic_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_surgeon_77', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_swamp_trooper.py b/scripts/mobiles/generic/faction/imperial/imp_swamp_trooper.py new file mode 100644 index 00000000..65c794b1 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_swamp_trooper.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_swamp_trooper') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_swamp_trooper.iff') + templates.add('object/mobile/shared_dressed_swamp_trooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('swamp_trooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_trooper.py b/scripts/mobiles/generic/faction/imperial/imp_trooper.py new file mode 100644 index 00000000..3c37938c --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_trooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_trooper') + mobileTemplate.setLevel(15) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_stormtrooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_trooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_warant_officer_i.py b/scripts/mobiles/generic/faction/imperial/imp_warant_officer_i.py new file mode 100644 index 00000000..9bb2e1ef --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_warant_officer_i.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_warrant_officer_i') + mobileTemplate.setLevel(19) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_warrant_offi_i', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_warant_officer_ii.py b/scripts/mobiles/generic/faction/imperial/imp_warant_officer_ii.py new file mode 100644 index 00000000..d0bc9036 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_warant_officer_ii.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_warrant_officer_ii') + mobileTemplate.setLevel(18) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_warrant_offi_ii', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_warant_officer_ii_1st_class_33.py b/scripts/mobiles/generic/faction/imperial/imp_warant_officer_ii_1st_class_33.py new file mode 100644 index 00000000..d2007979 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_warant_officer_ii_1st_class_33.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_warrant_officer_ii_hard') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_warrant_offi_1st_class_ii_33', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_warant_officer_ii_1st_class_79.py b/scripts/mobiles/generic/faction/imperial/imp_warant_officer_ii_1st_class_79.py new file mode 100644 index 00000000..90b8f652 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_warant_officer_ii_1st_class_79.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_warrant_officer_ii_hard') + mobileTemplate.setLevel(79) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_warrant_offi_1st_class_ii_79', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_warant_officer_ii_2nd_class_18.py b/scripts/mobiles/generic/faction/imperial/imp_warant_officer_ii_2nd_class_18.py new file mode 100644 index 00000000..b08b94fc --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_warant_officer_ii_2nd_class_18.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_warrant_officer_ii') + mobileTemplate.setLevel(18) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_warrant_offi_2nd_class_ii_18', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imp_warant_officer_ii_2nd_class_67.py b/scripts/mobiles/generic/faction/imperial/imp_warant_officer_ii_2nd_class_67.py new file mode 100644 index 00000000..412fed84 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imp_warant_officer_ii_2nd_class_67.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_warrant_officer_ii') + mobileTemplate.setLevel(67) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_warrant_offi_2nd_class_ii_67', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/imprisoned_imp_offi.py b/scripts/mobiles/generic/faction/imperial/imprisoned_imp_offi.py new file mode 100644 index 00000000..1fdd9db7 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/imprisoned_imp_offi.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imprisoned_imperial') + mobileTemplate.setLevel(11) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('imp_imp_officer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/lance_bombardier.py b/scripts/mobiles/generic/faction/imperial/lance_bombardier.py new file mode 100644 index 00000000..781ea7b3 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/lance_bombardier.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('lance_bombardier') + mobileTemplate.setLevel(16) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_bombardier_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('lance_bombardier', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/lesser_prophet_dark.py b/scripts/mobiles/generic/faction/imperial/lesser_prophet_dark.py new file mode 100644 index 00000000..3ab7b70d --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/lesser_prophet_dark.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('lesser_prophet_of_the_dark_side') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(9) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dark_jedi_human_female_01.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_human_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/crafted_saber/shared_sword_lightsaber_one_handed_gcw_s01_gen4.iff', 9, 1.0) + weapontemplate = WeaponTemplate('object/weapon/melee/sword/crafted_saber/shared_sword_lightsaber_one_handed_gcw_s01_gen5.iff', 9, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('saberhit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('lesser_prophet_dark_side', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/master_prophet_dark.py b/scripts/mobiles/generic/faction/imperial/master_prophet_dark.py new file mode 100644 index 00000000..a859156a --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/master_prophet_dark.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('master_prophet_of_the_dark_side') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(9) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dark_jedi_elder_female_human_01.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_elder_female_human_02.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_elder_female_human_03.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_elder_male_human_01.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_elder_male_human_02.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_elder_male_human_03.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_elder_male_human_04.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/crafted_saber/shared_sword_lightsaber_one_handed_gcw_s01_gen4.iff', 9, 1.0) + weapontemplate = WeaponTemplate('object/weapon/melee/sword/crafted_saber/shared_sword_lightsaber_one_handed_gcw_s01_gen5.iff', 9, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('saberhit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('master_prophet_dark_side', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/nova_trooper.py b/scripts/mobiles/generic/faction/imperial/nova_trooper.py new file mode 100644 index 00000000..8d1a09b8 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/nova_trooper.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stormtrooper_novatrooper') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_black_black.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_blue.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_gold.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_green.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_grey.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_red.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('novatrooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/nova_trooper_cadet.py b/scripts/mobiles/generic/faction/imperial/nova_trooper_cadet.py new file mode 100644 index 00000000..6304ed88 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/nova_trooper_cadet.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stormtrooper_novatrooper_cadet') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(8) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_black_black.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_blue.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_gold.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_green.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_grey.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_red.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('novatrooper_cadet', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/nova_trooper_captain.py b/scripts/mobiles/generic/faction/imperial/nova_trooper_captain.py new file mode 100644 index 00000000..58367eed --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/nova_trooper_captain.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stormtrooper_novatrooper_captain') + mobileTemplate.setLevel(82) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_black_black.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_blue.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_gold.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_green.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_grey.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_red.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('novatrooper_captain', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/nova_trooper_commander.py b/scripts/mobiles/generic/faction/imperial/nova_trooper_commander.py new file mode 100644 index 00000000..f9a5d63e --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/nova_trooper_commander.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stormtrooper_novatrooper_commander') + mobileTemplate.setLevel(82) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_black_black.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_blue.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_gold.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_green.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_grey.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_red.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('novatrooper_commander', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/nova_trooper_ensign.py b/scripts/mobiles/generic/faction/imperial/nova_trooper_ensign.py new file mode 100644 index 00000000..2243e49a --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/nova_trooper_ensign.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stormtrooper_novatrooper_ensign') + mobileTemplate.setLevel(81) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_black_black.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_blue.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_gold.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_green.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_grey.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_red.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('novatrooper_ensign', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/nova_trooper_medic.py b/scripts/mobiles/generic/faction/imperial/nova_trooper_medic.py new file mode 100644 index 00000000..8ca2ac78 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/nova_trooper_medic.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stormtrooper_novatrooper_medic') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_black_black.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_blue.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_gold.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_green.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_grey.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_red.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('novatrooper_medic', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/nova_trooper_squad_leader.py b/scripts/mobiles/generic/faction/imperial/nova_trooper_squad_leader.py new file mode 100644 index 00000000..64e32a14 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/nova_trooper_squad_leader.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stormtrooper_novatrooper_squad_leader') + mobileTemplate.setLevel(81) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_black_black.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_blue.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_gold.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_green.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_grey.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_red.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_black_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('novatrooper_squad_leader', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/opressor_7_dark_trooper_80.py b/scripts/mobiles/generic/faction/imperial/opressor_7_dark_trooper_80.py new file mode 100644 index 00000000..b3812249 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/opressor_7_dark_trooper_80.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_elite_dark_trooper_hard') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dark_trooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('opp_7_80', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/opressor_7_dark_trooper_88.py b/scripts/mobiles/generic/faction/imperial/opressor_7_dark_trooper_88.py new file mode 100644 index 00000000..06b9629e --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/opressor_7_dark_trooper_88.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fbase_elite_dark_trooper_extreme') + mobileTemplate.setLevel(88) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dark_trooper_black_hole.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('opp_7_88', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/opressor_9_dark_trooper.py b/scripts/mobiles/generic/faction/imperial/opressor_9_dark_trooper.py new file mode 100644 index 00000000..d2ef9b48 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/opressor_9_dark_trooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_elite_dark_trooper_hard') + mobileTemplate.setLevel(89) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dark_trooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('opp_9', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/probot_drone.py b/scripts/mobiles/generic/faction/imperial/probot_drone.py new file mode 100644 index 00000000..55374b6d --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/probot_drone.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_dark_trooper') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_probot.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('probot_drone', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/probot_seeker.py b/scripts/mobiles/generic/faction/imperial/probot_seeker.py new file mode 100644 index 00000000..2ed5b8d6 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/probot_seeker.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_probot_drone') + mobileTemplate.setLevel(8) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_probot.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('probot_seeker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/prophet_dark.py b/scripts/mobiles/generic/faction/imperial/prophet_dark.py new file mode 100644 index 00000000..1a5ed129 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/prophet_dark.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('prophet_of_the_dark_side') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(9) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dark_jedi_elder_female_human_01.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_elder_female_human_02.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_elder_female_human_03.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_elder_male_human_01.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_elder_male_human_02.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_elder_male_human_03.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_elder_male_human_04.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/crafted_saber/shared_sword_lightsaber_one_handed_gcw_s01_gen4.iff', 9, 1.0) + weapontemplate = WeaponTemplate('object/weapon/melee/sword/crafted_saber/shared_sword_lightsaber_one_handed_gcw_s01_gen5.iff', 9, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('saberhit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('prophet_dark_side', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/sand_trooper.py b/scripts/mobiles/generic/faction/imperial/sand_trooper.py new file mode 100644 index 00000000..9df51e20 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/sand_trooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mission_sand_trooper') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sand_trooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('sandtrooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/scouttrooper.py b/scripts/mobiles/generic/faction/imperial/scouttrooper.py new file mode 100644 index 00000000..7f3635bb --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/scouttrooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mission_scout_trooper') + mobileTemplate.setLevel(23) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_scout_trooper_white_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('scouttrooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/senior_prophet_dark.py b/scripts/mobiles/generic/faction/imperial/senior_prophet_dark.py new file mode 100644 index 00000000..db8ec696 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/senior_prophet_dark.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('senior_prophet_of_the_dark_side') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(9) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dark_jedi_elder_female_human_01.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_elder_female_human_02.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_elder_female_human_03.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_elder_male_human_01.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_elder_male_human_02.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_elder_male_human_03.iff') + templates.add('object/mobile/shared_dressed_dark_jedi_elder_male_human_04.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/crafted_saber/shared_sword_lightsaber_one_handed_gcw_s01_gen4.iff', 9, 1.0) + weapontemplate = WeaponTemplate('object/weapon/melee/sword/crafted_saber/shared_sword_lightsaber_one_handed_gcw_s01_gen5.iff', 9, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('saberhit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('senior_prophet_dark_side', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/signalman.py b/scripts/mobiles/generic/faction/imperial/signalman.py new file mode 100644 index 00000000..3aca2683 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/signalman.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mission_signalman') + mobileTemplate.setLevel(15) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('signalman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/skilled_1st_lieutenant_35.py b/scripts/mobiles/generic/faction/imperial/skilled_1st_lieutenant_35.py new file mode 100644 index 00000000..6d2f943e --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/skilled_1st_lieutenant_35.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_first_lieutenant_hard') + mobileTemplate.setLevel(35) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_lieutenant_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('skilled_1st_lieut_35', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/skilled_1st_lieutenant_80.py b/scripts/mobiles/generic/faction/imperial/skilled_1st_lieutenant_80.py new file mode 100644 index 00000000..6c43928b --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/skilled_1st_lieutenant_80.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_imperial_first_lieutenant_hard') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_lieutenant_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('skilled_1st_lieut_80', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/special_missions_engineer.py b/scripts/mobiles/generic/faction/imperial/special_missions_engineer.py new file mode 100644 index 00000000..34319439 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/special_missions_engineer.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mission_special_missions_engineer') + mobileTemplate.setLevel(16) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('special_missions_engineer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/specialis_noncom.py b/scripts/mobiles/generic/faction/imperial/specialis_noncom.py new file mode 100644 index 00000000..3ac69bb8 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/specialis_noncom.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mission_specialist_noncom') + mobileTemplate.setLevel(13) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('special_noncom', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/storm_commando.py b/scripts/mobiles/generic/faction/imperial/storm_commando.py new file mode 100644 index 00000000..14a4c0dc --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/storm_commando.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mission_storm_commando') + mobileTemplate.setLevel(29) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_commando_m.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_commando1_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stormcommando', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/stormtrooper.py b/scripts/mobiles/generic/faction/imperial/stormtrooper.py new file mode 100644 index 00000000..9f61e58b --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/stormtrooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mission_stormtrooper') + mobileTemplate.setLevel(3) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(5) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_stormtrooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stormtrooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/stormtrooper_2.py b/scripts/mobiles/generic/faction/imperial/stormtrooper_2.py new file mode 100644 index 00000000..7e335032 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/stormtrooper_2.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mission_stormtrooper') + mobileTemplate.setLevel(2) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(5) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_stormtrooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stormtrooper_2', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/stormtrooper_25.py b/scripts/mobiles/generic/faction/imperial/stormtrooper_25.py new file mode 100644 index 00000000..2e1bee6a --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/stormtrooper_25.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mission_stormtrooper') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_dark_trooper_black_hole.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stormtrooper_25', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/super_battle_droid_imp.py b/scripts/mobiles/generic/faction/imperial/super_battle_droid_imp.py new file mode 100644 index 00000000..82ccd9ff --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/super_battle_droid_imp.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('imperial_battle_droid') + mobileTemplate.setLevel(86) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_super_battle_droid.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('sbd_imperials', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/triumphant_class_dark_trooper.py b/scripts/mobiles/generic/faction/imperial/triumphant_class_dark_trooper.py new file mode 100644 index 00000000..11e1ee32 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/triumphant_class_dark_trooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_elite_dark_trooper_hard') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dark_trooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('opp_9', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_ imperial_storm_captain.py b/scripts/mobiles/generic/faction/imperial/veteran_ imperial_storm_captain.py new file mode 100644 index 00000000..2012353a --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_ imperial_storm_captain.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_stormtrooper_captain') + mobileTemplate.setLevel(72) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_captain_black_black.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_captain_black_gold.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_captain_white_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_stormtrooper_captain', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_ imperial_storm_commando.py b/scripts/mobiles/generic/faction/imperial/veteran_ imperial_storm_commando.py new file mode 100644 index 00000000..1d9ee80d --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_ imperial_storm_commando.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_storm_commando') + mobileTemplate.setLevel(75) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_commando_m.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_commando1_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_storm_commando', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_ imperial_stormmedic.py b/scripts/mobiles/generic/faction/imperial/veteran_ imperial_stormmedic.py new file mode 100644 index 00000000..ca8c8d06 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_ imperial_stormmedic.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_stormtrooper_medic') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_medic1_human_male_01.iff') + templates.add('object/mobile/shared_dressed_imperial_medic3_human_male_01.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_medic_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_stormtrooper_medic', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_ imperial_stormrifle.py b/scripts/mobiles/generic/faction/imperial/veteran_ imperial_stormrifle.py new file mode 100644 index 00000000..514aff82 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_ imperial_stormrifle.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_stormtrooper_rifleman') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_rifleman_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_stormtrooper_rifleman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_ imperial_stormsniper.py b/scripts/mobiles/generic/faction/imperial/veteran_ imperial_stormsniper.py new file mode 100644 index 00000000..d9dfcbd3 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_ imperial_stormsniper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_stormtrooper_sniper') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sniper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_stormtrooper_sniper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_ imperial_stormtrooper_squad_leader.py b/scripts/mobiles/generic/faction/imperial/veteran_ imperial_stormtrooper_squad_leader.py new file mode 100644 index 00000000..56c2f4ba --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_ imperial_stormtrooper_squad_leader.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_stormtrooper_squad_leader') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_stormtrooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_stormtrooper_squad_leader', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_assault_trooper.py b/scripts/mobiles/generic/faction/imperial/veteran_assault_trooper.py new file mode 100644 index 00000000..af52fa71 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_assault_trooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_assault_trooper') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(5) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_assault_trooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_assault_trooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_assault_trooper_squad.py b/scripts/mobiles/generic/faction/imperial/veteran_assault_trooper_squad.py new file mode 100644 index 00000000..a3f542e6 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_assault_trooper_squad.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_assault_trooper_squad_leader') + mobileTemplate.setLevel(68) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(5) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_assault_trooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('Vet_assault_trooper_squad', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_brigadier_general.py b/scripts/mobiles/generic/faction/imperial/veteran_brigadier_general.py new file mode 100644 index 00000000..a031301e --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_brigadier_general.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_brigadier_general') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_general_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imperial_brigadier_general', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_com_security_guard.py b/scripts/mobiles/generic/faction/imperial/veteran_com_security_guard.py new file mode 100644 index 00000000..39c85464 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_com_security_guard.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_command_security_guard') + mobileTemplate.setLevel(36) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_stormtrooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_com_sec_guard', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_compforce_trooper.py b/scripts/mobiles/generic/faction/imperial/veteran_compforce_trooper.py new file mode 100644 index 00000000..d7f7521a --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_compforce_trooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_army_captain') + mobileTemplate.setLevel(53) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_stormtrooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imperial_army_captain', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_dark_trooper.py b/scripts/mobiles/generic/faction/imperial/veteran_dark_trooper.py new file mode 100644 index 00000000..0068e29d --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_dark_trooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_dark_trooper') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dark_trooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('victory_class_dark_trooper_32', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_first_lieutenant.py b/scripts/mobiles/generic/faction/imperial/veteran_first_lieutenant.py new file mode 100644 index 00000000..8dcff480 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_first_lieutenant.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_first_lieutenant') + mobileTemplate.setLevel(49) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_lieutenant_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_fst_lieutenant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imp_army_captain.py b/scripts/mobiles/generic/faction/imperial/veteran_imp_army_captain.py new file mode 100644 index 00000000..2decf27a --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imp_army_captain.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_army_captain') + mobileTemplate.setLevel(53) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_captain_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_army_captain', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imp_captain.py b/scripts/mobiles/generic/faction/imperial/veteran_imp_captain.py new file mode 100644 index 00000000..44a4a7d0 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imp_captain.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fbase_imperial_army_captain_extreme') + mobileTemplate.setLevel(89) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_captain_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imperial_army_captain', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imp_colonel.py b/scripts/mobiles/generic/faction/imperial/veteran_imp_colonel.py new file mode 100644 index 00000000..e54068fe --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imp_colonel.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_colonel') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_colonel_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_colonel', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imp_corporal.py b/scripts/mobiles/generic/faction/imperial/veteran_imp_corporal.py new file mode 100644 index 00000000..44b9e335 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imp_corporal.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_corporal') + mobileTemplate.setLevel(35) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_officer_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_corporal', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imp_lance_corporal.py b/scripts/mobiles/generic/faction/imperial/veteran_imp_lance_corporal.py new file mode 100644 index 00000000..b427089b --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imp_lance_corporal.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_lance_corporal') + mobileTemplate.setLevel(34) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_officer_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_lance_corporal', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imp_lieutenant_colonel.py b/scripts/mobiles/generic/faction/imperial/veteran_imp_lieutenant_colonel.py new file mode 100644 index 00000000..a4bd5337 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imp_lieutenant_colonel.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_lieutenant_colonel') + mobileTemplate.setLevel(58) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_lieutenant_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_lieutenant_colonel', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imp_lieutenant_general.py b/scripts/mobiles/generic/faction/imperial/veteran_imp_lieutenant_general.py new file mode 100644 index 00000000..fa4c79fb --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imp_lieutenant_general.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_lieutenant_general') + mobileTemplate.setLevel(68) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_general_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_lieutenant_general', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_2nd_lieutenant.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_2nd_lieutenant.py new file mode 100644 index 00000000..8eef291d --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_2nd_lieutenant.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_second_lieutenant') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_lieutenant_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_second_lieutenant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_army_captain.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_army_captain.py new file mode 100644 index 00000000..f3446390 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_army_captain.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_army_captain') + mobileTemplate.setLevel(89) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_captain_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imperial_army_captain', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_bombardier.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_bombardier.py new file mode 100644 index 00000000..5eb2d696 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_bombardier.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_stormtrooper_bombardier') + mobileTemplate.setLevel(55) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_bombardier_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('veteran_stormtrooper_bombardier', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_general.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_general.py new file mode 100644 index 00000000..72fda8df --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_general.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_general') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_general_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_general', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_high_general.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_high_general.py new file mode 100644 index 00000000..56b58cbf --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_high_general.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_high_general') + mobileTemplate.setLevel(73) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_general_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_high_general', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_major.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_major.py new file mode 100644 index 00000000..9cfd83d8 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_major.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_major') + mobileTemplate.setLevel(55) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_major_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_major', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_major_general.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_major_general.py new file mode 100644 index 00000000..7c05546d --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_major_general.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_major_general') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_general_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_major_general', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_master_sergeant.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_master_sergeant.py new file mode 100644 index 00000000..839b6e43 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_master_sergeant.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_master_sergeant') + mobileTemplate.setLevel(43) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_master_sergant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_medic.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_medic.py new file mode 100644 index 00000000..625b961f --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_medic.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_medic') + mobileTemplate.setLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_medic1_human_male_01.iff') + templates.add('object/mobile/shared_dressed_imperial_medic3_human_male_01.iff') + templates.add('object/mobile/shared_dressed_stormtrooper_medic_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_medic', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_sandtrooper.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_sandtrooper.py new file mode 100644 index 00000000..50bf6258 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_sandtrooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_sand_trooper') + mobileTemplate.setLevel(49) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stormtrooper_sandtrooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_sand_trooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_scouttrooper.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_scouttrooper.py new file mode 100644 index 00000000..e086ee82 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_scouttrooper.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_scout_trooper') + mobileTemplate.setLevel(46) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_scout_trooper_white_white.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_scout_trooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_sergeant.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_sergeant.py new file mode 100644 index 00000000..4156ae66 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_sergeant.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_sergeant') + mobileTemplate.setLevel(36) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_sergeant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_sergeant_major.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_sergeant_major.py new file mode 100644 index 00000000..c19e3387 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_sergeant_major.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_sergeant_major') + mobileTemplate.setLevel(46) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_major_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_sergeant_major', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_sharpshooter.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_sharpshooter.py new file mode 100644 index 00000000..02f30a84 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_sharpshooter.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_sharpshooter') + mobileTemplate.setLevel(43) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_sharpshooter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_staff_corporal.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_staff_corporal.py new file mode 100644 index 00000000..8703019c --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_staff_corporal.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_staff_corporal') + mobileTemplate.setLevel(38) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_officer_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_staff_corporal', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_staff_sergeant.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_staff_sergeant.py new file mode 100644 index 00000000..233e75ad --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_staff_sergeant.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_staff_sergeant') + mobileTemplate.setLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_staff_sergeant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_surface_marshall.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_surface_marshall.py new file mode 100644 index 00000000..adc3ba11 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_surface_marshall.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_surface_marshal') + mobileTemplate.setLevel(75) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_surface_marshall', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_warant_officer_i.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_warant_officer_i.py new file mode 100644 index 00000000..594694f7 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_warant_officer_i.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_warrant_officer_i') + mobileTemplate.setLevel(48) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_warrant_offi_i', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/veteran_imperial_warant_officer_ii.py b/scripts/mobiles/generic/faction/imperial/veteran_imperial_warant_officer_ii.py new file mode 100644 index 00000000..0600b4d9 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/veteran_imperial_warant_officer_ii.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veteran_imperial_warrant_officer_ii') + mobileTemplate.setLevel(45) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_npe_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vet_imp_warrant_offi_ii', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/victory_class_dark_trooper_32.py b/scripts/mobiles/generic/faction/imperial/victory_class_dark_trooper_32.py new file mode 100644 index 00000000..f9b79886 --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/victory_class_dark_trooper_32.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_dark_trooper') + mobileTemplate.setLevel(32) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dark_trooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vic_dark_trooper_32', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/imperial/victory_class_dark_trooper_80.py b/scripts/mobiles/generic/faction/imperial/victory_class_dark_trooper_80.py new file mode 100644 index 00000000..c30c312c --- /dev/null +++ b/scripts/mobiles/generic/faction/imperial/victory_class_dark_trooper_80.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crackdown_dark_trooper') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dark_trooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vic_dark_trooper_80', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/rebel/battle_droid_reb.py b/scripts/mobiles/generic/faction/rebel/battle_droid_reb.py new file mode 100644 index 00000000..5325c108 --- /dev/null +++ b/scripts/mobiles/generic/faction/rebel/battle_droid_reb.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from resources.datatables import FactionStatus +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rebel_battle_droid') + mobileTemplate.setLevel(83) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(24) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("rebel") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_battle_droid.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e5.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('battle_droid_rebel', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/rebel/decorated_sith_hunter.py b/scripts/mobiles/generic/faction/rebel/decorated_sith_hunter.py new file mode 100644 index 00000000..5a4fba78 --- /dev/null +++ b/scripts/mobiles/generic/faction/rebel/decorated_sith_hunter.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from resources.datatables import FactionStatus +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fbase_rebel_elite_heavy_trooper_extreme') + mobileTemplate.setLevel(89) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("rebel") + mobileTemplate.setAssistRange(24) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("rebel") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_rebel_ris_01.iff') + templates.add('object/mobile/shared_dressed_rebel_ris_02.iff') + templates.add('object/mobile/shared_dressed_rebel_ris_03.iff') + templates.add('object/mobile/shared_dressed_rebel_ris_04.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e5.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('decorated_sith_hunter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/rebel/tamed_gurrcat.py b/scripts/mobiles/generic/faction/rebel/tamed_gurrcat.py new file mode 100644 index 00000000..b9374fc1 --- /dev/null +++ b/scripts/mobiles/generic/faction/rebel/tamed_gurrcat.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rebel_tamed_gurrcat') + mobileTemplate.setLevel(4) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("dire cat") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("rebel") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_gurrcat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('tamed_gurrcat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/rebel/tamed_huurton.py b/scripts/mobiles/generic/faction/rebel/tamed_huurton.py new file mode 100644 index 00000000..88ddc47a --- /dev/null +++ b/scripts/mobiles/generic/faction/rebel/tamed_huurton.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rebel_tamed_huurton') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("rebel") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("rebel") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_huurton.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('tamed_huurton', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/rebel/tamed_razor_cat.py b/scripts/mobiles/generic/faction/rebel/tamed_razor_cat.py new file mode 100644 index 00000000..214a2f5b --- /dev/null +++ b/scripts/mobiles/generic/faction/rebel/tamed_razor_cat.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rebel_tamed_razor_cat') + mobileTemplate.setLevel(10) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("razor cat") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("rebel") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_corellian_sand_panther.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('tamed_razor_cat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/generic/faction/rebel/tamed_slice_hound.py b/scripts/mobiles/generic/faction/rebel/tamed_slice_hound.py new file mode 100644 index 00000000..4ee80f60 --- /dev/null +++ b/scripts/mobiles/generic/faction/rebel/tamed_slice_hound.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rebel_tamed_slice_hound') + mobileTemplate.setLevel(4) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setHideType("Bristly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("slice hound") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + mobileTemplate.setFaction("rebel") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_corellian_slice_hound.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('tamed_slice_hound', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/bestine_police_officer.py b/scripts/mobiles/instances/tuskenking/mosespa/bestine_police_officer.py new file mode 100644 index 00000000..8899d636 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/bestine_police_officer.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_bestine_police_offcier') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_tatooine_mos_eisley_police_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_scout_blaster.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_bestine_police_officer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/bioengineer.py b/scripts/mobiles/instances/tuskenking/mosespa/bioengineer.py new file mode 100644 index 00000000..ee75731b --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/bioengineer.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_bio_engineer') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_bioengineer_trainer_01.iff') + templates.add('object/mobile/shared_dressed_bioengineer_trainer_02.iff') + templates.add('object/mobile/shared_dressed_bioengineer_trainer_03.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_scout_blaster.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_bio_engineer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/blood_hunter.py b/scripts/mobiles/instances/tuskenking/mosespa/blood_hunter.py new file mode 100644 index 00000000..68e4f218 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/blood_hunter.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_blood_hunter') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_commando_trainer_trandoshan_male_01.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_trandoshan_female_01.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_trandoshan_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_t21.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShotrifle') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_blood_hunter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/buisnessman.py b/scripts/mobiles/instances/tuskenking/mosespa/buisnessman.py new file mode 100644 index 00000000..99cfaa12 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/buisnessman.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_businessman') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_merchant_trainer_01.iff') + templates.add('object/mobile/shared_dressed_merchant_trainer_02.iff') + templates.add('object/mobile/shared_dressed_merchant_trainer_03.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_scout_blaster.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_businessman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/citizien.py b/scripts/mobiles/instances/tuskenking/mosespa/citizien.py new file mode 100644 index 00000000..79259e94 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/citizien.py @@ -0,0 +1,106 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_mos_espa_citizen') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_warren_research_scientist.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_aqualish_female_06.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_aqualish_male_05.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_nikto_male_06.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_rodian_female_04.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_devaronian_male_03.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_sullustan_male_03.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_aqualish_female_02.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_aqualish_male_01.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_aqualish_male_08.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_bith_female_03.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_bith_male_04.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_ishitib_male_02.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_aqualish_male_08.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_nikto_male_02.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_rodian_male_01.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_trandoshan_female_02.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_aqualish_female_07.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_aqualish_male_04.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_bith_male_01.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_trandoshan_male_02.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_bith_female_06.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_nikto_male_07.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_rodian_male_04.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_sullustan_male_02.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_aqualish_female_03.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_bith_male_05.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_devaronian_male_02.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_ishitib_male_03.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_nikto_male_03.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_rodian_female_01.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_trandoshan_female_03.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_aqualish_male_09.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_bith_female_02.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_sullustan_male_06.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_devaronian_male_01.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_sullustan_male_01.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_aqualish_female_04.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_aqualish_male_07.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_bith_female_05.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_bith_male_02.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_nikto_male_04.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_trandoshan_female_04.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_rodian_female_02.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_sullustan_male_05.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_aqualish_male_03.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_bith_female_01.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_bith_male_06.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_rodian_male_03.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_aqualish_male_06.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_bith_male_03.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_nikto_male_05.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_aqualish_female_05.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_bith_female_04.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_trandoshan_male_01.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_sullustan_male_04.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_devaronian_male_04.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_aqualish_male_02.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_ishitib_male_01.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_aqualish_female_01.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_nikto_male_01.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_rodian_female_03.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_trandoshan_female_01.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_aqualish_female_08.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_nikto_male_08.iff') + templates.add('object/mobile/shared_dressed_commoner_tatooine_rodian_male_02.iff') + templates.add('object/mobile/shared_dressed_twi_female_scientist_01.iff') + templates.add('object/mobile/shared_warren_scientist_s01.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_mos_espa_citizen', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/droidengineer.py b/scripts/mobiles/instances/tuskenking/mosespa/droidengineer.py new file mode 100644 index 00000000..43baf61f --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/droidengineer.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_droid_engineer') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_droidengineer_trainer_human_male_01.iff') + templates.add('object/mobile/shared_dressed_droidengineer_trainer_moncal_male_01.iff') + templates.add('object/mobile/shared_dressed_droidengineer_trainer_rodian_male_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_scout_blaster.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_droid_engineer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/expert.py b/scripts/mobiles/instances/tuskenking/mosespa/expert.py new file mode 100644 index 00000000..d13b4996 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/expert.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_mos_espa_expert') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_twi_female_scientist_01.iff') + templates.add('object/mobile/shared_warren_research_scientist.iff') + templates.add('object/mobile/shared_warren_scientist_s03.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_scout_blaster.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_mos_espa_expert', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/kav_goldor.py b/scripts/mobiles/instances/tuskenking/mosespa/kav_goldor.py new file mode 100644 index 00000000..4905caf3 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/kav_goldor.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_kav_goldor') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(2) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_heroic_tusken_kav_golder.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_scout_blaster.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_kav_golder', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/medic.py b/scripts/mobiles/instances/tuskenking/mosespa/medic.py new file mode 100644 index 00000000..5891df3a --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/medic.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_mos_espa_medic') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_medic_trainer_03.iff') + templates.add('object/mobile/shared_dressed_medic_trainer_02.iff') + templates.add('object/mobile/shared_dressed_medic_trainer_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_scout_blaster.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_mos_espa_medic', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/mercanary.py b/scripts/mobiles/instances/tuskenking/mosespa/mercanary.py new file mode 100644 index 00000000..7cfbf893 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/mercanary.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_mos_espa_mercenary') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_borvos_mercenary.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_scout_blaster.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_mos_espa_mercenary', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/militia.py b/scripts/mobiles/instances/tuskenking/mosespa/militia.py new file mode 100644 index 00000000..c2091ec1 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/militia.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_mos_espa_militia') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_tatooine_militiaman.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_scout_blaster.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_mos_espa_militia', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/mos_eisley_police_officer.py b/scripts/mobiles/instances/tuskenking/mosespa/mos_eisley_police_officer.py new file mode 100644 index 00000000..a3bd2b8c --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/mos_eisley_police_officer.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_mos_eisley_police_officer') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_tatooine_mos_eisley_police_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_scout_blaster.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_mos_eisley_police_officer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/mos_espa_police_officer.py b/scripts/mobiles/instances/tuskenking/mosespa/mos_espa_police_officer.py new file mode 100644 index 00000000..7f096ee2 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/mos_espa_police_officer.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_mos_espa_police_officer') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_tatooine_mos_eisley_police_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_scout_blaster.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_mos_espa_police_officer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/mse_droid.py b/scripts/mobiles/instances/tuskenking/mosespa/mse_droid.py new file mode 100644 index 00000000..fc09ce71 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/mse_droid.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_mse_droid') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_mouse_droid.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_mse_droid', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/nova_trooper.py b/scripts/mobiles/instances/tuskenking/mosespa/nova_trooper.py new file mode 100644 index 00000000..eface2ad --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/nova_trooper.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_nova_trooper') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dark_trooper.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_bounty_ee3.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_nova_trooper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/pilot.py b/scripts/mobiles/instances/tuskenking/mosespa/pilot.py new file mode 100644 index 00000000..9d239188 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/pilot.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_flight_crew') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(2) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_miner_pilot.iff') + templates.add('object/mobile/shared_space_newbie_generic_pilot_male_01.iff') + templates.add('object/mobile/shared_dressed_royal_pilot_human_male_01.iff') + templates.add('object/mobile/shared_dressed_royal_pilot_human_female_01.iff') + templates.add('object/mobile/shared_dressed_bth_spynet_pilot_f_01.iff') + templates.add('object/mobile/shared_dressed_bth_spynet_pilot_m_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_scout_blaster.iff', 2, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_flight_crew', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/pit_droid.py b/scripts/mobiles/instances/tuskenking/mosespa/pit_droid.py new file mode 100644 index 00000000..0ae25ecd --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/pit_droid.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_pit_droid') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_pit_droid.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_pit_droid', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/power_droid.py b/scripts/mobiles/instances/tuskenking/mosespa/power_droid.py new file mode 100644 index 00000000..e7ca0a16 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/power_droid.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_power_droid') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_eg6_power_droid.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_power_droid', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/mosespa/scholar.py b/scripts/mobiles/instances/tuskenking/mosespa/scholar.py new file mode 100644 index 00000000..ea942f78 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/mosespa/scholar.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_scholar') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic mos espa citizien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_scholar_szingo.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_scholar', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/prequest/tusken_relic_fanatic.py b/scripts/mobiles/instances/tuskenking/prequest/tusken_relic_fanatic.py new file mode 100644 index 00000000..460624e9 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/prequest/tusken_relic_fanatic.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('feeder_tusken_patrol') + mobileTemplate.setLevel(85) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic tusken") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tusken_raider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_tusken.iff', 0, 1.0) + weapontemplate1 = WeaponTemplate('object/weapon/melee/baton/shared_baton_gaderiffi_elite.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weaponTemplates.add(weapontemplate1) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShotrifle') + attacks.add('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_relic_fanatic', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/prequest/tusken_relic_guard.py b/scripts/mobiles/instances/tuskenking/prequest/tusken_relic_guard.py new file mode 100644 index 00000000..715e3af1 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/prequest/tusken_relic_guard.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('feeder_tusken_guard') + mobileTemplate.setLevel(85) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic tusken") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tusken_raider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_tusken.iff', 0, 1.0) + weapontemplate1 = WeaponTemplate('object/weapon/melee/baton/shared_baton_gaderiffi_elite.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weaponTemplates.add(weapontemplate1) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShotrifle') + attacks.add('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_relic_guard', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/prequest/tusken_relic_worshiper.py b/scripts/mobiles/instances/tuskenking/prequest/tusken_relic_worshiper.py new file mode 100644 index 00000000..080e4929 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/prequest/tusken_relic_worshiper.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('feeder_tusken_raider') + mobileTemplate.setLevel(85) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic tusken") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tusken_raider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_tusken.iff', 0, 1.0) + weapontemplate1 = WeaponTemplate('object/weapon/melee/baton/shared_baton_gaderiffi_elite.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weaponTemplates.add(weapontemplate1) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShotrifle') + attacks.add('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_relic_worshiper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/tusken/tusken_bantha.py b/scripts/mobiles/instances/tuskenking/tusken/tusken_bantha.py new file mode 100644 index 00000000..1b2c745a --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/tusken/tusken_bantha.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_bantha') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic tusken") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_bantha_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_bantha', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/tusken/tusken_berserker.py b/scripts/mobiles/instances/tuskenking/tusken/tusken_berserker.py new file mode 100644 index 00000000..ffe982b9 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/tusken/tusken_berserker.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_berserker') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic tusken") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tusken_raider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_tusken.iff', 0, 1.0) + weapontemplate1 = WeaponTemplate('object/weapon/melee/baton/shared_baton_gaderiffi_elite.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weaponTemplates.add(weapontemplate1) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShotrifle') + attacks.add('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_berserker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/tusken/tusken_champion.py b/scripts/mobiles/instances/tuskenking/tusken/tusken_champion.py new file mode 100644 index 00000000..cd636e03 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/tusken/tusken_champion.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_champion') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic tusken") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tusken_raider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_tusken.iff', 0, 1.0) + weapontemplate1 = WeaponTemplate('object/weapon/melee/baton/shared_baton_gaderiffi_elite.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weaponTemplates.add(weapontemplate1) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShotrifle') + attacks.add('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_champion', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/tusken/tusken_flesh_hunter.py b/scripts/mobiles/instances/tuskenking/tusken/tusken_flesh_hunter.py new file mode 100644 index 00000000..816d3715 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/tusken/tusken_flesh_hunter.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_flesh_hunter') + mobileTemplate.setLevel(91) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic tusken") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tusken_raider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_tusken.iff', 0, 1.0) + weapontemplate1 = WeaponTemplate('object/weapon/melee/baton/shared_baton_gaderiffi_elite.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weaponTemplates.add(weapontemplate1) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShotrifle') + attacks.add('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_flesh_hunter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/tusken/tusken_honor_guard.py b/scripts/mobiles/instances/tuskenking/tusken/tusken_honor_guard.py new file mode 100644 index 00000000..f926ede6 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/tusken/tusken_honor_guard.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_honor_guard') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(2) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic tusken") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tusken_raider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_tusken.iff', 0, 1.0) + weapontemplate1 = WeaponTemplate('object/weapon/melee/baton/shared_baton_gaderiffi_elite.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weaponTemplates.add(weapontemplate1) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShotrifle') + attacks.add('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_honor_guard', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/tusken/tusken_king.py b/scripts/mobiles/instances/tuskenking/tusken/tusken_king.py new file mode 100644 index 00000000..67c0cad3 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/tusken/tusken_king.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_king') + mobileTemplate.setLevel(95) + mobileTemplate.setDifficulty(2) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic tusken") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tusken_king.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_tusken.iff', 0, 1.0) + weapontemplate1 = WeaponTemplate('object/weapon/melee/baton/shared_baton_gaderiffi_elite.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weaponTemplates.add(weapontemplate1) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShotrifle') + attacks.add('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_king', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/tusken/tusken_massiff.py b/scripts/mobiles/instances/tuskenking/tusken/tusken_massiff.py new file mode 100644 index 00000000..68ef9fd9 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/tusken/tusken_massiff.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_massiff') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic tusken") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tusken_massif.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_tusken.iff', 0, 1.0) + weapontemplate1 = WeaponTemplate('object/weapon/melee/baton/shared_baton_gaderiffi_elite.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weaponTemplates.add(weapontemplate1) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_massiff', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/tusken/tusken_pack_master.py b/scripts/mobiles/instances/tuskenking/tusken/tusken_pack_master.py new file mode 100644 index 00000000..7890ceb4 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/tusken/tusken_pack_master.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_pack_master') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic tusken") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tusken_raider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_tusken.iff', 0, 1.0) + weapontemplate1 = WeaponTemplate('object/weapon/melee/baton/shared_baton_gaderiffi_elite.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weaponTemplates.add(weapontemplate1) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShotrifle') + attacks.add('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_pack_master', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/tusken/tusken_raid_leader.py b/scripts/mobiles/instances/tuskenking/tusken/tusken_raid_leader.py new file mode 100644 index 00000000..a01d688f --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/tusken/tusken_raid_leader.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_raid_leader') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(2) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(4) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic tusken") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tusken_raider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_tusken.iff', 0, 1.0) + weapontemplate1 = WeaponTemplate('object/weapon/melee/baton/shared_baton_gaderiffi_elite.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weaponTemplates.add(weapontemplate1) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShotrifle') + attacks.add('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_raid_leader', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/tusken/tusken_raider.py b/scripts/mobiles/instances/tuskenking/tusken/tusken_raider.py new file mode 100644 index 00000000..754a0820 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/tusken/tusken_raider.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_raider') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic tusken") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tusken_raider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_tusken.iff', 0, 1.0) + weapontemplate1 = WeaponTemplate('object/weapon/melee/baton/shared_baton_gaderiffi_elite.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weaponTemplates.add(weapontemplate1) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShotrifle') + attacks.add('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_raider', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/tusken/tusken_savage.py b/scripts/mobiles/instances/tuskenking/tusken/tusken_savage.py new file mode 100644 index 00000000..3986bfa7 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/tusken/tusken_savage.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_savage') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic tusken") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tusken_raider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_tusken.iff', 0, 1.0) + weapontemplate1 = WeaponTemplate('object/weapon/melee/baton/shared_baton_gaderiffi_elite.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weaponTemplates.add(weapontemplate1) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShotrifle') + attacks.add('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_savage', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/tusken/tusken_sniper.py b/scripts/mobiles/instances/tuskenking/tusken/tusken_sniper.py new file mode 100644 index 00000000..c523749b --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/tusken/tusken_sniper.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_sniper') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic tusken") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tusken_raider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_tusken.iff', 0, 1.0) + weapontemplate1 = WeaponTemplate('object/weapon/melee/baton/shared_baton_gaderiffi_elite.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weaponTemplates.add(weapontemplate1) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShotrifle') + attacks.add('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_sniper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/tusken/tusken_warlord.py b/scripts/mobiles/instances/tuskenking/tusken/tusken_warlord.py new file mode 100644 index 00000000..a87a34e3 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/tusken/tusken_warlord.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_warlord') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(2) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic tusken") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tusken_raider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_tusken.iff', 0, 1.0) + weapontemplate1 = WeaponTemplate('object/weapon/melee/baton/shared_baton_gaderiffi_elite.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weaponTemplates.add(weapontemplate1) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShotrifle') + attacks.add('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_warlord', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/tusken/tusken_warmaster.py b/scripts/mobiles/instances/tuskenking/tusken/tusken_warmaster.py new file mode 100644 index 00000000..6549b6b6 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/tusken/tusken_warmaster.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_war_master') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic tusken") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tusken_raider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_tusken.iff', 0, 1.0) + weapontemplate1 = WeaponTemplate('object/weapon/melee/baton/shared_baton_gaderiffi_elite.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weaponTemplates.add(weapontemplate1) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShotrifle') + attacks.add('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_warmaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/instances/tuskenking/tusken/tusken_warrior.py b/scripts/mobiles/instances/tuskenking/tusken/tusken_warrior.py new file mode 100644 index 00000000..68b609b4 --- /dev/null +++ b/scripts/mobiles/instances/tuskenking/tusken/tusken_warrior.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('heroic_tusken_warrior') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(0) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("heroic tusken") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tusken_raider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_tusken.iff', 0, 1.0) + weapontemplate1 = WeaponTemplate('object/weapon/melee/baton/shared_baton_gaderiffi_elite.iff', 4, 1.0) + weaponTemplates.add(weapontemplate) + weaponTemplates.add(weapontemplate1) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShotrifle') + attacks.add('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('heroic_tusken_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/lairgroups/bol_lair_group_1.py b/scripts/mobiles/lairgroups/bol_lair_group_1.py new file mode 100644 index 00000000..0aff2d4d --- /dev/null +++ b/scripts/mobiles/lairgroups/bol_lair_group_1.py @@ -0,0 +1,11 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from services.spawn import LairSpawnTemplate +from java.util import Vector + +def addLairGroup(core): + spawnTemplates = Vector() + spawnTemplate = LairSpawnTemplate(-1, 'dantooine_bol_lair_1', -1, -1) + spawnTemplates.add(spawnTemplate) + core.spawnService.addLairGroup('bol_lair_group_1', spawnTemplates) + return diff --git a/scripts/mobiles/lairgroups/dantooine_mining_area.py b/scripts/mobiles/lairgroups/dantooine_mining_area.py new file mode 100644 index 00000000..19cf6d7d --- /dev/null +++ b/scripts/mobiles/lairgroups/dantooine_mining_area.py @@ -0,0 +1,19 @@ +import sys +from services.spawn import LairSpawnTemplate +from java.util import Vector + +def addLairGroup(core): + spawnTemplate1 = LairSpawnTemplate(-1, 'dantooine_huurton_lair_1', -1, -1) + spawnTemplate2 = LairSpawnTemplate(-1, 'dantooine_huurton_lair_2', -1, -1) + spawnTemplate3 = LairSpawnTemplate(-1, 'dantooine_bol_lair_1', -1, -1) + spawnTemplate4 = LairSpawnTemplate(-1, 'dantooine_piket_lair_1',-1, -1) + spawnTemplate5 = LairSpawnTemplate(-1, 'dantooine_piket_longhorn_lair_1',-1, -1) + spawnTemplate6 = LairSpawnTemplate(-1, 'dantooine_quenker_lair_1', -1, -1) + spawnTemplates = Vector() + spawnTemplates.add(spawnTemplate1) + spawnTemplates.add(spawnTemplate2) + spawnTemplates.add(spawnTemplate3) + spawnTemplates.add(spawnTemplate4) + + core.spawnService.addLairGroup('dantooine_mining_area', spawnTemplates) + return \ No newline at end of file diff --git a/scripts/mobiles/lairgroups/dantooine_nw_lair_group_1.py b/scripts/mobiles/lairgroups/dantooine_nw_lair_group_1.py new file mode 100644 index 00000000..bb93ad97 --- /dev/null +++ b/scripts/mobiles/lairgroups/dantooine_nw_lair_group_1.py @@ -0,0 +1,13 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from services.spawn import LairSpawnTemplate +from java.util import Vector + +def addLairGroup(core): + spawnTemplates = Vector() + spawnTemplate = LairSpawnTemplate(-1, 'dantooine_graul_mauler_lair_1', -1, -1) + spawnTemplates.add(spawnTemplate) + spawnTemplate = LairSpawnTemplate(-1, 'dantooine_voritor_lair_1', -1, -1) + spawnTemplates.add(spawnTemplate) + core.spawnService.addLairGroup('dantooine_nw_lair_group_1', spawnTemplates) + return diff --git a/scripts/mobiles/lairgroups/graul_lair_group_1.py b/scripts/mobiles/lairgroups/graul_lair_group_1.py new file mode 100644 index 00000000..6700ed59 --- /dev/null +++ b/scripts/mobiles/lairgroups/graul_lair_group_1.py @@ -0,0 +1,11 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from services.spawn import LairSpawnTemplate +from java.util import Vector + +def addLairGroup(core): + spawnTemplates = Vector() + spawnTemplate = LairSpawnTemplate(-1, 'dantooine_graul_lair_1', -1, -1) + spawnTemplates.add(spawnTemplate) + core.spawnService.addLairGroup('graul_lair_group_1', spawnTemplates) + return diff --git a/scripts/mobiles/lairgroups/graul_mauler_lair_group_1.py b/scripts/mobiles/lairgroups/graul_mauler_lair_group_1.py new file mode 100644 index 00000000..11142ef1 --- /dev/null +++ b/scripts/mobiles/lairgroups/graul_mauler_lair_group_1.py @@ -0,0 +1,11 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from services.spawn import LairSpawnTemplate +from java.util import Vector + +def addLairGroup(core): + spawnTemplates = Vector() + spawnTemplate = LairSpawnTemplate(-1, 'dantooine_graul_lair_1', -1, -1) + spawnTemplates.add(spawnTemplate) + core.spawnService.addLairGroup('graul_mauler_lair_group_1', spawnTemplates) + return diff --git a/scripts/mobiles/lairgroups/huurton_lair_group_1.py b/scripts/mobiles/lairgroups/huurton_lair_group_1.py new file mode 100644 index 00000000..662e23c1 --- /dev/null +++ b/scripts/mobiles/lairgroups/huurton_lair_group_1.py @@ -0,0 +1,11 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from services.spawn import LairSpawnTemplate +from java.util import Vector + +def addLairGroup(core): + spawnTemplates = Vector() + spawnTemplate = LairSpawnTemplate(-1, 'dantooine_huurton_lair_1', -1, -1) + spawnTemplates.add(spawnTemplate) + core.spawnService.addLairGroup('huurton_lair_group_1', spawnTemplates) + return diff --git a/scripts/mobiles/lairgroups/mixed_lair_group_1.py b/scripts/mobiles/lairgroups/mixed_lair_group_1.py new file mode 100644 index 00000000..571b1f66 --- /dev/null +++ b/scripts/mobiles/lairgroups/mixed_lair_group_1.py @@ -0,0 +1,21 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from services.spawn import LairSpawnTemplate +from java.util import Vector + +def addLairGroup(core): + spawnTemplates = Vector() + spawnTemplate = LairSpawnTemplate(-1, 'dantooine_huurton_lair_1', -1, -1) + spawnTemplates.add(spawnTemplate) + spawnTemplate = LairSpawnTemplate(-1, 'dantooine_huurton_lair_2', -1, -1) + spawnTemplates.add(spawnTemplate) + spawnTemplate = LairSpawnTemplate(-1, 'dantooine_bol_lair_1', -1, -1) + spawnTemplates.add(spawnTemplate) + spawnTemplate = LairSpawnTemplate(-1, 'dantooine_piket_lair_1', -1, -1) + spawnTemplates.add(spawnTemplate) + spawnTemplate = LairSpawnTemplate(-1, 'dantooine_piket_longhorn_lair_1', -1, -1) + spawnTemplates.add(spawnTemplate) + spawnTemplate = LairSpawnTemplate(-1, 'dantooine_quenker_lair_1', -1, -1) + spawnTemplates.add(spawnTemplate) + core.spawnService.addLairGroup('mixed_lair_group_1', spawnTemplates) + return diff --git a/scripts/mobiles/lairgroups/piket_longhorn_lair_group_1.py b/scripts/mobiles/lairgroups/piket_longhorn_lair_group_1.py new file mode 100644 index 00000000..d63ad6e7 --- /dev/null +++ b/scripts/mobiles/lairgroups/piket_longhorn_lair_group_1.py @@ -0,0 +1,11 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from services.spawn import LairSpawnTemplate +from java.util import Vector + +def addLairGroup(core): + spawnTemplates = Vector() + spawnTemplate = LairSpawnTemplate(-1, 'dantooine_piket_longhorn_lair_1', -1, -1) + spawnTemplates.add(spawnTemplate) + core.spawnService.addLairGroup('piket_longhorn_lair_group_1', spawnTemplates) + return diff --git a/scripts/mobiles/lairgroups/quenker_lair_group_1.py b/scripts/mobiles/lairgroups/quenker_lair_group_1.py new file mode 100644 index 00000000..ba1bf3e8 --- /dev/null +++ b/scripts/mobiles/lairgroups/quenker_lair_group_1.py @@ -0,0 +1,11 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from services.spawn import LairSpawnTemplate +from java.util import Vector + +def addLairGroup(core): + spawnTemplates = Vector() + spawnTemplate = LairSpawnTemplate(-1, 'dantooine_quenker_lair_1', -1, -1) + spawnTemplates.add(spawnTemplate) + core.spawnService.addLairGroup('quenker_lair_group_1', spawnTemplates) + return diff --git a/scripts/mobiles/lairgroups/thune_lair_group_1.py b/scripts/mobiles/lairgroups/thune_lair_group_1.py new file mode 100644 index 00000000..4d0b1767 --- /dev/null +++ b/scripts/mobiles/lairgroups/thune_lair_group_1.py @@ -0,0 +1,11 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from services.spawn import LairSpawnTemplate +from java.util import Vector + +def addLairGroup(core): + spawnTemplates = Vector() + spawnTemplate = LairSpawnTemplate(-1, 'dantooine_thune_lair_1', -1, -1) + spawnTemplates.add(spawnTemplate) + core.spawnService.addLairGroup('thune_lair_group_1', spawnTemplates) + return diff --git a/scripts/mobiles/lairgroups/voritor_lair_group_1.py b/scripts/mobiles/lairgroups/voritor_lair_group_1.py new file mode 100644 index 00000000..028ceab1 --- /dev/null +++ b/scripts/mobiles/lairgroups/voritor_lair_group_1.py @@ -0,0 +1,11 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from services.spawn import LairSpawnTemplate +from java.util import Vector + +def addLairGroup(core): + spawnTemplates = Vector() + spawnTemplate = LairSpawnTemplate(-1, 'dantooine_voritor_lair_1', -1, -1) + spawnTemplates.add(spawnTemplate) + core.spawnService.addLairGroup('voritor_lair_group_1', spawnTemplates) + return diff --git a/scripts/mobiles/lairgroups/voritor_lair_group_2.py b/scripts/mobiles/lairgroups/voritor_lair_group_2.py new file mode 100644 index 00000000..ece717a5 --- /dev/null +++ b/scripts/mobiles/lairgroups/voritor_lair_group_2.py @@ -0,0 +1,11 @@ +# Spawn Group file created with PSWG Planetary Spawn Tool +import sys +from services.spawn import LairSpawnTemplate +from java.util import Vector + +def addLairGroup(core): + spawnTemplates = Vector() + spawnTemplate = LairSpawnTemplate(-1, 'dantooine_voritor_lair_2', -1, -1) + spawnTemplates.add(spawnTemplate) + core.spawnService.addLairGroup('voritor_lair_group_2', spawnTemplates) + return diff --git a/scripts/mobiles/lairs/dantooine_bol_lair_1.py b/scripts/mobiles/lairs/dantooine_bol_lair_1.py new file mode 100644 index 00000000..953c80f5 --- /dev/null +++ b/scripts/mobiles/lairs/dantooine_bol_lair_1.py @@ -0,0 +1,9 @@ +import sys +from java.util import Vector + +def addTemplate(core): + mobileTemplates = Vector() + mobileTemplates.add('lesser_plains_bol') + mobileTemplates.add('seething_bol_crusher') + mobileTemplates.add('swift_charging_bol') + core.spawnService.addLairTemplate('dantooine_bol_lair_1', mobileTemplates, 15, 'object/tangible/lair/base/shared_poi_all_lair_brambles_small.iff') \ No newline at end of file diff --git a/scripts/mobiles/lairs/dantooine_graul_lair_1.py b/scripts/mobiles/lairs/dantooine_graul_lair_1.py new file mode 100644 index 00000000..953c80f5 --- /dev/null +++ b/scripts/mobiles/lairs/dantooine_graul_lair_1.py @@ -0,0 +1,9 @@ +import sys +from java.util import Vector + +def addTemplate(core): + mobileTemplates = Vector() + mobileTemplates.add('lesser_plains_bol') + mobileTemplates.add('seething_bol_crusher') + mobileTemplates.add('swift_charging_bol') + core.spawnService.addLairTemplate('dantooine_bol_lair_1', mobileTemplates, 15, 'object/tangible/lair/base/shared_poi_all_lair_brambles_small.iff') \ No newline at end of file diff --git a/scripts/mobiles/lairs/dantooine_graul_mauler_lair_1.py b/scripts/mobiles/lairs/dantooine_graul_mauler_lair_1.py new file mode 100644 index 00000000..dfad5707 --- /dev/null +++ b/scripts/mobiles/lairs/dantooine_graul_mauler_lair_1.py @@ -0,0 +1,5 @@ +import sys +from java.util import Vector + +def addTemplate(core): + core.spawnService.addLairTemplate('dantooine_graul_mauler_lair_1', 'graul_mauler', 15, 'object/tangible/lair/base/shared_poi_all_lair_brambles_small.iff') \ No newline at end of file diff --git a/scripts/mobiles/lairs/dantooine_huurton_lair_1.py b/scripts/mobiles/lairs/dantooine_huurton_lair_1.py new file mode 100644 index 00000000..68fe6e33 --- /dev/null +++ b/scripts/mobiles/lairs/dantooine_huurton_lair_1.py @@ -0,0 +1,9 @@ +import sys +from java.util import Vector + +def addTemplate(core): + mobileTemplates = Vector() + mobileTemplates.add('huurton') + mobileTemplates.add('huurton_howler') + mobileTemplates.add('huurton_matron') + core.spawnService.addLairTemplate('dantooine_huurton_lair_1', mobileTemplates, 15, 'object/tangible/lair/base/shared_poi_all_lair_brambles_small.iff') \ No newline at end of file diff --git a/scripts/mobiles/lairs/dantooine_huurton_lair_2.py b/scripts/mobiles/lairs/dantooine_huurton_lair_2.py new file mode 100644 index 00000000..a94d718e --- /dev/null +++ b/scripts/mobiles/lairs/dantooine_huurton_lair_2.py @@ -0,0 +1,9 @@ +import sys +from java.util import Vector + +def addTemplate(core): + mobileTemplates = Vector() + mobileTemplates.add('huurton_pub') + mobileTemplates.add('huurton_reaper') + mobileTemplates.add('huurton_stalker') + core.spawnService.addLairTemplate('dantooine_huurton_lair_2', mobileTemplates, 15, 'object/tangible/lair/base/shared_poi_all_lair_brambles_small.iff') \ No newline at end of file diff --git a/scripts/mobiles/lairs/dantooine_piket_lair_1.py b/scripts/mobiles/lairs/dantooine_piket_lair_1.py new file mode 100644 index 00000000..a6ccd8a6 --- /dev/null +++ b/scripts/mobiles/lairs/dantooine_piket_lair_1.py @@ -0,0 +1,4 @@ +import sys + +def addTemplate(core): + core.spawnService.addLairTemplate('dantooine_piket_lair_1', 'piket', 15, 'object/tangible/lair/base/shared_earthmound_light.iff') \ No newline at end of file diff --git a/scripts/mobiles/lairs/dantooine_piket_longhorn_lair_1.py b/scripts/mobiles/lairs/dantooine_piket_longhorn_lair_1.py new file mode 100644 index 00000000..1e24cef1 --- /dev/null +++ b/scripts/mobiles/lairs/dantooine_piket_longhorn_lair_1.py @@ -0,0 +1,9 @@ +import sys +from java.util import Vector + +def addTemplate(core): + mobileTemplates = Vector() + mobileTemplates.add('piket_longhorn') + mobileTemplates.add('piket_longhorn_female') + mobileTemplates.add('piket_plains_walker') + core.spawnService.addLairTemplate('dantooine_piket_longhorn_lair_1', mobileTemplates, 15, 'object/tangible/lair/base/shared_earthmound_light.iff') \ No newline at end of file diff --git a/scripts/mobiles/lairs/dantooine_piket_plains_walker_lair_1.py b/scripts/mobiles/lairs/dantooine_piket_plains_walker_lair_1.py new file mode 100644 index 00000000..b837fe8c --- /dev/null +++ b/scripts/mobiles/lairs/dantooine_piket_plains_walker_lair_1.py @@ -0,0 +1,7 @@ +import sys +from java.util import Vector + +def addTemplate(core): + mobileTemplates = Vector() + mobileTemplates.add('piket_plains_walker') + core.spawnService.addLairTemplate('dantooine_piket_plains_walker_lair_1', mobileTemplates, 15, 'object/tangible/lair/base/shared_earthmound_light.iff') \ No newline at end of file diff --git a/scripts/mobiles/lairs/dantooine_quenker_lair_1.py b/scripts/mobiles/lairs/dantooine_quenker_lair_1.py new file mode 100644 index 00000000..4856d31e --- /dev/null +++ b/scripts/mobiles/lairs/dantooine_quenker_lair_1.py @@ -0,0 +1,9 @@ +import sys +from java.util import Vector + +def addTemplate(core): + mobileTemplates = Vector() + mobileTemplates.add('quenker') + mobileTemplates.add('quenker_ravager') + mobileTemplates.add('quenker_relic_reaper') + core.spawnService.addLairTemplate('dantooine_quenker_lair_1', mobileTemplates, 15, 'object/tangible/lair/base/shared_poi_all_lair_brambles_small.iff') \ No newline at end of file diff --git a/scripts/mobiles/lairs/dantooine_thune_lair_1.py b/scripts/mobiles/lairs/dantooine_thune_lair_1.py new file mode 100644 index 00000000..93962a7a --- /dev/null +++ b/scripts/mobiles/lairs/dantooine_thune_lair_1.py @@ -0,0 +1,9 @@ +import sys +from java.util import Vector + +def addTemplate(core): + mobileTemplates = Vector() + mobileTemplates.add('thune') + mobileTemplates.add('thune_grassland_guardian') + mobileTemplates.add('thune_herd_leader') + core.spawnService.addLairTemplate('dantooine_thune_lair_1', mobileTemplates, 15, 'object/tangible/lair/base/shared_earthmound_light.iff') \ No newline at end of file diff --git a/scripts/mobiles/lairs/dantooine_voritor_lair_1.py b/scripts/mobiles/lairs/dantooine_voritor_lair_1.py new file mode 100644 index 00000000..8e1afee4 --- /dev/null +++ b/scripts/mobiles/lairs/dantooine_voritor_lair_1.py @@ -0,0 +1,5 @@ +import sys +from java.util import Vector + +def addTemplate(core): + core.spawnService.addLairTemplate('dantooine_voritor_lair_1', 'voritor_lizard', 15, 'object/tangible/lair/base/shared_poi_all_lair_brambles_small.iff') \ No newline at end of file diff --git a/scripts/mobiles/lairs/dantooine_voritor_lair_2.py b/scripts/mobiles/lairs/dantooine_voritor_lair_2.py new file mode 100644 index 00000000..9352c9f3 --- /dev/null +++ b/scripts/mobiles/lairs/dantooine_voritor_lair_2.py @@ -0,0 +1,11 @@ +import sys +from java.util import Vector + +def addTemplate(core): + mobileTemplates = Vector() + mobileTemplates.add('voritor_lizard') + mobileTemplates.add('horned_voritor_jungle_lizard') + mobileTemplates.add('vexed_voritor_lizard') + mobileTemplates.add('voritor_dasher') + mobileTemplates.add('spiked_slasher') + core.spawnService.addLairTemplate('dantooine_voritor_lair_2', mobileTemplates, 15, 'object/tangible/lair/base/shared_poi_all_lair_brambles_small.iff') \ No newline at end of file diff --git a/scripts/mobiles/lok/aged_kimogila.py b/scripts/mobiles/lok/aged_kimogila.py new file mode 100644 index 00000000..33f4d623 --- /dev/null +++ b/scripts/mobiles/lok/aged_kimogila.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kimogila_aged') + mobileTemplate.setLevel(79) + mobileTemplate.setMinLevel(79) + mobileTemplate.setMaxLevel(80) + mobileTemplate.setDifficulty(2) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(1450) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(1350) + mobileTemplate.setSocialGroup("kimogila") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kimogila_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('aged_kimogila', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/mustafar/Blistmok_Shrieker.py b/scripts/mobiles/mustafar/Blistmok_Shrieker.py new file mode 100644 index 00000000..f4154231 --- /dev/null +++ b/scripts/mobiles/mustafar/Blistmok_Shrieker.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('som_blistmok_shrieker') + mobileTemplate.setLevel(82) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Reptile Meat") + mobileTemplate.setMeatAmount(19) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(22) + mobileTemplate.setSocialGroup("blistmok") + mobileTemplate.setAssistRange(24) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_blistmok.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('Blistmok_Shrieker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/mustafar/Blistmok_Trampler.py b/scripts/mobiles/mustafar/Blistmok_Trampler.py new file mode 100644 index 00000000..476a02d3 --- /dev/null +++ b/scripts/mobiles/mustafar/Blistmok_Trampler.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('som_blistmok_trampler') + mobileTemplate.setLevel(82) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Reptile Meat") + mobileTemplate.setMeatAmount(19) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(22) + mobileTemplate.setSocialGroup("blistmok") + mobileTemplate.setAssistRange(24) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_blistmok.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('Blistmok_Trampler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/mustafar/ancient_jundak.py b/scripts/mobiles/mustafar/ancient_jundak.py new file mode 100644 index 00000000..888d6160 --- /dev/null +++ b/scripts/mobiles/mustafar/ancient_jundak.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('som_ancient_jundak') + mobileTemplate.setLevel(84) + mobileTemplate.setDifficulty(2) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.2) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(1) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(2) + mobileTemplate.setSocialGroup("jundak") + mobileTemplate.setAssistRange(24) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_jundak.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('ancient_jundak', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/mustafar/ancient_tulrus.py b/scripts/mobiles/mustafar/ancient_tulrus.py new file mode 100644 index 00000000..e940f6a5 --- /dev/null +++ b/scripts/mobiles/mustafar/ancient_tulrus.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('som_nesting_grounds_tulrus_ancient') + mobileTemplate.setLevel(82) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.2) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(33) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(24) + mobileTemplate.setSocialGroup("tulrus") + mobileTemplate.setAssistRange(24) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tulrus.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('ancient_tulrus', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/mustafar/blistmok_crystal_stalker.py b/scripts/mobiles/mustafar/blistmok_crystal_stalker.py new file mode 100644 index 00000000..c45fa73d --- /dev/null +++ b/scripts/mobiles/mustafar/blistmok_crystal_stalker.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('som_crystal_flats_blistmok_crystal_stalker') + mobileTemplate.setLevel(72) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Reptile Meat") + mobileTemplate.setMeatAmount(20) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(24) + mobileTemplate.setSocialGroup("blistmok") + mobileTemplate.setAssistRange(24) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_blistmok.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('blistmok_crystal_stalker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/mustafar/bloated_jundak.py b/scripts/mobiles/mustafar/bloated_jundak.py new file mode 100644 index 00000000..cc3482e2 --- /dev/null +++ b/scripts/mobiles/mustafar/bloated_jundak.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('som_nesting_grounds_jundak_bloated') + mobileTemplate.setLevel(84) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(28) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(38) + mobileTemplate.setSocialGroup("jundak") + mobileTemplate.setAssistRange(24) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_jundak.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bloated_jundak', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/naboo/aggrivated_kaadu_trampler.py b/scripts/mobiles/naboo/aggrivated_kaadu_trampler.py new file mode 100644 index 00000000..6fdc7ac1 --- /dev/null +++ b/scripts/mobiles/naboo/aggrivated_kaadu_trampler.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kaadu_aggrivated_trampler') + mobileTemplate.setLevel(15) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(120) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(85) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(70) + mobileTemplate.setSocialGroup("kaadu") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kaadu.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('aggrivated_kaadu_trampler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/naboo/alpha_veermok.py b/scripts/mobiles/naboo/alpha_veermok.py new file mode 100644 index 00000000..2a536044 --- /dev/null +++ b/scripts/mobiles/naboo/alpha_veermok.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('alpha_veermok') + mobileTemplate.setLevel(19) + mobileTemplate.setMinLevel(19) + mobileTemplate.setMaxLevel(20) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.2) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(150) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(150) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(40) + mobileTemplate.setSocialGroup("veermok") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_veermok.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('alpha_veermok', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/naboo/bachelor_gualama.py b/scripts/mobiles/naboo/bachelor_gualama.py new file mode 100644 index 00000000..c66e7326 --- /dev/null +++ b/scripts/mobiles/naboo/bachelor_gualama.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bachelor_gualama') + mobileTemplate.setLevel(41) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(150) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(150) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(90) + mobileTemplate.setSocialGroup("gualama") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_gualama.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bachelor_gualama', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/naboo/bolle_bol.py b/scripts/mobiles/naboo/bolle_bol.py new file mode 100644 index 00000000..d6df3369 --- /dev/null +++ b/scripts/mobiles/naboo/bolle_bol.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bolle_bol') + mobileTemplate.setLevel(16) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(450) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(300) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(180) + mobileTemplate.setSocialGroup("bolle bol") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bolle_bol.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bolle_bol', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/naboo/capper_spineflap_drone.py b/scripts/mobiles/naboo/capper_spineflap_drone.py new file mode 100644 index 00000000..6fd319f6 --- /dev/null +++ b/scripts/mobiles/naboo/capper_spineflap_drone.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('capper_spineflap_drone') + mobileTemplate.setLevel(2) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(6) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(10) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(6) + mobileTemplate.setSocialGroup("capper spineflap") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_capper_spineflap.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('capper_spineflap_drone', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/naboo/carnivorous_nuna.py b/scripts/mobiles/naboo/carnivorous_nuna.py new file mode 100644 index 00000000..317bf875 --- /dev/null +++ b/scripts/mobiles/naboo/carnivorous_nuna.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('carnivorous_nuna') + mobileTemplate.setLevel(13) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(5) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("self") + mobileTemplate.setAssistRange(8) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_nuna.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('carnivorous_nuna', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/naboo/chuba.py b/scripts/mobiles/naboo/chuba.py index 085d9e77..d7276d10 100644 --- a/scripts/mobiles/naboo/chuba.py +++ b/scripts/mobiles/naboo/chuba.py @@ -1,16 +1,44 @@ -import sys -from services.spawn import MobileTemplate -from java.util import Vector - -def addTemplate(core): - mobileTemplate = MobileTemplate() - templates = Vector() - templates.add('object/mobile/shared_chuba_hue.iff') - mobileTemplate.setCreatureName('chuba') - mobileTemplate.setTemplates(templates) - mobileTemplate.setLevel(5) - attacks = Vector() - mobileTemplate.setDefaultAttack('creatureMeleeAttack') - mobileTemplate.setAttacks(attacks) - core.spawnService.addMobileTemplate('chuba', mobileTemplate) - \ No newline at end of file +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('chuba') + mobileTemplate.setLevel(1) + mobileTemplate.setMinLevel(1) + mobileTemplate.setMaxLevel(3) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(3) + mobileTemplate.setSocialGroup("chuba") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_chuba.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('chuba', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/naboo/fambaa.py b/scripts/mobiles/naboo/fambaa.py index 63011f10..47cfd27f 100644 --- a/scripts/mobiles/naboo/fambaa.py +++ b/scripts/mobiles/naboo/fambaa.py @@ -1,16 +1,46 @@ -import sys -from services.spawn import MobileTemplate -from java.util import Vector - -def addTemplate(core): - mobileTemplate = MobileTemplate() - templates = Vector() - templates.add('object/mobile/shared_fambaa.iff') - mobileTemplate.setCreatureName('fambaa') - mobileTemplate.setTemplates(templates) - mobileTemplate.setLevel(23) - attacks = Vector() - mobileTemplate.setDefaultAttack('creatureMeleeAttack') - mobileTemplate.setAttacks(attacks) - core.spawnService.addMobileTemplate('fambaa', mobileTemplate) - \ No newline at end of file +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fambaa') + mobileTemplate.setLevel(22) + mobileTemplate.setMinLevel(22) + mobileTemplate.setMaxLevel(23) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Reptile Meat") + mobileTemplate.setMeatAmount(1250) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(325) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(675) + mobileTemplate.setSocialGroup("fambaa") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_fambaa.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('fambaa', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/naboo/gualama.py b/scripts/mobiles/naboo/gualama.py new file mode 100644 index 00000000..3108f2bb --- /dev/null +++ b/scripts/mobiles/naboo/gualama.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gualama') + mobileTemplate.setLevel(39) + mobileTemplate.setMinLevel(39) + mobileTemplate.setMaxLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(200) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(150) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(90) + mobileTemplate.setSocialGroup("gualama") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_gualama.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gualama', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/naboo/hermit_spider.py b/scripts/mobiles/naboo/hermit_spider.py new file mode 100644 index 00000000..55014de7 --- /dev/null +++ b/scripts/mobiles/naboo/hermit_spider.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('hermit_spider') + mobileTemplate.setLevel(33) + mobileTemplate.setMinLevel(33) + mobileTemplate.setMaxLevel(35) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(60) + mobileTemplate.setSocialGroup("hermit spider") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_hermit_spider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('hermit_spider', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/naboo/kaadu.py b/scripts/mobiles/naboo/kaadu.py index d4e27c91..e1f778f4 100644 --- a/scripts/mobiles/naboo/kaadu.py +++ b/scripts/mobiles/naboo/kaadu.py @@ -1,15 +1,46 @@ -import sys -from services.spawn import MobileTemplate -from java.util import Vector - -def addTemplate(core): - mobileTemplate = MobileTemplate() - templates = Vector() - templates.add('object/mobile/shared_kaadu_hue.iff') - mobileTemplate.setCreatureName('kaadu') - mobileTemplate.setTemplates(templates) - mobileTemplate.setLevel(14) - attacks = Vector() - mobileTemplate.setDefaultAttack('creatureMeleeAttack') - mobileTemplate.setAttacks(attacks) - core.spawnService.addMobileTemplate('kaadu', mobileTemplate) \ No newline at end of file +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kaadu') + mobileTemplate.setLevel(8) + mobileTemplate.setMinLevel(8) + mobileTemplate.setMaxLevel(12) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(120) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(85) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(70) + mobileTemplate.setSocialGroup("kaadu") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_kaadu.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kaadu', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/naboo/narglatch.py b/scripts/mobiles/naboo/narglatch.py new file mode 100644 index 00000000..c8e25c2e --- /dev/null +++ b/scripts/mobiles/naboo/narglatch.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('narglatch') + mobileTemplate.setLevel(21) + mobileTemplate.setMinLevel(21) + mobileTemplate.setMaxLevel(23) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(60) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(45) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(40) + mobileTemplate.setSocialGroup("narglatch") + mobileTemplate.setAssistRange(0) + mobileTemplate.setOptionsBitmask(128) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_narglatch.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('narglatch', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/naboo/veermok.py b/scripts/mobiles/naboo/veermok.py new file mode 100644 index 00000000..47c07893 --- /dev/null +++ b/scripts/mobiles/naboo/veermok.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('veermok') + mobileTemplate.setLevel(18) + mobileTemplate.setMinLevel(18) + mobileTemplate.setMaxLevel(26) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(150) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(150) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(60) + mobileTemplate.setSocialGroup("veermok") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_veermok.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('veermok', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/rori/adult_pygmy_torton.py b/scripts/mobiles/rori/adult_pygmy_torton.py new file mode 100644 index 00000000..0d7e8788 --- /dev/null +++ b/scripts/mobiles/rori/adult_pygmy_torton.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('torton_pygmy_adult') + mobileTemplate.setLevel(16) + mobileTemplate.setMinLevel(16) + mobileTemplate.setMaxLevel(18) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(600) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(400) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(600) + mobileTemplate.setSocialGroup("torton") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_torton.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('adult_pygmy_torton', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/rori/bark_mite.py b/scripts/mobiles/rori/bark_mite.py new file mode 100644 index 00000000..6fb5d13c --- /dev/null +++ b/scripts/mobiles/rori/bark_mite.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bark_mite') + mobileTemplate.setLevel(37) + mobileTemplate.setMinLevel(37) + mobileTemplate.setMaxLevel(37) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(3) + mobileTemplate.setSocialGroup("bark mite") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bark_mite', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/rori/bark_mite_hatchling.py b/scripts/mobiles/rori/bark_mite_hatchling.py new file mode 100644 index 00000000..7f40123c --- /dev/null +++ b/scripts/mobiles/rori/bark_mite_hatchling.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bark_mite_hatchling') + mobileTemplate.setLevel(36) + mobileTemplate.setMinLevel(36) + mobileTemplate.setMaxLevel(36) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setSocialGroup("bark mite") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bark_mite_hatchling', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/rori/bearded_jax.py b/scripts/mobiles/rori/bearded_jax.py new file mode 100644 index 00000000..90a4958c --- /dev/null +++ b/scripts/mobiles/rori/bearded_jax.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bearded_jax') + mobileTemplate.setLevel(37) + mobileTemplate.setMinLevel(37) + mobileTemplate.setMaxLevel(38) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(15) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(15) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(10) + mobileTemplate.setSocialGroup("jax") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bearded_jax.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bearded_jax', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/rori/blood_thirsty_borgle.py b/scripts/mobiles/rori/blood_thirsty_borgle.py new file mode 100644 index 00000000..6e7bce1b --- /dev/null +++ b/scripts/mobiles/rori/blood_thirsty_borgle.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('blood_thirsty_borgle') + mobileTemplate.setLevel(39) + mobileTemplate.setMinLevel(39) + mobileTemplate.setMaxLevel(39) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(5) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(5) + mobileTemplate.setSocialGroup("borgle") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_borgle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('blood_thirsty_borgle', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/rori/borgle.py b/scripts/mobiles/rori/borgle.py new file mode 100644 index 00000000..a79e9f94 --- /dev/null +++ b/scripts/mobiles/rori/borgle.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('borgle') + mobileTemplate.setLevel(39) + mobileTemplate.setMinLevel(39) + mobileTemplate.setMaxLevel(42) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(5) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(5) + mobileTemplate.setSocialGroup("borgle") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_borgle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('borgle', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/rori/borgle_harvester.py b/scripts/mobiles/rori/borgle_harvester.py new file mode 100644 index 00000000..774b9a09 --- /dev/null +++ b/scripts/mobiles/rori/borgle_harvester.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('borgle_harvester') + mobileTemplate.setLevel(37) + mobileTemplate.setMinLevel(37) + mobileTemplate.setMaxLevel(37) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(5) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(5) + mobileTemplate.setSocialGroup("borgle") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_borgle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('borgle_harvester', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/rori/borgle_matriarch.py b/scripts/mobiles/rori/borgle_matriarch.py new file mode 100644 index 00000000..e8d0903d --- /dev/null +++ b/scripts/mobiles/rori/borgle_matriarch.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('borgle_matriarch') + mobileTemplate.setLevel(40) + mobileTemplate.setMinLevel(40) + mobileTemplate.setMaxLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.2) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(5) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(5) + mobileTemplate.setSocialGroup("borgle") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_borgle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('borgle_matriarch', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/rori/borgle_protector.py b/scripts/mobiles/rori/borgle_protector.py new file mode 100644 index 00000000..142ec8fa --- /dev/null +++ b/scripts/mobiles/rori/borgle_protector.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('borgle_protector') + mobileTemplate.setLevel(39) + mobileTemplate.setMinLevel(39) + mobileTemplate.setMaxLevel(39) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(5) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(5) + mobileTemplate.setSocialGroup("borgle") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_borgle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('borgle_protector', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/rori/capper_spineflap.py b/scripts/mobiles/rori/capper_spineflap.py new file mode 100644 index 00000000..82c9f4b2 --- /dev/null +++ b/scripts/mobiles/rori/capper_spineflap.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('capper_spineflap') + mobileTemplate.setLevel(31) + mobileTemplate.setMinLevel(31) + mobileTemplate.setMaxLevel(35) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(3) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(5) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(3) + mobileTemplate.setSocialGroup("capper spineflap") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_capper_spineflap.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('capper_spineflap', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/rori/emperors_hand.py b/scripts/mobiles/rori/emperors_hand.py index a1eaa04d..d878eb8b 100644 --- a/scripts/mobiles/rori/emperors_hand.py +++ b/scripts/mobiles/rori/emperors_hand.py @@ -15,9 +15,10 @@ def addTemplate(core): mobileTemplate.setMinSpawnDistance(4) mobileTemplate.setMaxSpawnDistance(8) mobileTemplate.setDeathblow(True) - mobileTemplate.setScale(1.3) + mobileTemplate.setScale(1) mobileTemplate.setAssistRange(0) mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) templates = Vector() @@ -33,5 +34,5 @@ def addTemplate(core): mobileTemplate.setDefaultAttack('saberHit') mobileTemplate.setAttacks(attacks) - core.spawnService.addMobileTemplate('emperors_hand', mobileTemplate) + core.spawnService.addMobileTemplate('restuss_emperors_hand', mobileTemplate) return \ No newline at end of file diff --git a/scripts/mobiles/rori/horned_rasp.py b/scripts/mobiles/rori/horned_rasp.py new file mode 100644 index 00000000..b6b1f7ae --- /dev/null +++ b/scripts/mobiles/rori/horned_rasp.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('horned_rasp') + mobileTemplate.setLevel(31) + mobileTemplate.setMinLevel(31) + mobileTemplate.setMaxLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(8) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(1) + mobileTemplate.setSocialGroup("rasp") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_horned_rasp.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('horned_rasp', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/rori/pugoriss.py b/scripts/mobiles/rori/pugoriss.py new file mode 100644 index 00000000..a02c9420 --- /dev/null +++ b/scripts/mobiles/rori/pugoriss.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('pugoriss') + mobileTemplate.setLevel(42) + mobileTemplate.setMinLevel(42) + mobileTemplate.setMaxLevel(45) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(375) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(425) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(375) + mobileTemplate.setSocialGroup("pugoriss") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_pugoriss.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('pugoriss', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/rori/torton.py b/scripts/mobiles/rori/torton.py new file mode 100644 index 00000000..4e96998e --- /dev/null +++ b/scripts/mobiles/rori/torton.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('torton') + mobileTemplate.setLevel(53) + mobileTemplate.setMinLevel(53) + mobileTemplate.setMaxLevel(55) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(1300) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(1150) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(1300) + mobileTemplate.setSocialGroup("torton") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_torton.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('torton', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/rori/vir_vur.py b/scripts/mobiles/rori/vir_vur.py new file mode 100644 index 00000000..f93e456c --- /dev/null +++ b/scripts/mobiles/rori/vir_vur.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('vir_vur') + mobileTemplate.setLevel(37) + mobileTemplate.setMinLevel(37) + mobileTemplate.setMaxLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(10) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(4) + mobileTemplate.setSocialGroup("vir vur") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_vir_vur.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vir_vur', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/spawnareas/dantooine_central_mixed_1.py b/scripts/mobiles/spawnareas/dantooine_central_mixed_1.py new file mode 100644 index 00000000..5a45beeb --- /dev/null +++ b/scripts/mobiles/spawnareas/dantooine_central_mixed_1.py @@ -0,0 +1,11 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector + +def addSpawnArea(core): + mixedGroups = Vector() + mixedGroups.add('huurton_lair_group_1') + mixedGroups.add('piket_longhorn_lair_group_1') + mixedGroups.add('bol_lair_group_1') + core.spawnService.addMixedSpawnArea(mixedGroups, -2580, 737, 2068, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/dantooine_central_mixed_2.py b/scripts/mobiles/spawnareas/dantooine_central_mixed_2.py new file mode 100644 index 00000000..8da5820c --- /dev/null +++ b/scripts/mobiles/spawnareas/dantooine_central_mixed_2.py @@ -0,0 +1,13 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector + +def addSpawnArea(core): + mixedGroups = Vector() + mixedGroups.add('kunga_central_group_1') + mixedGroups.add('huurton_lair_group_1') + mixedGroups.add('thune_lair_group_1') + mixedGroups.add('graul_lair_group_1') + mixedGroups.add('huurton_group_2') + core.spawnService.addMixedSpawnArea(mixedGroups, 1044, -798, 2252, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/dantooine_central_mixed_3.py b/scripts/mobiles/spawnareas/dantooine_central_mixed_3.py new file mode 100644 index 00000000..7730e79a --- /dev/null +++ b/scripts/mobiles/spawnareas/dantooine_central_mixed_3.py @@ -0,0 +1,13 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector + +def addSpawnArea(core): + mixedGroups = Vector() + mixedGroups.add('mokk_group_1') + mixedGroups.add('piket_longhorn_lair_group_1') + mixedGroups.add('huurton_lair_group_1') + mixedGroups.add('bol_lair_group_1') + mixedGroups.add('huurton_group_1') + core.spawnService.addMixedSpawnArea(mixedGroups, -1740, -3297, 1822, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/dantooine_east_mixed_1.py b/scripts/mobiles/spawnareas/dantooine_east_mixed_1.py new file mode 100644 index 00000000..b80c96c0 --- /dev/null +++ b/scripts/mobiles/spawnareas/dantooine_east_mixed_1.py @@ -0,0 +1,10 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector + +def addSpawnArea(core): + mixedGroups = Vector() + mixedGroups.add('voritors_east_group_1') + mixedGroups.add('voritor_lair_group_1') + core.spawnService.addMixedSpawnArea(mixedGroups, 5672, -1146, 2396, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/dantooine_east_mixed_2.py b/scripts/mobiles/spawnareas/dantooine_east_mixed_2.py new file mode 100644 index 00000000..5dabb9c8 --- /dev/null +++ b/scripts/mobiles/spawnareas/dantooine_east_mixed_2.py @@ -0,0 +1,9 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector + +def addSpawnArea(core): + mixedGroups = Vector() + mixedGroups.add('voritor_lair_group_2') + core.spawnService.addMixedSpawnArea(mixedGroups, 5345, -5795, 2560, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/dantooine_east_mixed_3.py b/scripts/mobiles/spawnareas/dantooine_east_mixed_3.py new file mode 100644 index 00000000..b2debb9f --- /dev/null +++ b/scripts/mobiles/spawnareas/dantooine_east_mixed_3.py @@ -0,0 +1,11 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector + +def addSpawnArea(core): + mixedGroups = Vector() + mixedGroups.add('piket_plains_walker_lair_group') + mixedGroups.add('quenker_relic_reaper_group') + mixedGroups.add('thune_lair_group_1') + core.spawnService.addMixedSpawnArea(mixedGroups, 3440, 1310, 2641, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/dantooine_imperial_op_lair.py b/scripts/mobiles/spawnareas/dantooine_imperial_op_lair.py new file mode 100644 index 00000000..fa814fba --- /dev/null +++ b/scripts/mobiles/spawnareas/dantooine_imperial_op_lair.py @@ -0,0 +1,6 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys + +def addSpawnArea(core): + core.spawnService.addLairSpawnArea('mixed_lair_group_1', -4014, -1966, 1024, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/dantooine_mining_lair.py b/scripts/mobiles/spawnareas/dantooine_mining_lair.py new file mode 100644 index 00000000..a4e6734a --- /dev/null +++ b/scripts/mobiles/spawnareas/dantooine_mining_lair.py @@ -0,0 +1,7 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector + +def addSpawnArea(core): + #core.spawnService.addLairSpawnArea('mixed_lair_group_1', 0, 2355, 1024, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/dantooine_mining_mixed.py b/scripts/mobiles/spawnareas/dantooine_mining_mixed.py new file mode 100644 index 00000000..7fd81cad --- /dev/null +++ b/scripts/mobiles/spawnareas/dantooine_mining_mixed.py @@ -0,0 +1,11 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector + +def addSpawnArea(core): + mixedGroups = Vector() + mixedGroups.add('piket_plains_walker_group') + mixedGroups.add('mixed_lair_group_1') + mixedGroups.add('naboo_starter') + core.spawnService.addMixedSpawnArea(mixedGroups, 0, 2355, 1024, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/dantooine_north_mixed_1.py b/scripts/mobiles/spawnareas/dantooine_north_mixed_1.py new file mode 100644 index 00000000..0105e3c0 --- /dev/null +++ b/scripts/mobiles/spawnareas/dantooine_north_mixed_1.py @@ -0,0 +1,11 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector + +def addSpawnArea(core): + mixedGroups = Vector() + mixedGroups.add('force_sensitives_wild_1') + mixedGroups.add('graul_mauler_lair_group_1') + mixedGroups.add('graul_mauler_nw_group_1') + core.spawnService.addMixedSpawnArea(mixedGroups, 20, 6574, 1966, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/dantooine_north_mixed_2.py b/scripts/mobiles/spawnareas/dantooine_north_mixed_2.py new file mode 100644 index 00000000..f24e179b --- /dev/null +++ b/scripts/mobiles/spawnareas/dantooine_north_mixed_2.py @@ -0,0 +1,12 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector + +def addSpawnArea(core): + mixedGroups = Vector() + mixedGroups.add('huurton_lair_group_1') + mixedGroups.add('bol_lair_group_1') + mixedGroups.add('mokk_group_1') + mixedGroups.add('quenker_lair_group_1') + core.spawnService.addMixedSpawnArea(mixedGroups, -1454, 3829, 1044, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/dantooine_north_mixed_3.py b/scripts/mobiles/spawnareas/dantooine_north_mixed_3.py new file mode 100644 index 00000000..237654cb --- /dev/null +++ b/scripts/mobiles/spawnareas/dantooine_north_mixed_3.py @@ -0,0 +1,12 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector + +def addSpawnArea(core): + mixedGroups = Vector() + mixedGroups.add('quenker_lair_group_1') + mixedGroups.add('huurton_lair_group_1') + mixedGroups.add('bol_lair_group_1') + mixedGroups.add('mokk_group_1') + core.spawnService.addMixedSpawnArea(mixedGroups, 757, 4321, 1167, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/dantooine_nw_mixed_1.py b/scripts/mobiles/spawnareas/dantooine_nw_mixed_1.py new file mode 100644 index 00000000..1ffb716c --- /dev/null +++ b/scripts/mobiles/spawnareas/dantooine_nw_mixed_1.py @@ -0,0 +1,10 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector + +def addSpawnArea(core): + mixedGroups = Vector() + mixedGroups.add('dantooine_nw_lair_group_1') + mixedGroups.add('jantas_nw_group_1') + core.spawnService.addMixedSpawnArea(mixedGroups, -4751, 4935, 3200, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/dantooine_pirate_lair.py b/scripts/mobiles/spawnareas/dantooine_pirate_lair.py new file mode 100644 index 00000000..ef872c08 --- /dev/null +++ b/scripts/mobiles/spawnareas/dantooine_pirate_lair.py @@ -0,0 +1,6 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys + +def addSpawnArea(core): + core.spawnService.addLairSpawnArea('mixed_lair_group_1', 1699, -6471, 1024, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/dantooine_south_mixed_1.py b/scripts/mobiles/spawnareas/dantooine_south_mixed_1.py new file mode 100644 index 00000000..28c50059 --- /dev/null +++ b/scripts/mobiles/spawnareas/dantooine_south_mixed_1.py @@ -0,0 +1,14 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector + +def addSpawnArea(core): + mixedGroups = Vector() + mixedGroups.add('jantas_nw_group_1') + mixedGroups.add('graul_mauler_lair_group_1') + mixedGroups.add('quenker_relic_reaper_group') + mixedGroups.add('voritor_lair_group_1') + mixedGroups.add('thune_lair_group_1') + mixedGroups.add('bol_lair_group_1') + core.spawnService.addMixedSpawnArea(mixedGroups, -2109, -6983, 2580, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/dantooine_south_mixed_3.py b/scripts/mobiles/spawnareas/dantooine_south_mixed_3.py new file mode 100644 index 00000000..addd1210 --- /dev/null +++ b/scripts/mobiles/spawnareas/dantooine_south_mixed_3.py @@ -0,0 +1,11 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector + +def addSpawnArea(core): + mixedGroups = Vector() + mixedGroups.add('quenker_lair_group_1') + mixedGroups.add('huurton_lair_group_1') + mixedGroups.add('quenker_group_south_1') + core.spawnService.addMixedSpawnArea(mixedGroups, 1495, -3502, 2396, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/dantooine_sw_mixed_1.py b/scripts/mobiles/spawnareas/dantooine_sw_mixed_1.py new file mode 100644 index 00000000..57fa09a7 --- /dev/null +++ b/scripts/mobiles/spawnareas/dantooine_sw_mixed_1.py @@ -0,0 +1,12 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector + +def addSpawnArea(core): + mixedGroups = Vector() + mixedGroups.add('mokk_group_1') + mixedGroups.add('voritor_lair_group_1') + mixedGroups.add('graul_mauler_lair_group_1') + mixedGroups.add('quenker_relic_reaper_group') + core.spawnService.addMixedSpawnArea(mixedGroups, -5877, -4239, 2170, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/dantooine_west_mixed_1.py b/scripts/mobiles/spawnareas/dantooine_west_mixed_1.py new file mode 100644 index 00000000..a0e8156a --- /dev/null +++ b/scripts/mobiles/spawnareas/dantooine_west_mixed_1.py @@ -0,0 +1,12 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector + +def addSpawnArea(core): + mixedGroups = Vector() + mixedGroups.add('kunga_central_group_1') + mixedGroups.add('piket_longhorn_lair_group_1') + mixedGroups.add('thune_lair_group_1') + mixedGroups.add('piket_longhorn_group_1') + core.spawnService.addMixedSpawnArea(mixedGroups, -6410, 0, 1986, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/force_sensitives_dynamic_1.py b/scripts/mobiles/spawnareas/force_sensitives_dynamic_1.py index 6c7638ea..dca3c08d 100644 --- a/scripts/mobiles/spawnareas/force_sensitives_dynamic_1.py +++ b/scripts/mobiles/spawnareas/force_sensitives_dynamic_1.py @@ -1,3 +1,4 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool import sys from java.util import Vector @@ -5,5 +6,5 @@ def addSpawnArea(core): dynamicGroups = Vector() dynamicGroups.add('force_sensitives_wild_1') dynamicGroups.add('dark_jedi_wild_1') - core.spawnService.addDynamicSpawnArea(dynamicGroups, 4083, 5780, 2048, 'dantooine') - return \ No newline at end of file + core.spawnService.addDynamicSpawnArea(dynamicGroups, 4362, 5488, 2560, 'dantooine') + return diff --git a/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_1.py b/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_1.py index 7a998fa8..e69a5c02 100644 --- a/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_1.py +++ b/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_1.py @@ -6,6 +6,6 @@ def addSpawnArea(core): dynamicGroups.add('adolescent_krayt_wild_1') dynamicGroups.add('juvenile_krayts_wild_1') dynamicGroups.add('canyon_krayt_wild_1') - dynamicGroups.add('giant_canyon_krayt_dragon_1') - core.spawnService.addDynamicSpawnArea(dynamicGroups, 6471, 4267, 1024, 'tatooine') + dynamicGroups.add('giant_canyon_krayt_wild_1') + #core.spawnService.addDynamicSpawnArea(dynamicGroups, 6471, 4267, 1024, 'tatooine') return \ No newline at end of file diff --git a/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_2.py b/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_2.py index e97d5637..c4efc05e 100644 --- a/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_2.py +++ b/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_2.py @@ -3,6 +3,6 @@ from java.util import Vector def addSpawnArea(core): dynamicGroups = Vector() - dynamicGroups.add('grand_canyon_krayt_dragon_1') - core.spawnService.addDynamicSpawnArea(dynamicGroups, 7431, 4762, 120, 'tatooine') + dynamicGroups.add('grand_canyon_krayt_wild_1') + #core.spawnService.addDynamicSpawnArea(dynamicGroups, 7431, 4762, 120, 'tatooine') return \ No newline at end of file diff --git a/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_3.py b/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_3.py index 0d863838..ca80d382 100644 --- a/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_3.py +++ b/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_3.py @@ -3,6 +3,6 @@ from java.util import Vector def addSpawnArea(core): dynamicGroups = Vector() - dynamicGroups.add('krayt_dragon_ancient_1') - core.spawnService.addDynamicSpawnArea(dynamicGroups, 7490, 4466, 10, 'tatooine') + dynamicGroups.add('krayt_dragon_ancient_wild_1') + #core.spawnService.addDynamicSpawnArea(dynamicGroups, 7490, 4466, 10, 'tatooine') return \ No newline at end of file diff --git a/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_4.py b/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_4.py index 275f8a8c..cf2bd911 100644 --- a/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_4.py +++ b/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_4.py @@ -3,6 +3,6 @@ from java.util import Vector def addSpawnArea(core): dynamicGroups = Vector() - dynamicGroups.add('krayt_dragon_ancient_1') - core.spawnService.addDynamicSpawnArea(dynamicGroups, 6794, 4307, 10, 'tatooine') + dynamicGroups.add('krayt_dragon_ancient_wild_1') + #core.spawnService.addDynamicSpawnArea(dynamicGroups, 6794, 4307, 10, 'tatooine') return \ No newline at end of file diff --git a/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_5.py b/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_5.py index 90c70591..19471168 100644 --- a/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_5.py +++ b/scripts/mobiles/spawnareas/krayt_graveyard_dynamic_5.py @@ -3,6 +3,6 @@ from java.util import Vector def addSpawnArea(core): dynamicGroups = Vector() - dynamicGroups.add('krayt_dragon_ancient_1') - core.spawnService.addDynamicSpawnArea(dynamicGroups, 7493, 5992, 10, 'tatooine') + dynamicGroups.add('krayt_dragon_ancient_wild_1') + #core.spawnService.addDynamicSpawnArea(dynamicGroups, 7493, 5992, 10, 'tatooine') return \ No newline at end of file diff --git a/scripts/mobiles/spawnareas/ns_stronghold_dyn_1.py b/scripts/mobiles/spawnareas/ns_stronghold_dyn_1.py new file mode 100644 index 00000000..6e8cca1d --- /dev/null +++ b/scripts/mobiles/spawnareas/ns_stronghold_dyn_1.py @@ -0,0 +1,9 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector + +def addSpawnArea(core): + dynamicGroups = Vector() + dynamicGroups.add('nightsisters_dyn_1') + core.spawnService.addDynamicSpawnArea(dynamicGroups, -4055, -81, 2990, 'dathomir') + return diff --git a/scripts/mobiles/spawnareas/smc_dny_1.py b/scripts/mobiles/spawnareas/smc_dny_1.py new file mode 100644 index 00000000..45d52a8d --- /dev/null +++ b/scripts/mobiles/spawnareas/smc_dny_1.py @@ -0,0 +1,9 @@ +# Spawn Area file created with PSWG Planetary Spawn Tool +import sys +from java.util import Vector + +def addSpawnArea(core): + dynamicGroups = Vector() + dynamicGroups.add('smc_dyn_1') + core.spawnService.addDynamicSpawnArea(dynamicGroups, 512, 4792, 1966, 'dathomir') + return diff --git a/scripts/mobiles/talus/aakuan_champion.py b/scripts/mobiles/talus/aakuan_champion.py new file mode 100644 index 00000000..5a0b916c --- /dev/null +++ b/scripts/mobiles/talus/aakuan_champion.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('aakuan_champion') + mobileTemplate.setLevel(53) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aakuans") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_aakuan_champion_zabrak_male_01.iff') + templates.add('object/mobile/shared_dressed_aakuan_champion_zabrak_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('aakuan_champion', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/aakuan_defender.py b/scripts/mobiles/talus/aakuan_defender.py new file mode 100644 index 00000000..9b415fbc --- /dev/null +++ b/scripts/mobiles/talus/aakuan_defender.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('aakuan_defender') + mobileTemplate.setLevel(47) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aakuans") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_aakuan_defender_human_male_01.iff') + templates.add('object/mobile/shared_dressed_aakuan_defender_human_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_polearm_vibro_axe.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('aakuan_defender', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/aakuan_follower.py b/scripts/mobiles/talus/aakuan_follower.py new file mode 100644 index 00000000..2758d903 --- /dev/null +++ b/scripts/mobiles/talus/aakuan_follower.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('aakuan_follower') + mobileTemplate.setLevel(39) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aakuans") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_aakuan_follower_trandoshan_male_01.iff') + templates.add('object/mobile/shared_dressed_aakuan_follower_trandoshan_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_polearm_vibro_axe.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('aakuan_follower', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/aakuan_guardian.py b/scripts/mobiles/talus/aakuan_guardian.py new file mode 100644 index 00000000..49a31357 --- /dev/null +++ b/scripts/mobiles/talus/aakuan_guardian.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('aakuan_guardian') + mobileTemplate.setLevel(48) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aakuans") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_aakuan_guardian_trandoshan_male_01.iff') + templates.add('object/mobile/shared_dressed_aakuan_guardian_trandoshan_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_polearm_vibro_axe.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('aakuan_guardian', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/aakuan_keeper.py b/scripts/mobiles/talus/aakuan_keeper.py new file mode 100644 index 00000000..f44b0909 --- /dev/null +++ b/scripts/mobiles/talus/aakuan_keeper.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('aakuan_keeper') + mobileTemplate.setLevel(42) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aakuans") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_aakuan_keeper_zabrak_male_01.iff') + templates.add('object/mobile/shared_dressed_aakuan_keeper_zabrak_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_polearm_vibro_axe.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('aakuan_keeper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/aakuan_sentinal.py b/scripts/mobiles/talus/aakuan_sentinal.py new file mode 100644 index 00000000..82b78145 --- /dev/null +++ b/scripts/mobiles/talus/aakuan_sentinal.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('aakuan_sentinal') + mobileTemplate.setLevel(45) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aakuans") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_aakuan_sentinal_rodian_male_01.iff') + templates.add('object/mobile/shared_dressed_aakuan_sentinal_rodian_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('aakuan_sentinal', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/aakuan_steward.py b/scripts/mobiles/talus/aakuan_steward.py new file mode 100644 index 00000000..bb480e1f --- /dev/null +++ b/scripts/mobiles/talus/aakuan_steward.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('aakuan_steward') + mobileTemplate.setLevel(43) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aakuans") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_aakuan_steward_human_male_01.iff') + templates.add('object/mobile/shared_dressed_aakuan_steward_human_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_polearm_vibro_axe.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('aakuan_steward', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/aakuan_warder.py b/scripts/mobiles/talus/aakuan_warder.py new file mode 100644 index 00000000..e7aed24f --- /dev/null +++ b/scripts/mobiles/talus/aakuan_warder.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('aakuan_warder') + mobileTemplate.setLevel(52) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("aakuans") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_aakuan_warder_zabrak_male_01.iff') + templates.add('object/mobile/shared_dressed_aakuan_warder_zabrak_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_polearm_vibro_axe.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('aakuan_steward', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/berserk_kahmurra.py b/scripts/mobiles/talus/berserk_kahmurra.py new file mode 100644 index 00000000..fb2b9925 --- /dev/null +++ b/scripts/mobiles/talus/berserk_kahmurra.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('berserk_kahmurra') + mobileTemplate.setLevel(46) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(50) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(50) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(35) + mobileTemplate.setSocialGroup("kahmurra") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_kahmurra.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('berserk_kahmurra', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/binayre_chief.py b/scripts/mobiles/talus/binayre_chief.py new file mode 100644 index 00000000..0e813b90 --- /dev/null +++ b/scripts/mobiles/talus/binayre_chief.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('binayre_chief') + mobileTemplate.setLevel(47) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("binayre") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_binayre_chief_human_male_01.iff') + templates.add('object/mobile/shared_dressed_binayre_chief_human_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('binayre_chief', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/binayre_hooligan.py b/scripts/mobiles/talus/binayre_hooligan.py new file mode 100644 index 00000000..98552d7e --- /dev/null +++ b/scripts/mobiles/talus/binayre_hooligan.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('binayre_hooligan') + mobileTemplate.setLevel(36) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("binayre") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_binayre_hooligan_zabrak_male_01.iff') + templates.add('object/mobile/shared_dressed_binayre_hooligan_zabrak_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_polearm_vibro_axe.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('binayre_hooligan', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/binayre_pirate.py b/scripts/mobiles/talus/binayre_pirate.py new file mode 100644 index 00000000..68620b29 --- /dev/null +++ b/scripts/mobiles/talus/binayre_pirate.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('binayre_pirate') + mobileTemplate.setLevel(43) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("binayre") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_binayre_pirate_zabrak_male_01.iff') + templates.add('object/mobile/shared_dressed_binayre_pirate_zabrak_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('binayre_pirate', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/binayre_ruffian.py b/scripts/mobiles/talus/binayre_ruffian.py new file mode 100644 index 00000000..6e5840d0 --- /dev/null +++ b/scripts/mobiles/talus/binayre_ruffian.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('binayre_ruffian') + mobileTemplate.setLevel(43) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("binayre") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_binayre_ruffian_trandoshan_male_01.iff') + templates.add('object/mobile/shared_dressed_binayre_ruffian_trandoshan_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('binayre_ruffian', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/binayre_scalawag.py b/scripts/mobiles/talus/binayre_scalawag.py new file mode 100644 index 00000000..226ef631 --- /dev/null +++ b/scripts/mobiles/talus/binayre_scalawag.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('binayre_scalawag') + mobileTemplate.setLevel(39) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("binayre") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_binayre_scalawag_twk_male_01.iff') + templates.add('object/mobile/shared_dressed_binayre_scalawag_twk_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('binayre_scalawag', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/binayre_smuggler.py b/scripts/mobiles/talus/binayre_smuggler.py new file mode 100644 index 00000000..650bd834 --- /dev/null +++ b/scripts/mobiles/talus/binayre_smuggler.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('binayre_smuggler') + mobileTemplate.setLevel(45) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("binayre") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_binayre_smuggler_trandoshan_male_01.iff') + templates.add('object/mobile/shared_dressed_binayre_smuggler_trandoshan_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('binayre_smuggler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/black_sun_initiate.py b/scripts/mobiles/talus/black_sun_initiate.py new file mode 100644 index 00000000..649925ba --- /dev/null +++ b/scripts/mobiles/talus/black_sun_initiate.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('black_sun_initiate') + mobileTemplate.setLevel(17) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("bandit") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_black_sun_thug.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('black_sun_initiate', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/black_sun_minion.py b/scripts/mobiles/talus/black_sun_minion.py new file mode 100644 index 00000000..cd938016 --- /dev/null +++ b/scripts/mobiles/talus/black_sun_minion.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('black_sun_minion') + mobileTemplate.setLevel(21) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("bandit") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_black_sun_henchman.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('black_sun_minion', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/black_sun_smuggler.py b/scripts/mobiles/talus/black_sun_smuggler.py new file mode 100644 index 00000000..0fcc21ee --- /dev/null +++ b/scripts/mobiles/talus/black_sun_smuggler.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('black_sun_smuggler') + mobileTemplate.setLevel(19) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("bandit") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_black_sun_thug.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('black_sun_smuggler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/borvos_mutant_kahmurra.py b/scripts/mobiles/talus/borvos_mutant_kahmurra.py new file mode 100644 index 00000000..90f0fb7c --- /dev/null +++ b/scripts/mobiles/talus/borvos_mutant_kahmurra.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rabid_mutant_kahmurra') + mobileTemplate.setLevel(23) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(50) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(35) + mobileTemplate.setSocialGroup("kahmurra") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_kahmurra.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('borvos_mutant_kahmurra', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/brood_i_arachne.py b/scripts/mobiles/talus/brood_i_arachne.py new file mode 100644 index 00000000..5f051315 --- /dev/null +++ b/scripts/mobiles/talus/brood_i_arachne.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('talus_nashal_brood1_arachne') + mobileTemplate.setLevel(41) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("brood arachne") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_angler.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('brood_i_arachne', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/brood_i_aurek_arachne.py b/scripts/mobiles/talus/brood_i_aurek_arachne.py new file mode 100644 index 00000000..9720a841 --- /dev/null +++ b/scripts/mobiles/talus/brood_i_aurek_arachne.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('talus_nashal_brood1a_arachne') + mobileTemplate.setLevel(42) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("brood arachne") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_gaping_spider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('brood_i_aurek_arachne', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/brood_ii_arachne.py b/scripts/mobiles/talus/brood_ii_arachne.py new file mode 100644 index 00000000..9d290cad --- /dev/null +++ b/scripts/mobiles/talus/brood_ii_arachne.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('talus_nashal_brood2_arachne') + mobileTemplate.setLevel(42) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.5) + mobileTemplate.setSocialGroup("brood arachne") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_angler.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('brood_ii_arachne', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/brood_ii_aurek_arachne.py b/scripts/mobiles/talus/brood_ii_aurek_arachne.py new file mode 100644 index 00000000..bbe87388 --- /dev/null +++ b/scripts/mobiles/talus/brood_ii_aurek_arachne.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('talus_nashal_brood2a_arachne') + mobileTemplate.setLevel(43) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("brood arachne") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_gaping_spider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('brood_ii_aurek_arachne', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/brood_v_arachne.py b/scripts/mobiles/talus/brood_v_arachne.py new file mode 100644 index 00000000..ba226eb2 --- /dev/null +++ b/scripts/mobiles/talus/brood_v_arachne.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('talus_nashal_brood5_arachne') + mobileTemplate.setLevel(42) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.75) + mobileTemplate.setSocialGroup("brood arachne") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_razor_angler_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('brood_v_arachne', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/brood_v_aurek_arachne.py b/scripts/mobiles/talus/brood_v_aurek_arachne.py new file mode 100644 index 00000000..84bffd8a --- /dev/null +++ b/scripts/mobiles/talus/brood_v_aurek_arachne.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('talus_nashal_brood5a_arachne') + mobileTemplate.setLevel(45) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.5) + mobileTemplate.setSocialGroup("brood arachne") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_bane_back_spider.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('brood_v_aurek_arachne', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/brood_x_arachne.py b/scripts/mobiles/talus/brood_x_arachne.py new file mode 100644 index 00000000..a4f6d569 --- /dev/null +++ b/scripts/mobiles/talus/brood_x_arachne.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('talus_nashal_brood10_arachne') + mobileTemplate.setLevel(45) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(2) + mobileTemplate.setSocialGroup("brood arachne") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_razor_angler_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('brood_x_arachne', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/brood_x_aurek_arachne.py b/scripts/mobiles/talus/brood_x_aurek_arachne.py new file mode 100644 index 00000000..57048a94 --- /dev/null +++ b/scripts/mobiles/talus/brood_x_aurek_arachne.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('talus_nashal_brood10a_arachne') + mobileTemplate.setLevel(47) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(2) + mobileTemplate.setSocialGroup("brood arachne") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_bane_back_spider_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('brood_x_aurek_arachne', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/chunker_braggart.py b/scripts/mobiles/talus/chunker_braggart.py new file mode 100644 index 00000000..158e7f4a --- /dev/null +++ b/scripts/mobiles/talus/chunker_braggart.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('chunker_braggart') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("chunker gang") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_black_sun_henchman.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('chunker_braggart', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/chunker_bruiser.py b/scripts/mobiles/talus/chunker_bruiser.py new file mode 100644 index 00000000..6bacb83a --- /dev/null +++ b/scripts/mobiles/talus/chunker_bruiser.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('chunker_bruiser') + mobileTemplate.setLevel(10) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("chunker gang") + mobileTemplate.setAssistRange(4) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_talus_ttlp_soldier_hum_f_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('chunker_bruiser', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/chunker_bully.py b/scripts/mobiles/talus/chunker_bully.py new file mode 100644 index 00000000..455bcf69 --- /dev/null +++ b/scripts/mobiles/talus/chunker_bully.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('chunker_bully') + mobileTemplate.setLevel(8) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("chunker gang") + mobileTemplate.setAssistRange(4) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_talus_ttlp_soldier_hum_m_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('chunker_bully', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/chunker_goon.py b/scripts/mobiles/talus/chunker_goon.py new file mode 100644 index 00000000..3b9886de --- /dev/null +++ b/scripts/mobiles/talus/chunker_goon.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('chunker_goon') + mobileTemplate.setLevel(4) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("chunker gang") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_talus_ttlp_soldier_hum_m_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('chunker_goon', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/chunker_mooch.py b/scripts/mobiles/talus/chunker_mooch.py new file mode 100644 index 00000000..f9386446 --- /dev/null +++ b/scripts/mobiles/talus/chunker_mooch.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('chunker_mooch') + mobileTemplate.setLevel(4) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("chunker gang") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_talus_ttlp_soldier_hum_f_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('chunker_mooch', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/chunker_nitwit.py b/scripts/mobiles/talus/chunker_nitwit.py new file mode 100644 index 00000000..e5c388f0 --- /dev/null +++ b/scripts/mobiles/talus/chunker_nitwit.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('chunker_nitwit') + mobileTemplate.setLevel(1) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("chunker gang") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_talus_ttlp_soldier_hum_m_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('chunker_nitwit', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/chunker_pest.py b/scripts/mobiles/talus/chunker_pest.py new file mode 100644 index 00000000..86786b1a --- /dev/null +++ b/scripts/mobiles/talus/chunker_pest.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('chunker_pest') + mobileTemplate.setLevel(2) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("chunker gang") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_talus_ttlp_soldier_hum_m_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/polearm/shared_polearm_vibro_axe.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('chunker_pest', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/chunker_punk.py b/scripts/mobiles/talus/chunker_punk.py new file mode 100644 index 00000000..ef28079b --- /dev/null +++ b/scripts/mobiles/talus/chunker_punk.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('chunker_punk') + mobileTemplate.setLevel(2) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("chunker gang") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_talus_ttlp_soldier_hum_m_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('chunker_punk', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/chunker_swindler.py b/scripts/mobiles/talus/chunker_swindler.py new file mode 100644 index 00000000..b53b7a1d --- /dev/null +++ b/scripts/mobiles/talus/chunker_swindler.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('chunker_swindler') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("chunker gang") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_talus_ttlp_soldier_hum_m_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('chunker_swindler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/claw_bodyguard.py b/scripts/mobiles/talus/claw_bodyguard.py new file mode 100644 index 00000000..f27c34f8 --- /dev/null +++ b/scripts/mobiles/talus/claw_bodyguard.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('clone_relics__claw_bodyguard_02') + mobileTemplate.setLevel(36) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("clone relics claw") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_ep3_clone_relics_claw_bodyguard_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + + core.spawnService.addMobileTemplate('claw_bodyguard', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/claw_bodyguard_01.py b/scripts/mobiles/talus/claw_bodyguard_01.py new file mode 100644 index 00000000..bfd16759 --- /dev/null +++ b/scripts/mobiles/talus/claw_bodyguard_01.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('clone_relics__claw_bodyguard_02') + mobileTemplate.setLevel(36) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("clone relics claw") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_ep3_clone_relics_claw_bodyguard_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('claw_bodyguard_01', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/claw_thug.py b/scripts/mobiles/talus/claw_thug.py new file mode 100644 index 00000000..381f4a21 --- /dev/null +++ b/scripts/mobiles/talus/claw_thug.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('clone_relics__claw_grunt') + mobileTemplate.setLevel(20) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("clone relics claw") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_ep3_clone_relics_claw_grunt_01.iff') + templates.add('object/mobile/shared_ep3_clone_relics_claw_grunt_02.iff') + templates.add('object/mobile/shared_ep3_clone_relics_claw_grunt_03.iff') + templates.add('object/mobile/shared_ep3_clone_relics_claw_grunt_04.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + + core.spawnService.addMobileTemplate('claw_thug', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/clipped_fynock.py b/scripts/mobiles/talus/clipped_fynock.py new file mode 100644 index 00000000..4eeab952 --- /dev/null +++ b/scripts/mobiles/talus/clipped_fynock.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('clipped_fynock') + mobileTemplate.setLevel(36) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(20) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(7) + mobileTemplate.setSocialGroup("fynock") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_fynock.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('clipped_fynock', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/crazed_roba.py b/scripts/mobiles/talus/crazed_roba.py new file mode 100644 index 00000000..75dea797 --- /dev/null +++ b/scripts/mobiles/talus/crazed_roba.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('crazed_roba') + mobileTemplate.setLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(12) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(18) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(12) + mobileTemplate.setSocialGroup("self") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_roba.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('crazed_roba', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/decay_mite.py b/scripts/mobiles/talus/decay_mite.py new file mode 100644 index 00000000..55b7372d --- /dev/null +++ b/scripts/mobiles/talus/decay_mite.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('decay_mite') + mobileTemplate.setLevel(36) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(4) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(3) + mobileTemplate.setSocialGroup("decay mite") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('decay_mite', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/doak_sif.py b/scripts/mobiles/talus/doak_sif.py new file mode 100644 index 00000000..82665c90 --- /dev/null +++ b/scripts/mobiles/talus/doak_sif.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('doak_sif') + mobileTemplate.setLevel(48) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("sif") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_doak_sif.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('doak_sif', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/docile_kahmurra.py b/scripts/mobiles/talus/docile_kahmurra.py new file mode 100644 index 00000000..deba54a0 --- /dev/null +++ b/scripts/mobiles/talus/docile_kahmurra.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('docile_kahmurra') + mobileTemplate.setLevel(37) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(45) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setBoneAmount(27) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(32) + mobileTemplate.setSocialGroup("self") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_kahmurra.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('docile_kahmurra', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/dung_mite.py b/scripts/mobiles/talus/dung_mite.py new file mode 100644 index 00000000..298b192f --- /dev/null +++ b/scripts/mobiles/talus/dung_mite.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('dung_mite') + mobileTemplate.setLevel(42) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(9) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setBoneAmount(9) + mobileTemplate.setSocialGroup("decay mite") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('dung_mite', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/erran_sif.py b/scripts/mobiles/talus/erran_sif.py new file mode 100644 index 00000000..0bb36e87 --- /dev/null +++ b/scripts/mobiles/talus/erran_sif.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('erran_sif') + mobileTemplate.setLevel(67) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("sif") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_erran_sif.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_dh17.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('erran_sif', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/famished_sludge_panther.py b/scripts/mobiles/talus/famished_sludge_panther.py new file mode 100644 index 00000000..5fc94382 --- /dev/null +++ b/scripts/mobiles/talus/famished_sludge_panther.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('famished_sludge_panther') + mobileTemplate.setLevel(46) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(40) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(35) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(35) + mobileTemplate.setSocialGroup("sludge panther") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_sludge_panther.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('famished_sludge_panther', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/fearful_fynock_youth.py b/scripts/mobiles/talus/fearful_fynock_youth.py new file mode 100644 index 00000000..6a082f6c --- /dev/null +++ b/scripts/mobiles/talus/fearful_fynock_youth.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('fearful_fynock_youth') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(3) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(3) + mobileTemplate.setSocialGroup("fynock") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + + templates = Vector() + templates.add('object/mobile/shared_fynock.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('fearful_fynock_youth', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/fed_dub_captain.py b/scripts/mobiles/talus/fed_dub_captain.py new file mode 100644 index 00000000..71091708 --- /dev/null +++ b/scripts/mobiles/talus/fed_dub_captain.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fed_dub_captain') + mobileTemplate.setLevel(46) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("fed dub") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_fed_dub_captain_twk_male_01.iff') + templates.add('object/mobile/shared_dressed_fed_dub_captain_twk_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('fed_dub_captain', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/fed_dub_commander.py b/scripts/mobiles/talus/fed_dub_commander.py new file mode 100644 index 00000000..0ffab2b4 --- /dev/null +++ b/scripts/mobiles/talus/fed_dub_commander.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fed_dub_commander') + mobileTemplate.setLevel(47) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("fed dub") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_fed_dub_commander_bith_male_01.iff') + templates.add('object/mobile/shared_dressed_fed_dub_commander_bith_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('fed_dub_commander', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/fed_dub_constable.py b/scripts/mobiles/talus/fed_dub_constable.py new file mode 100644 index 00000000..7c42688b --- /dev/null +++ b/scripts/mobiles/talus/fed_dub_constable.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fed_dub_constable') + mobileTemplate.setLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("fed dub") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_fed_dub_constable_twk_male_01.iff') + templates.add('object/mobile/shared_dressed_fed_dub_constable_twk_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('fed_dub_constable', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/fed_dub_investigator.py b/scripts/mobiles/talus/fed_dub_investigator.py new file mode 100644 index 00000000..40b98fe7 --- /dev/null +++ b/scripts/mobiles/talus/fed_dub_investigator.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fed_dub_investigator') + mobileTemplate.setLevel(43) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("fed dub") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_fed_dub_investigator_twk_male_01.iff') + templates.add('object/mobile/shared_dressed_fed_dub_investigator_twk_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('fed_dub_investigator', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/fed_dub_patrolman.py b/scripts/mobiles/talus/fed_dub_patrolman.py new file mode 100644 index 00000000..27a008c6 --- /dev/null +++ b/scripts/mobiles/talus/fed_dub_patrolman.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fed_dub_patrolman') + mobileTemplate.setLevel(36) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("fed dub") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_fed_dub_patrolman_human_male_01.iff') + templates.add('object/mobile/shared_dressed_fed_dub_patrolman_human_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('fed_dub_patrolman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/fed_dub_supporter.py b/scripts/mobiles/talus/fed_dub_supporter.py new file mode 100644 index 00000000..431a779b --- /dev/null +++ b/scripts/mobiles/talus/fed_dub_supporter.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fed_dub_supporter') + mobileTemplate.setLevel(34) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("fed dub") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_fed_dub_supporter_human_male_01.iff') + templates.add('object/mobile/shared_dressed_fed_dub_supporter_human_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('fed_dub_supporter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/feeble_kima.py b/scripts/mobiles/talus/feeble_kima.py new file mode 100644 index 00000000..919fb9b3 --- /dev/null +++ b/scripts/mobiles/talus/feeble_kima.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('feeble_kima') + mobileTemplate.setLevel(39) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setBoneAmount(7) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(5) + mobileTemplate.setSocialGroup("kima") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + + templates = Vector() + templates.add('object/mobile/shared_kima.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('feeble_kima', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/female_roba.py b/scripts/mobiles/talus/female_roba.py new file mode 100644 index 00000000..a7f7b605 --- /dev/null +++ b/scripts/mobiles/talus/female_roba.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('female_roba') + mobileTemplate.setLevel(44) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(10) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(15) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(10) + mobileTemplate.setSocialGroup("roba") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_roba.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('female_roba', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/ferine_razorfang.py b/scripts/mobiles/talus/ferine_razorfang.py new file mode 100644 index 00000000..6bdc8921 --- /dev/null +++ b/scripts/mobiles/talus/ferine_razorfang.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kima_ferine_razorfang') + mobileTemplate.setLevel(20) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(7) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setBoneAmount(8) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(7) + mobileTemplate.setSocialGroup("kima") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kima.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('ferine_razorfang', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/festering_dung_mite_queen.py b/scripts/mobiles/talus/festering_dung_mite_queen.py new file mode 100644 index 00000000..433e1055 --- /dev/null +++ b/scripts/mobiles/talus/festering_dung_mite_queen.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('festering_dung_queen') + mobileTemplate.setLevel(17) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(13) + mobileTemplate.setSocialGroup("decay mite") + mobileTemplate.setAssistRange(4) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('festering_dung_mite_queen', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/flite_rasp.py b/scripts/mobiles/talus/flite_rasp.py new file mode 100644 index 00000000..362fcf68 --- /dev/null +++ b/scripts/mobiles/talus/flite_rasp.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('flite_rasp') + mobileTemplate.setLevel(34) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(11) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(3) + mobileTemplate.setSocialGroup("rasp") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_flite_rasp.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('flite_rasp', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/flite_rasp2.py b/scripts/mobiles/talus/flite_rasp2.py new file mode 100644 index 00000000..90c340c7 --- /dev/null +++ b/scripts/mobiles/talus/flite_rasp2.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('flite_rasp') + mobileTemplate.setLevel(35) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(11) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(3) + mobileTemplate.setSocialGroup("rasp") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_flite_rasp.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('flite_rasp2', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/foaming_vynock.py b/scripts/mobiles/talus/foaming_vynock.py new file mode 100644 index 00000000..441233d7 --- /dev/null +++ b/scripts/mobiles/talus/foaming_vynock.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('foaming_vynock') + mobileTemplate.setLevel(43) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(50) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(70) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(20) + mobileTemplate.setSocialGroup("self") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_vynock.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('foaming_vynock', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/frenzied_fynock_guardian.py b/scripts/mobiles/talus/frenzied_fynock_guardian.py new file mode 100644 index 00000000..4f229cf5 --- /dev/null +++ b/scripts/mobiles/talus/frenzied_fynock_guardian.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('frenzied_fynock_guardian') + mobileTemplate.setLevel(11) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(8) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(8) + mobileTemplate.setSocialGroup("fynock") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_fynock.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('frenzied_fynock_guardian', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/fynock.py b/scripts/mobiles/talus/fynock.py new file mode 100644 index 00000000..475145ba --- /dev/null +++ b/scripts/mobiles/talus/fynock.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fynock') + mobileTemplate.setLevel(40) + mobileTemplate.setMinLevel(40) + mobileTemplate.setMaxLevel(43) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(22) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(33) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(10) + mobileTemplate.setSocialGroup("fynock") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_fynock.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('fynock', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/genetically_enhanced_kahmurra.py b/scripts/mobiles/talus/genetically_enhanced_kahmurra.py new file mode 100644 index 00000000..e781f360 --- /dev/null +++ b/scripts/mobiles/talus/genetically_enhanced_kahmurra.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('genetically_enhanced_kahmurra') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.2) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(50) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(30) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(35) + mobileTemplate.setSocialGroup("kahmurra") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kahmurra.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('genetically_enhanced_kahmurra', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/giant_decay_mite_guardian.py b/scripts/mobiles/talus/giant_decay_mite_guardian.py new file mode 100644 index 00000000..ec5b3ae5 --- /dev/null +++ b/scripts/mobiles/talus/giant_decay_mite_guardian.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_decay_mite_royal_guardian') + mobileTemplate.setLevel(19) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.5) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(22) + mobileTemplate.setSocialGroup("decay mite") + mobileTemplate.setAssistRange(4) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_decay_mite_guardian', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/giant_decay_mite_harvester.py b/scripts/mobiles/talus/giant_decay_mite_harvester.py new file mode 100644 index 00000000..08398ace --- /dev/null +++ b/scripts/mobiles/talus/giant_decay_mite_harvester.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_decay_mite_harvester') + mobileTemplate.setLevel(10) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.5) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(12) + mobileTemplate.setSocialGroup("decay mite") + mobileTemplate.setAssistRange(4) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_decay_mite_harvester', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/giant_decay_mite_hatchling.py b/scripts/mobiles/talus/giant_decay_mite_hatchling.py new file mode 100644 index 00000000..c241a112 --- /dev/null +++ b/scripts/mobiles/talus/giant_decay_mite_hatchling.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_decay_mite_hatchling') + mobileTemplate.setLevel(2) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setSocialGroup("decay mite") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_decay_mite_hatchling', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/giant_decay_mite_protector.py b/scripts/mobiles/talus/giant_decay_mite_protector.py new file mode 100644 index 00000000..bf2251f9 --- /dev/null +++ b/scripts/mobiles/talus/giant_decay_mite_protector.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_decay_mite_protector') + mobileTemplate.setLevel(13) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.5) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(16) + mobileTemplate.setSocialGroup("decay mite") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_decay_mite_protector', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/giant_decay_mite_queen.py b/scripts/mobiles/talus/giant_decay_mite_queen.py new file mode 100644 index 00000000..bcfc1eb8 --- /dev/null +++ b/scripts/mobiles/talus/giant_decay_mite_queen.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_decay_mite_queen') + mobileTemplate.setLevel(20) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.5) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(28) + mobileTemplate.setSocialGroup("decay mite") + mobileTemplate.setAssistRange(4) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_decay_mite_queen', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/giant_decay_mite_sentry.py b/scripts/mobiles/talus/giant_decay_mite_sentry.py new file mode 100644 index 00000000..1b923bb7 --- /dev/null +++ b/scripts/mobiles/talus/giant_decay_mite_sentry.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_decay_mite_sentry') + mobileTemplate.setLevel(16) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.3) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(15) + mobileTemplate.setSocialGroup("decay mite") + mobileTemplate.setAssistRange(4) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_decay_mite_sentry', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/giant_decay_mite_soldier.py b/scripts/mobiles/talus/giant_decay_mite_soldier.py new file mode 100644 index 00000000..ce47f694 --- /dev/null +++ b/scripts/mobiles/talus/giant_decay_mite_soldier.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_decay_mite_soldier') + mobileTemplate.setLevel(15) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.5) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(18) + mobileTemplate.setSocialGroup("decay mite") + mobileTemplate.setAssistRange(4) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_decay_mite_soldier', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/giant_fynock.py b/scripts/mobiles/talus/giant_fynock.py new file mode 100644 index 00000000..c3ef33c3 --- /dev/null +++ b/scripts/mobiles/talus/giant_fynock.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_fynock') + mobileTemplate.setLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.2) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(70) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(50) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(55) + mobileTemplate.setSocialGroup("fynock") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_fynock_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_fynock', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/giga_flite_rasp.py b/scripts/mobiles/talus/giga_flite_rasp.py new file mode 100644 index 00000000..560de228 --- /dev/null +++ b/scripts/mobiles/talus/giga_flite_rasp.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('giga_flite_rasp') + mobileTemplate.setLevel(39) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(20) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(6) + mobileTemplate.setSocialGroup("rasp") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_flite_rasp.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giga_flite_rasp', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/glutted_fynock_queen.py b/scripts/mobiles/talus/glutted_fynock_queen.py new file mode 100644 index 00000000..895f6752 --- /dev/null +++ b/scripts/mobiles/talus/glutted_fynock_queen.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('glutted_fynock_queen') + mobileTemplate.setLevel(14) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.2) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(30) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(25) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(20) + mobileTemplate.setSocialGroup("fynock") + mobileTemplate.setAssistRange(4) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_fynock_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('glutted_fynock_queen', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/greater_sludge_panther.py b/scripts/mobiles/talus/greater_sludge_panther.py new file mode 100644 index 00000000..e5d630b5 --- /dev/null +++ b/scripts/mobiles/talus/greater_sludge_panther.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('greater_sludge_panther') + mobileTemplate.setLevel(49) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(80) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(70) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(70) + mobileTemplate.setSocialGroup("sludge panther") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_sludge_panther.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('greater_sludge_panther', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/guf_drolg.py b/scripts/mobiles/talus/guf_drolg.py new file mode 100644 index 00000000..76b23e53 --- /dev/null +++ b/scripts/mobiles/talus/guf_drolg.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('guf_drolg') + mobileTemplate.setLevel(42) + mobileTemplate.setMinLevel(42) + mobileTemplate.setMaxLevel(43) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Reptile Meat") + mobileTemplate.setMeatAmount(350) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(275) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(200) + mobileTemplate.setSocialGroup("guf drolg") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_guf_drolg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('guf_drolg', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/guf_drolg_female.py b/scripts/mobiles/talus/guf_drolg_female.py new file mode 100644 index 00000000..98512850 --- /dev/null +++ b/scripts/mobiles/talus/guf_drolg_female.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('guf_drolg_female') + mobileTemplate.setLevel(43) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.9) + mobileTemplate.setMeatType("Reptile Meat") + mobileTemplate.setMeatAmount(325) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(265) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(190) + mobileTemplate.setSocialGroup("guf drolg") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + + templates = Vector() + templates.add('object/mobile/shared_guf_drolg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('guf_drolg_female', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/hilltop_kima.py b/scripts/mobiles/talus/hilltop_kima.py new file mode 100644 index 00000000..896a9d51 --- /dev/null +++ b/scripts/mobiles/talus/hilltop_kima.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('hillto_kima') + mobileTemplate.setLevel(47) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(87) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(10) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(8) + mobileTemplate.setSocialGroup("kima") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_kima.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('hilltop_kima', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/hirsch_sif.py b/scripts/mobiles/talus/hirsch_sif.py new file mode 100644 index 00000000..a5d1f65a --- /dev/null +++ b/scripts/mobiles/talus/hirsch_sif.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('hirsch_sif') + mobileTemplate.setLevel(57) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("sif") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_hirsch_sif.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('hirsch_sif', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/huf_dun.py b/scripts/mobiles/talus/huf_dun.py new file mode 100644 index 00000000..0e91cbbd --- /dev/null +++ b/scripts/mobiles/talus/huf_dun.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('huf_dun') + mobileTemplate.setLevel(47) + mobileTemplate.setMinLevel(47) + mobileTemplate.setMaxLevel(49) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(1350) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(1600) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(1350) + mobileTemplate.setSocialGroup("huf dun") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_huf_dun.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('huf_dun', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/huf_dun_bull.py b/scripts/mobiles/talus/huf_dun_bull.py new file mode 100644 index 00000000..b3fb8aa9 --- /dev/null +++ b/scripts/mobiles/talus/huf_dun_bull.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('huf_dun_bull') + mobileTemplate.setLevel(48) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(1350) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(1600) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(1350) + mobileTemplate.setSocialGroup("huf dun") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_huf_dun.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('huf_dun_bull', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/hunter_talus.py b/scripts/mobiles/talus/hunter_talus.py new file mode 100644 index 00000000..6f77507c --- /dev/null +++ b/scripts/mobiles/talus/hunter_talus.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('hunter_talus') + mobileTemplate.setLevel(17) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("talus poachers") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_forest_hunter.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('hunter_talus', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/jungle_fynock.py b/scripts/mobiles/talus/jungle_fynock.py new file mode 100644 index 00000000..0e36c4a6 --- /dev/null +++ b/scripts/mobiles/talus/jungle_fynock.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('jungle_fynock') + mobileTemplate.setLevel(42) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(28) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(18) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(15) + mobileTemplate.setSocialGroup("fynock") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_fynock.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('jungle_fynock', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/kahmurra_blanca.py b/scripts/mobiles/talus/kahmurra_blanca.py new file mode 100644 index 00000000..478dd7d7 --- /dev/null +++ b/scripts/mobiles/talus/kahmurra_blanca.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('murra_blanca') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("kahmurra") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kahmurra.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kahmurra_blanca', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/kima.py b/scripts/mobiles/talus/kima.py new file mode 100644 index 00000000..5cfcc206 --- /dev/null +++ b/scripts/mobiles/talus/kima.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kima') + mobileTemplate.setLevel(45) + mobileTemplate.setMinLevel(45) + mobileTemplate.setMaxLevel(47) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(7) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(8) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(7) + mobileTemplate.setSocialGroup("kima") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_kima.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kima', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/liberation_activist.py b/scripts/mobiles/talus/liberation_activist.py new file mode 100644 index 00000000..664aadc7 --- /dev/null +++ b/scripts/mobiles/talus/liberation_activist.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('liberation_activist') + mobileTemplate.setLevel(47) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("liberation party") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_liberation_activist_rodian_female_01.iff') + templates.add('object/mobile/shared_dressed_liberation_activist_rodian_male_01.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + + core.spawnService.addMobileTemplate('liberation_activist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/liberation_fanatic.py b/scripts/mobiles/talus/liberation_fanatic.py new file mode 100644 index 00000000..80ebd70b --- /dev/null +++ b/scripts/mobiles/talus/liberation_fanatic.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('liberation_fanatic') + mobileTemplate.setLevel(45) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("liberation party") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_liberation_fanatic_bith_female_01.iff') + templates.add('object/mobile/shared_dressed_liberation_fanatic_bith_male_01.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('liberation_fanatic', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/liberation_loyalist.py b/scripts/mobiles/talus/liberation_loyalist.py new file mode 100644 index 00000000..3de1461b --- /dev/null +++ b/scripts/mobiles/talus/liberation_loyalist.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('liberation_loyalist') + mobileTemplate.setLevel(36) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("liberation party") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_liberation_loyalist_bith_female_01.iff') + templates.add('object/mobile/shared_dressed_liberation_loyalist_bith_male_01.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('liberation_loyalist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/liberation_partisan.py b/scripts/mobiles/talus/liberation_partisan.py new file mode 100644 index 00000000..4443693d --- /dev/null +++ b/scripts/mobiles/talus/liberation_partisan.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('liberation_partisan') + mobileTemplate.setLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("liberation party") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_liberation_partisan_rodian_female_01.iff') + templates.add('object/mobile/shared_dressed_liberation_partisan_rodian_male_01.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('liberation_partisan', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/liberation_patriot.py b/scripts/mobiles/talus/liberation_patriot.py new file mode 100644 index 00000000..c8ae95c2 --- /dev/null +++ b/scripts/mobiles/talus/liberation_patriot.py @@ -0,0 +1,47 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('liberation_patriot') + mobileTemplate.setLevel(43) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("liberation party") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_liberation_patriot_rodian_female_01.iff') + templates.add('object/mobile/shared_dressed_liberation_patriot_rodian_male_01.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + + core.spawnService.addMobileTemplate('liberation_patriot', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/liberation_reactionist.py b/scripts/mobiles/talus/liberation_reactionist.py new file mode 100644 index 00000000..b641fd2a --- /dev/null +++ b/scripts/mobiles/talus/liberation_reactionist.py @@ -0,0 +1,46 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('liberation_reactionist') + mobileTemplate.setLevel(46) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("liberation party") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_liberation_reactionist_human_female_01.iff') + templates.add('object/mobile/shared_dressed_liberation_reactionist_human_male_01.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('liberation_reactionist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/liberation_volunteer.py b/scripts/mobiles/talus/liberation_volunteer.py new file mode 100644 index 00000000..bb3a712e --- /dev/null +++ b/scripts/mobiles/talus/liberation_volunteer.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('liberation_volunteer') + mobileTemplate.setLevel(34) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("liberation party") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_liberation_volunteer_rodian_female_01.iff') + templates.add('object/mobile/shared_dressed_liberation_volunteer_rodian_male_01.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('liberation_volunteer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/lost_aqualish_bomber.py b/scripts/mobiles/talus/lost_aqualish_bomber.py new file mode 100644 index 00000000..d3562aeb --- /dev/null +++ b/scripts/mobiles/talus/lost_aqualish_bomber.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('lost_aqualish_bomber') + mobileTemplate.setLevel(43) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("lost aqualish") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_lost_aqualish_bomber_male_01.iff') + templates.add('object/mobile/shared_dressed_lost_aqualish_bomber_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + + core.spawnService.addMobileTemplate('lost_aqualish_bomber', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/lost_aqualish_captain.py b/scripts/mobiles/talus/lost_aqualish_captain.py new file mode 100644 index 00000000..751ff668 --- /dev/null +++ b/scripts/mobiles/talus/lost_aqualish_captain.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('lost_aqualish_captain') + mobileTemplate.setLevel(47) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("lost aqualish") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_lost_aqualish_captain_male_01.iff') + templates.add('object/mobile/shared_dressed_lost_aqualish_captain_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('lost_aqualish_captain', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/lost_aqualish_commando.py b/scripts/mobiles/talus/lost_aqualish_commando.py new file mode 100644 index 00000000..c94c9933 --- /dev/null +++ b/scripts/mobiles/talus/lost_aqualish_commando.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('lost_aqualish_commando') + mobileTemplate.setLevel(43) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("lost aqualish") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_lost_aqualish_commando_male_01.iff') + templates.add('object/mobile/shared_dressed_lost_aqualish_commando_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('lost_aqualish_commando', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/lost_aqualish_infiltrator.py b/scripts/mobiles/talus/lost_aqualish_infiltrator.py new file mode 100644 index 00000000..c2427bea --- /dev/null +++ b/scripts/mobiles/talus/lost_aqualish_infiltrator.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('lost_aqualish_infiltrator') + mobileTemplate.setLevel(45) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("lost aqualish") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_lost_aqualish_infiltrator_male_01.iff') + templates.add('object/mobile/shared_dressed_lost_aqualish_infiltrator_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_d18.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('lost_aqualish_infiltrator', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/lost_aqualish_lookout.py b/scripts/mobiles/talus/lost_aqualish_lookout.py new file mode 100644 index 00000000..2ab06718 --- /dev/null +++ b/scripts/mobiles/talus/lost_aqualish_lookout.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('lost_aqualish_lookout.py') + mobileTemplate.setLevel(37) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("lost aqualish") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_lost_aqualish_lookout_male_01.iff') + templates.add('object/mobile/shared_dressed_lost_aqualish_lookout_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('lost_aqualish_lookout', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/lost_aqualish_marksman.py b/scripts/mobiles/talus/lost_aqualish_marksman.py new file mode 100644 index 00000000..db516f0c --- /dev/null +++ b/scripts/mobiles/talus/lost_aqualish_marksman.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('lost_aqualish_marksman') + mobileTemplate.setLevel(43) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("lost aqualish") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_lost_aqualish_marksman_male_01.iff') + templates.add('object/mobile/shared_dressed_lost_aqualish_marksman_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_t21.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('lost_aqualish_marksman', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/lost_aqualish_marshal.py b/scripts/mobiles/talus/lost_aqualish_marshal.py new file mode 100644 index 00000000..7c4972f8 --- /dev/null +++ b/scripts/mobiles/talus/lost_aqualish_marshal.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('lost_aqualish_marshal') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("lost aqualish") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_lost_aqualish_marshal_male_01.iff') + templates.add('object/mobile/shared_dressed_lost_aqualish_marshal_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('lost_aqualish_marshal', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/lost_aqualish_outrider.py b/scripts/mobiles/talus/lost_aqualish_outrider.py new file mode 100644 index 00000000..50dd24cc --- /dev/null +++ b/scripts/mobiles/talus/lost_aqualish_outrider.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('lost_aqualish_outrider') + mobileTemplate.setLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("lost aqualish") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_lost_aqualish_outrider_male_01.iff') + templates.add('object/mobile/shared_dressed_lost_aqualish_outrider_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_t21.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('lost_aqualish_outrider', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/lost_aqualish_scout.py b/scripts/mobiles/talus/lost_aqualish_scout.py new file mode 100644 index 00000000..24058ce1 --- /dev/null +++ b/scripts/mobiles/talus/lost_aqualish_scout.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('lost_aqualish_scout') + mobileTemplate.setLevel(36) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("lost aqualish") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_lost_aqualish_scout_male_01.iff') + templates.add('object/mobile/shared_dressed_lost_aqualish_scout_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_t21.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('lost_aqualish_scout', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/lost_aqualish_soldier.py b/scripts/mobiles/talus/lost_aqualish_soldier.py new file mode 100644 index 00000000..c1012675 --- /dev/null +++ b/scripts/mobiles/talus/lost_aqualish_soldier.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('lost_aqualish_soldier') + mobileTemplate.setLevel(39) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("lost aqualish") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_lost_aqualish_soldier_male_01.iff') + templates.add('object/mobile/shared_dressed_lost_aqualish_soldier_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('lost_aqualish_soldier', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/lost_aqualish_warchief.py b/scripts/mobiles/talus/lost_aqualish_warchief.py new file mode 100644 index 00000000..ef527cdb --- /dev/null +++ b/scripts/mobiles/talus/lost_aqualish_warchief.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('lost_aqualish_warchief') + mobileTemplate.setLevel(52) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("lost aqualish") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_lost_aqualish_warchief_male_01.iff') + templates.add('object/mobile/shared_dressed_lost_aqualish_warchief_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('lost_aqualish_warchief', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/lost_aqualish_warrior.py b/scripts/mobiles/talus/lost_aqualish_warrior.py new file mode 100644 index 00000000..96c477e9 --- /dev/null +++ b/scripts/mobiles/talus/lost_aqualish_warrior.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('lost_aqualish_warrior') + mobileTemplate.setLevel(42) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("lost aqualish") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_lost_aqualish_warrior_male_01.iff') + templates.add('object/mobile/shared_dressed_lost_aqualish_warrior_female_01.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_dh17.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('lost_aqualish_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/male_roba.py b/scripts/mobiles/talus/male_roba.py new file mode 100644 index 00000000..c8ce452a --- /dev/null +++ b/scripts/mobiles/talus/male_roba.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('roba_male') + mobileTemplate.setLevel(43) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(11) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(17) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(12) + mobileTemplate.setSocialGroup("roba") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_roba.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('male_roba', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/meager_tortur.py b/scripts/mobiles/talus/meager_tortur.py new file mode 100644 index 00000000..97522b6e --- /dev/null +++ b/scripts/mobiles/talus/meager_tortur.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('meager_tortur') + mobileTemplate.setLevel(42) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.7) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(650) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(575) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(650) + mobileTemplate.setSocialGroup("tortur") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_torton_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('meager_tortur', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/minor_guf_drolg.py b/scripts/mobiles/talus/minor_guf_drolg.py new file mode 100644 index 00000000..53249014 --- /dev/null +++ b/scripts/mobiles/talus/minor_guf_drolg.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('minor_guf_drolg') + mobileTemplate.setLevel(36) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.7) + mobileTemplate.setMeatType("Reptile Meat") + mobileTemplate.setMeatAmount(300) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(240) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(170) + mobileTemplate.setSocialGroup("guf drolg") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_guf_drolg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('minor_guf_drolg', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/minor_sludge_panther.py b/scripts/mobiles/talus/minor_sludge_panther.py new file mode 100644 index 00000000..29c8761a --- /dev/null +++ b/scripts/mobiles/talus/minor_sludge_panther.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('minor_sludge_panther') + mobileTemplate.setLevel(37) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.7) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(20) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(27) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(27) + mobileTemplate.setSocialGroup("sludge panther") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_sludge_panther.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('minor_sludge_panther', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/mire_marauder.py b/scripts/mobiles/talus/mire_marauder.py new file mode 100644 index 00000000..463aa5b2 --- /dev/null +++ b/scripts/mobiles/talus/mire_marauder.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mire_marauder') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1.1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(150) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(140) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(140) + mobileTemplate.setSocialGroup("sludge panther") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_sludge_panther_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mire_marauder', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/mutated_kahmurra.py b/scripts/mobiles/talus/mutated_kahmurra.py new file mode 100644 index 00000000..7912117f --- /dev/null +++ b/scripts/mobiles/talus/mutated_kahmurra.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mutated_kahmurra') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(50) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(33) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setBoneAmount(37) + mobileTemplate.setSocialGroup("kahmurra") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kahmurra.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mutated_kahmurra', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/oozing_dung_mite_guardian.py b/scripts/mobiles/talus/oozing_dung_mite_guardian.py new file mode 100644 index 00000000..0ec03bea --- /dev/null +++ b/scripts/mobiles/talus/oozing_dung_mite_guardian.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('oozing_dung_royal_guardian') + mobileTemplate.setLevel(16) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(16) + mobileTemplate.setSocialGroup("decay mite") + mobileTemplate.setAssistRange(4) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('oozing_dung_mite_guardian', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/painted_spat.py b/scripts/mobiles/talus/painted_spat.py new file mode 100644 index 00000000..d8bf78eb --- /dev/null +++ b/scripts/mobiles/talus/painted_spat.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('painted_spat') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("carrion spat") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_carrion_spat_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('painted_spat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/percussive_rasp.py b/scripts/mobiles/talus/percussive_rasp.py new file mode 100644 index 00000000..0aaa677b --- /dev/null +++ b/scripts/mobiles/talus/percussive_rasp.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('percussive_rasp') + mobileTemplate.setLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(12) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(5) + mobileTemplate.setSocialGroup("rasp") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_horned_rasp.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('percussive_rasp', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/poacher_talus.py b/scripts/mobiles/talus/poacher_talus.py new file mode 100644 index 00000000..370fcd43 --- /dev/null +++ b/scripts/mobiles/talus/poacher_talus.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('poacher_talus') + mobileTemplate.setLevel(17) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("talus poachers") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_forest_hunter.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/rifle/shared_rifle_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('poacher_talus', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/putrid_decay_mite_hatchling.py b/scripts/mobiles/talus/putrid_decay_mite_hatchling.py new file mode 100644 index 00000000..9f71b865 --- /dev/null +++ b/scripts/mobiles/talus/putrid_decay_mite_hatchling.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('putrid_decay_mite_hatchling') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(12) + mobileTemplate.setSocialGroup("decay mite") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('putrid_decay_mite_hatchling', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/rabid_mutant_kahmurra.py b/scripts/mobiles/talus/rabid_mutant_kahmurra.py new file mode 100644 index 00000000..d91e748a --- /dev/null +++ b/scripts/mobiles/talus/rabid_mutant_kahmurra.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rabid_mutant_kahmurra') + mobileTemplate.setLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(50) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(30) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setBoneAmount(35) + mobileTemplate.setSocialGroup("kahmurra") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kahmurra.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('rabid_mutant_kahmurra', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/ravenous_rasp.py b/scripts/mobiles/talus/ravenous_rasp.py new file mode 100644 index 00000000..fee9afd9 --- /dev/null +++ b/scripts/mobiles/talus/ravenous_rasp.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('ravenous_rasp') + mobileTemplate.setLevel(35) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(45) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(15) + mobileTemplate.setSocialGroup("voracious rasp") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_horned_rasp_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('ravenous_rasp', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/rot_mite.py b/scripts/mobiles/talus/rot_mite.py new file mode 100644 index 00000000..1036d215 --- /dev/null +++ b/scripts/mobiles/talus/rot_mite.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rot_mite') + mobileTemplate.setLevel(39) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.8) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(3) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(2) + mobileTemplate.setSocialGroup("decay mite") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('rot_mite', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/savage_guf_drolg.py b/scripts/mobiles/talus/savage_guf_drolg.py new file mode 100644 index 00000000..e1b69638 --- /dev/null +++ b/scripts/mobiles/talus/savage_guf_drolg.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('savage_guf_drolg') + mobileTemplate.setLevel(43) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Reptile Meat") + mobileTemplate.setMeatAmount(550) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(460) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(320) + mobileTemplate.setSocialGroup("guf drolg") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_guf_drolg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('savage_guf_drolg', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/sickly_decay_mite_queen.py b/scripts/mobiles/talus/sickly_decay_mite_queen.py new file mode 100644 index 00000000..2784087a --- /dev/null +++ b/scripts/mobiles/talus/sickly_decay_mite_queen.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('sickly_decay_mite_queen') + mobileTemplate.setLevel(19) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(15) + mobileTemplate.setSocialGroup("decay mite") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_bark_mite_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('sickly_decay_mite_queen', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/sleemo_delinquent.py b/scripts/mobiles/talus/sleemo_delinquent.py new file mode 100644 index 00000000..387376a7 --- /dev/null +++ b/scripts/mobiles/talus/sleemo_delinquent.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('sleemo_delinquent') + mobileTemplate.setLevel(4) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("sleemo gang") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_talus_sif_mercenary_rodian_01.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('sleemo_delinquent', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/sleemo_hoodlum.py b/scripts/mobiles/talus/sleemo_hoodlum.py new file mode 100644 index 00000000..7f894349 --- /dev/null +++ b/scripts/mobiles/talus/sleemo_hoodlum.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('sleemo_hoodlum') + mobileTemplate.setLevel(2) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("sleemo gang") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_talus_sif_mercenary_rodian_02.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('sleemo_hoodlum', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/sleemo_punk.py b/scripts/mobiles/talus/sleemo_punk.py new file mode 100644 index 00000000..1feddcb4 --- /dev/null +++ b/scripts/mobiles/talus/sleemo_punk.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('sleemo_punk') + mobileTemplate.setLevel(2) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("sleemo gang") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_talus_sif_mercenary_trand_01.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('sleemo_punk', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/sleemo_scamp.py b/scripts/mobiles/talus/sleemo_scamp.py new file mode 100644 index 00000000..326768a3 --- /dev/null +++ b/scripts/mobiles/talus/sleemo_scamp.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('sleemo_scamp') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("sleemo gang") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_talus_sif_mercenary_trand_02.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('sleemo_scamp', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/sleemo_vandal.py b/scripts/mobiles/talus/sleemo_vandal.py new file mode 100644 index 00000000..b57aa58b --- /dev/null +++ b/scripts/mobiles/talus/sleemo_vandal.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('sleemo_vandal') + mobileTemplate.setLevel(7) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("sleemo gang") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_talus_sif_mercenary_rodian_01.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('sleemo_vandal', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/sludge_panther.py b/scripts/mobiles/talus/sludge_panther.py new file mode 100644 index 00000000..5fbf5deb --- /dev/null +++ b/scripts/mobiles/talus/sludge_panther.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('sludge_panther') + mobileTemplate.setLevel(44) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(24) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setBoneType("Mammal Bone") + mobileTemplate.setHideAmount(31) + mobileTemplate.setSocialGroup("sludge panther") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_sludge_panther.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('sludge_panther', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/song_rasp.py b/scripts/mobiles/talus/song_rasp.py new file mode 100644 index 00000000..de0825bb --- /dev/null +++ b/scripts/mobiles/talus/song_rasp.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('song_rasp') + mobileTemplate.setLevel(37) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(10) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(3) + mobileTemplate.setSocialGroup("rasp") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_horned_rasp_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('song_rasp', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/stunted_huf_dun.py b/scripts/mobiles/talus/stunted_huf_dun.py new file mode 100644 index 00000000..a2e1a455 --- /dev/null +++ b/scripts/mobiles/talus/stunted_huf_dun.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stunted_huf_dun') + mobileTemplate.setLevel(36) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.6) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(775) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(800) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(775) + mobileTemplate.setSocialGroup("huf dun") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_huf_dun.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stunted_huf_dun', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/tortur_bull.py b/scripts/mobiles/talus/tortur_bull.py new file mode 100644 index 00000000..db441e94 --- /dev/null +++ b/scripts/mobiles/talus/tortur_bull.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tortur_bull') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(1300) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(1151) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(1301) + mobileTemplate.setSocialGroup("tortur") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_torton_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('tortur_bull', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/trandoshan_sif_02.py b/scripts/mobiles/talus/trandoshan_sif_02.py new file mode 100644 index 00000000..6a347d6e --- /dev/null +++ b/scripts/mobiles/talus/trandoshan_sif_02.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('trandoshan_sif') + mobileTemplate.setLevel(43) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("sif") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_dressed_talus_sif_mercenary_trand_02.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('trandoshan_sif_02', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/vicious_huf_dun.py b/scripts/mobiles/talus/vicious_huf_dun.py new file mode 100644 index 00000000..c45ba93d --- /dev/null +++ b/scripts/mobiles/talus/vicious_huf_dun.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('vicious_huf_dun') + mobileTemplate.setLevel(46) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(850) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(900) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(850) + mobileTemplate.setSocialGroup("huf dun") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_huf_dun.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('vicious_huf_dun', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/voracious_rasp.py b/scripts/mobiles/talus/voracious_rasp.py new file mode 100644 index 00000000..2389c673 --- /dev/null +++ b/scripts/mobiles/talus/voracious_rasp.py @@ -0,0 +1,41 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + mobileTemplate.setCreatureName('voracious_rasp') + mobileTemplate.setLevel(35) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(5) + mobileTemplate.setMaxSpawnDistance(10) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(60) + mobileTemplate.setBoneType("Avian Bone") + mobileTemplate.setHideAmount(25) + mobileTemplate.setSocialGroup("voracious rasp") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_horned_rasp_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('voracious_rasp', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/talus/wolf_kima.py b/scripts/mobiles/talus/wolf_kima.py new file mode 100644 index 00000000..965fdb54 --- /dev/null +++ b/scripts/mobiles/talus/wolf_kima.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('wolf_kima') + mobileTemplate.setLevel(45) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1.2) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(10) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(11) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(10) + mobileTemplate.setSocialGroup("kima") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kima.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('wolf_kima', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/adolescent_krayt_dragon.py b/scripts/mobiles/tatooine/adolescent_krayt_dragon.py index a2e064f2..f40e4860 100644 --- a/scripts/mobiles/tatooine/adolescent_krayt_dragon.py +++ b/scripts/mobiles/tatooine/adolescent_krayt_dragon.py @@ -11,13 +11,13 @@ def addTemplate(core): mobileTemplate.setMinLevel(80) mobileTemplate.setMaxLevel(84) mobileTemplate.setDifficulty(2) - mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackRange(10) mobileTemplate.setAttackSpeed(1.0) mobileTemplate.setWeaponType(6) mobileTemplate.setMinSpawnDistance(4) mobileTemplate.setMaxSpawnDistance(8) mobileTemplate.setDeathblow(True) - mobileTemplate.setScale(0.5) + mobileTemplate.setScale(0.7) mobileTemplate.setMeatType("Carnivore Meat") mobileTemplate.setMeatAmount(1700) mobileTemplate.setHideType("Bristly Hide") @@ -27,6 +27,7 @@ def addTemplate(core): mobileTemplate.setSocialGroup("krayt dragon") mobileTemplate.setAssistRange(6) mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) templates = Vector() diff --git a/scripts/mobiles/tatooine/alkhara_bandit.py b/scripts/mobiles/tatooine/alkhara_bandit.py index 7223a83f..3aaa476e 100644 --- a/scripts/mobiles/tatooine/alkhara_bandit.py +++ b/scripts/mobiles/tatooine/alkhara_bandit.py @@ -33,7 +33,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('alkhara_bandit', mobileTemplate) diff --git a/scripts/mobiles/tatooine/alkhara_bandit_king.py b/scripts/mobiles/tatooine/alkhara_bandit_king.py index 0aee87b6..df9d1855 100644 --- a/scripts/mobiles/tatooine/alkhara_bandit_king.py +++ b/scripts/mobiles/tatooine/alkhara_bandit_king.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('alkhara_bandit_king', mobileTemplate) diff --git a/scripts/mobiles/tatooine/alkhara_champion.py b/scripts/mobiles/tatooine/alkhara_champion.py index 8f6924f3..16d0180f 100644 --- a/scripts/mobiles/tatooine/alkhara_champion.py +++ b/scripts/mobiles/tatooine/alkhara_champion.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('alkhara_bandit_champion', mobileTemplate) diff --git a/scripts/mobiles/tatooine/alkhara_lieutenant.py b/scripts/mobiles/tatooine/alkhara_lieutenant.py index 3bc4bbfc..897bfdaf 100644 --- a/scripts/mobiles/tatooine/alkhara_lieutenant.py +++ b/scripts/mobiles/tatooine/alkhara_lieutenant.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('alkhara_lieutenant', mobileTemplate) diff --git a/scripts/mobiles/tatooine/bd34.py b/scripts/mobiles/tatooine/bd34.py index b5132505..e99b37e7 100644 --- a/scripts/mobiles/tatooine/bd34.py +++ b/scripts/mobiles/tatooine/bd34.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('bd34', mobileTemplate) diff --git a/scripts/mobiles/tatooine/canyon_krayt_dragon.py b/scripts/mobiles/tatooine/canyon_krayt_dragon.py index fa96fdf6..15c2befe 100644 --- a/scripts/mobiles/tatooine/canyon_krayt_dragon.py +++ b/scripts/mobiles/tatooine/canyon_krayt_dragon.py @@ -17,7 +17,7 @@ def addTemplate(core): mobileTemplate.setMinSpawnDistance(4) mobileTemplate.setMaxSpawnDistance(8) mobileTemplate.setDeathblow(True) - mobileTemplate.setScale(0.8) + mobileTemplate.setScale(0.9) mobileTemplate.setMeatType("Carnivore Meat") mobileTemplate.setMeatAmount(1250) mobileTemplate.setHideType("Bristly Hide") diff --git a/scripts/mobiles/tatooine/crimelord.py b/scripts/mobiles/tatooine/crimelord.py index 22dae41d..0f97408d 100644 --- a/scripts/mobiles/tatooine/crimelord.py +++ b/scripts/mobiles/tatooine/crimelord.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('crimelord', mobileTemplate) diff --git a/scripts/mobiles/tatooine/crimelord_1.py b/scripts/mobiles/tatooine/crimelord_1.py index 20042ec7..75e497a7 100644 --- a/scripts/mobiles/tatooine/crimelord_1.py +++ b/scripts/mobiles/tatooine/crimelord_1.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('crimelord_1', mobileTemplate) diff --git a/scripts/mobiles/tatooine/dervish.py b/scripts/mobiles/tatooine/dervish.py index e656a6d3..ebc20f07 100644 --- a/scripts/mobiles/tatooine/dervish.py +++ b/scripts/mobiles/tatooine/dervish.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('dervish', mobileTemplate) diff --git a/scripts/mobiles/tatooine/desert_demon.py b/scripts/mobiles/tatooine/desert_demon.py index 50130bf9..c4017e5d 100644 --- a/scripts/mobiles/tatooine/desert_demon.py +++ b/scripts/mobiles/tatooine/desert_demon.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('desert_demon', mobileTemplate) diff --git a/scripts/mobiles/tatooine/desert_demon_bodyguard.py b/scripts/mobiles/tatooine/desert_demon_bodyguard.py index 181b0d87..ac4c2b7b 100644 --- a/scripts/mobiles/tatooine/desert_demon_bodyguard.py +++ b/scripts/mobiles/tatooine/desert_demon_bodyguard.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('desert_demon_bodyguard', mobileTemplate) diff --git a/scripts/mobiles/tatooine/desert_demon_brawler.py b/scripts/mobiles/tatooine/desert_demon_brawler.py index 2e0084a1..db38bbe7 100644 --- a/scripts/mobiles/tatooine/desert_demon_brawler.py +++ b/scripts/mobiles/tatooine/desert_demon_brawler.py @@ -33,7 +33,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('desert_demon_brawler', mobileTemplate) diff --git a/scripts/mobiles/tatooine/desert_demon_leader.py b/scripts/mobiles/tatooine/desert_demon_leader.py index fee6b29e..3899cf4c 100644 --- a/scripts/mobiles/tatooine/desert_demon_leader.py +++ b/scripts/mobiles/tatooine/desert_demon_leader.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('desert_demon_leader', mobileTemplate) diff --git a/scripts/mobiles/tatooine/desert_demon_marksman.py b/scripts/mobiles/tatooine/desert_demon_marksman.py index 6f1d97f0..c2ef4f15 100644 --- a/scripts/mobiles/tatooine/desert_demon_marksman.py +++ b/scripts/mobiles/tatooine/desert_demon_marksman.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('desert_demon_marksman', mobileTemplate) diff --git a/scripts/mobiles/tatooine/desert_swooper.py b/scripts/mobiles/tatooine/desert_swooper.py index 93521b04..1092efd5 100644 --- a/scripts/mobiles/tatooine/desert_swooper.py +++ b/scripts/mobiles/tatooine/desert_swooper.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('desert_swooper', mobileTemplate) diff --git a/scripts/mobiles/tatooine/desert_swooper_leader.py b/scripts/mobiles/tatooine/desert_swooper_leader.py index 989da38c..14e40754 100644 --- a/scripts/mobiles/tatooine/desert_swooper_leader.py +++ b/scripts/mobiles/tatooine/desert_swooper_leader.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('desert_swooper_leader', mobileTemplate) diff --git a/scripts/mobiles/tatooine/desert_thug.py b/scripts/mobiles/tatooine/desert_thug.py index 419cd737..6bca18ea 100644 --- a/scripts/mobiles/tatooine/desert_thug.py +++ b/scripts/mobiles/tatooine/desert_thug.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('desert_thug', mobileTemplate) diff --git a/scripts/mobiles/tatooine/dune_stalker.py b/scripts/mobiles/tatooine/dune_stalker.py index 398cf4de..420ee983 100644 --- a/scripts/mobiles/tatooine/dune_stalker.py +++ b/scripts/mobiles/tatooine/dune_stalker.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('dune_stalker', mobileTemplate) diff --git a/scripts/mobiles/tatooine/dune_stalker_enforcer.py b/scripts/mobiles/tatooine/dune_stalker_enforcer.py index 12bf84f3..13a28e6b 100644 --- a/scripts/mobiles/tatooine/dune_stalker_enforcer.py +++ b/scripts/mobiles/tatooine/dune_stalker_enforcer.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('dune_stalker_enforcer', mobileTemplate) diff --git a/scripts/mobiles/tatooine/dune_stalker_leader.py b/scripts/mobiles/tatooine/dune_stalker_leader.py index 54b80a22..49752d20 100644 --- a/scripts/mobiles/tatooine/dune_stalker_leader.py +++ b/scripts/mobiles/tatooine/dune_stalker_leader.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('dune_stalker_leader', mobileTemplate) diff --git a/scripts/mobiles/tatooine/dune_stalker_marksman.py b/scripts/mobiles/tatooine/dune_stalker_marksman.py index 388c8e49..7f443685 100644 --- a/scripts/mobiles/tatooine/dune_stalker_marksman.py +++ b/scripts/mobiles/tatooine/dune_stalker_marksman.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('dune_stalker_marksman', mobileTemplate) diff --git a/scripts/mobiles/tatooine/dune_stalker_scavenger.py b/scripts/mobiles/tatooine/dune_stalker_scavenger.py index ed889a0f..e8a77b3f 100644 --- a/scripts/mobiles/tatooine/dune_stalker_scavenger.py +++ b/scripts/mobiles/tatooine/dune_stalker_scavenger.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('dune_stalker_scavenger', mobileTemplate) diff --git a/scripts/mobiles/tatooine/elite_desert_swooper.py b/scripts/mobiles/tatooine/elite_desert_swooper.py index 56a6d9fd..09b3b5d5 100644 --- a/scripts/mobiles/tatooine/elite_desert_swooper.py +++ b/scripts/mobiles/tatooine/elite_desert_swooper.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('desert_swooper_elite', mobileTemplate) diff --git a/scripts/mobiles/tatooine/elite_weequay_zealot.py b/scripts/mobiles/tatooine/elite_weequay_zealot.py index bca78f85..1c5a243a 100644 --- a/scripts/mobiles/tatooine/elite_weequay_zealot.py +++ b/scripts/mobiles/tatooine/elite_weequay_zealot.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('elite_weequay_zealot', mobileTemplate) diff --git a/scripts/mobiles/tatooine/error_prone_battle_droids.py b/scripts/mobiles/tatooine/error_prone_battle_droids.py index ecf70d51..b2a2d497 100644 --- a/scripts/mobiles/tatooine/error_prone_battle_droids.py +++ b/scripts/mobiles/tatooine/error_prone_battle_droids.py @@ -33,7 +33,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('error-prone_battle_droid', mobileTemplate) diff --git a/scripts/mobiles/tatooine/escaped_criminal.py b/scripts/mobiles/tatooine/escaped_criminal.py index f4c1a118..e4667cc6 100644 --- a/scripts/mobiles/tatooine/escaped_criminal.py +++ b/scripts/mobiles/tatooine/escaped_criminal.py @@ -32,7 +32,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('escaped_criminal', mobileTemplate) diff --git a/scripts/mobiles/tatooine/evil_hermit.py b/scripts/mobiles/tatooine/evil_hermit.py index ce47739f..dde628f8 100644 --- a/scripts/mobiles/tatooine/evil_hermit.py +++ b/scripts/mobiles/tatooine/evil_hermit.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('evil_hermit', mobileTemplate) diff --git a/scripts/mobiles/tatooine/evil_nomad.py b/scripts/mobiles/tatooine/evil_nomad.py index b36dfac4..732af0db 100644 --- a/scripts/mobiles/tatooine/evil_nomad.py +++ b/scripts/mobiles/tatooine/evil_nomad.py @@ -32,7 +32,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setDefaultAttack('meleehit') mobileTemplate.setAttacks(attacks) diff --git a/scripts/mobiles/tatooine/evil_settler.py b/scripts/mobiles/tatooine/evil_settler.py index 72fc7890..8a7120ac 100644 --- a/scripts/mobiles/tatooine/evil_settler.py +++ b/scripts/mobiles/tatooine/evil_settler.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('evil_settler', mobileTemplate) diff --git a/scripts/mobiles/tatooine/fighting_romo_vax.py b/scripts/mobiles/tatooine/fighting_romo_vax.py index 40d3322d..010b3d47 100644 --- a/scripts/mobiles/tatooine/fighting_romo_vax.py +++ b/scripts/mobiles/tatooine/fighting_romo_vax.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('fighting_romo_vax', mobileTemplate) diff --git a/scripts/mobiles/tatooine/fugitive.py b/scripts/mobiles/tatooine/fugitive.py index ff784bec..a5050ef5 100644 --- a/scripts/mobiles/tatooine/fugitive.py +++ b/scripts/mobiles/tatooine/fugitive.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('fugitive', mobileTemplate) diff --git a/scripts/mobiles/tatooine/giant_canyon_krayt_dragon.py b/scripts/mobiles/tatooine/giant_canyon_krayt_dragon.py index 3ea26e1c..0a4e8988 100644 --- a/scripts/mobiles/tatooine/giant_canyon_krayt_dragon.py +++ b/scripts/mobiles/tatooine/giant_canyon_krayt_dragon.py @@ -17,7 +17,7 @@ def addTemplate(core): mobileTemplate.setMinSpawnDistance(4) mobileTemplate.setMaxSpawnDistance(8) mobileTemplate.setDeathblow(True) - mobileTemplate.setScale(2.5) + mobileTemplate.setScale(1.1) mobileTemplate.setMeatType("Carnivore Meat") mobileTemplate.setMeatAmount(1500) mobileTemplate.setHideType("Bristly Hide") diff --git a/scripts/mobiles/tatooine/grand_krayt_dragon.py b/scripts/mobiles/tatooine/grand_krayt_dragon.py index f68ebdbf..7abf1f31 100644 --- a/scripts/mobiles/tatooine/grand_krayt_dragon.py +++ b/scripts/mobiles/tatooine/grand_krayt_dragon.py @@ -17,7 +17,7 @@ def addTemplate(core): mobileTemplate.setMinSpawnDistance(4) mobileTemplate.setMaxSpawnDistance(8) mobileTemplate.setDeathblow(True) - mobileTemplate.setScale(2.6) + mobileTemplate.setScale(1.1) mobileTemplate.setMeatType("Carnivore Meat") mobileTemplate.setMeatAmount(1700) mobileTemplate.setHideType("Bristly Hide") diff --git a/scripts/mobiles/tatooine/gunrunner.py b/scripts/mobiles/tatooine/gunrunner.py index 109b312d..14014c16 100644 --- a/scripts/mobiles/tatooine/gunrunner.py +++ b/scripts/mobiles/tatooine/gunrunner.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('gunrunner', mobileTemplate) diff --git a/scripts/mobiles/tatooine/gunrunner1.py b/scripts/mobiles/tatooine/gunrunner1.py index e7118983..ffcb5590 100644 --- a/scripts/mobiles/tatooine/gunrunner1.py +++ b/scripts/mobiles/tatooine/gunrunner1.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('gunrunner_1', mobileTemplate) diff --git a/scripts/mobiles/tatooine/gunrunner2.py b/scripts/mobiles/tatooine/gunrunner2.py index efd08eab..ac555ed7 100644 --- a/scripts/mobiles/tatooine/gunrunner2.py +++ b/scripts/mobiles/tatooine/gunrunner2.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('gunrunner_2', mobileTemplate) diff --git a/scripts/mobiles/tatooine/gunrunner_leader.py b/scripts/mobiles/tatooine/gunrunner_leader.py index ba2347a6..eb408545 100644 --- a/scripts/mobiles/tatooine/gunrunner_leader.py +++ b/scripts/mobiles/tatooine/gunrunner_leader.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('gunrunner_leader', mobileTemplate) diff --git a/scripts/mobiles/tatooine/gunrunner_sentry.py b/scripts/mobiles/tatooine/gunrunner_sentry.py index e157f5ec..55b2aa3e 100644 --- a/scripts/mobiles/tatooine/gunrunner_sentry.py +++ b/scripts/mobiles/tatooine/gunrunner_sentry.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('gunrunner_sentry', mobileTemplate) diff --git a/scripts/mobiles/tatooine/hermit.py b/scripts/mobiles/tatooine/hermit.py index 919beb11..82a5e2b2 100644 --- a/scripts/mobiles/tatooine/hermit.py +++ b/scripts/mobiles/tatooine/hermit.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('hermit', mobileTemplate) diff --git a/scripts/mobiles/tatooine/hutt_assassin.py b/scripts/mobiles/tatooine/hutt_assassin.py index fb3c7e76..b7118080 100644 --- a/scripts/mobiles/tatooine/hutt_assassin.py +++ b/scripts/mobiles/tatooine/hutt_assassin.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('hutt_assassin', mobileTemplate) diff --git a/scripts/mobiles/tatooine/hutt_outcast.py b/scripts/mobiles/tatooine/hutt_outcast.py index e3400022..b43ca11f 100644 --- a/scripts/mobiles/tatooine/hutt_outcast.py +++ b/scripts/mobiles/tatooine/hutt_outcast.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) diff --git a/scripts/mobiles/tatooine/insane_kitonak.py b/scripts/mobiles/tatooine/insane_kitonak.py index 60401027..f6f29cb2 100644 --- a/scripts/mobiles/tatooine/insane_kitonak.py +++ b/scripts/mobiles/tatooine/insane_kitonak.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('insane_kitonak', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jabba_assassin.py b/scripts/mobiles/tatooine/jabba_assassin.py index 56c8f45c..e557fa63 100644 --- a/scripts/mobiles/tatooine/jabba_assassin.py +++ b/scripts/mobiles/tatooine/jabba_assassin.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jabba_assassin', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jabba_compound_guard.py b/scripts/mobiles/tatooine/jabba_compound_guard.py index 27f8ddff..f7814e3a 100644 --- a/scripts/mobiles/tatooine/jabba_compound_guard.py +++ b/scripts/mobiles/tatooine/jabba_compound_guard.py @@ -33,7 +33,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jabba_enforcer', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jabba_enforcer.py b/scripts/mobiles/tatooine/jabba_enforcer.py index d682210b..25de1bd8 100644 --- a/scripts/mobiles/tatooine/jabba_enforcer.py +++ b/scripts/mobiles/tatooine/jabba_enforcer.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jabba_compound_guard', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jabba_henchman.py b/scripts/mobiles/tatooine/jabba_henchman.py index effee0d1..30af355f 100644 --- a/scripts/mobiles/tatooine/jabba_henchman.py +++ b/scripts/mobiles/tatooine/jabba_henchman.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jabba_henchman', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jabba_medic.py b/scripts/mobiles/tatooine/jabba_medic.py index 61bd4959..27cfeed4 100644 --- a/scripts/mobiles/tatooine/jabba_medic.py +++ b/scripts/mobiles/tatooine/jabba_medic.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jabba_medic', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jabba_scout.py b/scripts/mobiles/tatooine/jabba_scout.py index 8daa0e00..8e75d57f 100644 --- a/scripts/mobiles/tatooine/jabba_scout.py +++ b/scripts/mobiles/tatooine/jabba_scout.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jabba_scout', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jabba_swooper.py b/scripts/mobiles/tatooine/jabba_swooper.py index 87316a83..366b7532 100644 --- a/scripts/mobiles/tatooine/jabba_swooper.py +++ b/scripts/mobiles/tatooine/jabba_swooper.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jabba_swooper', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jabba_swooper_leader.py b/scripts/mobiles/tatooine/jabba_swooper_leader.py index 86ce56a6..59b2bb9f 100644 --- a/scripts/mobiles/tatooine/jabba_swooper_leader.py +++ b/scripts/mobiles/tatooine/jabba_swooper_leader.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jabba_swooper_leader', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jabba_thief.py b/scripts/mobiles/tatooine/jabba_thief.py index c01b9cec..9cdb72b7 100644 --- a/scripts/mobiles/tatooine/jabba_thief.py +++ b/scripts/mobiles/tatooine/jabba_thief.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jabba_thief', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jabba_thug.py b/scripts/mobiles/tatooine/jabba_thug.py index ba49be22..ea2539c6 100644 --- a/scripts/mobiles/tatooine/jabba_thug.py +++ b/scripts/mobiles/tatooine/jabba_thug.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jabba_thug', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jawa.py b/scripts/mobiles/tatooine/jawa.py index cf919c06..6734a74e 100644 --- a/scripts/mobiles/tatooine/jawa.py +++ b/scripts/mobiles/tatooine/jawa.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jawa', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jawa_avenger.py b/scripts/mobiles/tatooine/jawa_avenger.py index 5e70ae35..80b927d1 100644 --- a/scripts/mobiles/tatooine/jawa_avenger.py +++ b/scripts/mobiles/tatooine/jawa_avenger.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jawa_avenger', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jawa_engineer.py b/scripts/mobiles/tatooine/jawa_engineer.py index 6680135a..e472853a 100644 --- a/scripts/mobiles/tatooine/jawa_engineer.py +++ b/scripts/mobiles/tatooine/jawa_engineer.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jawa_engineer', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jawa_healer.py b/scripts/mobiles/tatooine/jawa_healer.py index d36f48a0..6f78ce47 100644 --- a/scripts/mobiles/tatooine/jawa_healer.py +++ b/scripts/mobiles/tatooine/jawa_healer.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jawa_healer', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jawa_henchman.py b/scripts/mobiles/tatooine/jawa_henchman.py index c359eced..d7952e6e 100644 --- a/scripts/mobiles/tatooine/jawa_henchman.py +++ b/scripts/mobiles/tatooine/jawa_henchman.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jawa_henchman', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jawa_leader.py b/scripts/mobiles/tatooine/jawa_leader.py index 50f91b24..1a0ff3c3 100644 --- a/scripts/mobiles/tatooine/jawa_leader.py +++ b/scripts/mobiles/tatooine/jawa_leader.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jawa_leader', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jawa_protector.py b/scripts/mobiles/tatooine/jawa_protector.py index c74b9a3a..0986fb2a 100644 --- a/scripts/mobiles/tatooine/jawa_protector.py +++ b/scripts/mobiles/tatooine/jawa_protector.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jawa_smuggler', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jawa_smuggler.py b/scripts/mobiles/tatooine/jawa_smuggler.py index d1ed269c..cd3dde7c 100644 --- a/scripts/mobiles/tatooine/jawa_smuggler.py +++ b/scripts/mobiles/tatooine/jawa_smuggler.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jawa_protector', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jawa_thief.py b/scripts/mobiles/tatooine/jawa_thief.py index 47498aae..3c080e59 100644 --- a/scripts/mobiles/tatooine/jawa_thief.py +++ b/scripts/mobiles/tatooine/jawa_thief.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jawa_thief', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jawa_warlord.py b/scripts/mobiles/tatooine/jawa_warlord.py index 2476d389..71ebb866 100644 --- a/scripts/mobiles/tatooine/jawa_warlord.py +++ b/scripts/mobiles/tatooine/jawa_warlord.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jawa_warlord', mobileTemplate) diff --git a/scripts/mobiles/tatooine/jessk.py b/scripts/mobiles/tatooine/jessk.py index 46aea914..0deff2d1 100644 --- a/scripts/mobiles/tatooine/jessk.py +++ b/scripts/mobiles/tatooine/jessk.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('jessk', mobileTemplate) diff --git a/scripts/mobiles/tatooine/junk_battle_droid.py b/scripts/mobiles/tatooine/junk_battle_droid.py index 45208bbc..27c239c8 100644 --- a/scripts/mobiles/tatooine/junk_battle_droid.py +++ b/scripts/mobiles/tatooine/junk_battle_droid.py @@ -32,7 +32,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('junk_battle_droid', mobileTemplate) diff --git a/scripts/mobiles/tatooine/juvenile_canyon_krayt_dragon.py b/scripts/mobiles/tatooine/juvenile_canyon_krayt_dragon.py index aa72a0be..091361e3 100644 --- a/scripts/mobiles/tatooine/juvenile_canyon_krayt_dragon.py +++ b/scripts/mobiles/tatooine/juvenile_canyon_krayt_dragon.py @@ -11,13 +11,13 @@ def addTemplate(core): mobileTemplate.setMinLevel(78) mobileTemplate.setMaxLevel(83) mobileTemplate.setDifficulty(2) - mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackRange(10) mobileTemplate.setAttackSpeed(1.0) mobileTemplate.setWeaponType(6) mobileTemplate.setMinSpawnDistance(4) mobileTemplate.setMaxSpawnDistance(8) mobileTemplate.setDeathblow(True) - mobileTemplate.setScale(2.6) + mobileTemplate.setScale(0.55) mobileTemplate.setMeatType("Carnivore Meat") mobileTemplate.setMeatAmount(750) mobileTemplate.setHideType("Bristly Hide") diff --git a/scripts/mobiles/tatooine/kleetuz.py b/scripts/mobiles/tatooine/kleetuz.py index e8dd6697..9f1ed5a6 100644 --- a/scripts/mobiles/tatooine/kleetuz.py +++ b/scripts/mobiles/tatooine/kleetuz.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('kleetuz', mobileTemplate) diff --git a/scripts/mobiles/tatooine/krayt_dragon_ancient.py b/scripts/mobiles/tatooine/krayt_dragon_ancient.py index 7b93a5b0..d9e5cb71 100644 --- a/scripts/mobiles/tatooine/krayt_dragon_ancient.py +++ b/scripts/mobiles/tatooine/krayt_dragon_ancient.py @@ -17,7 +17,7 @@ def addTemplate(core): mobileTemplate.setMinSpawnDistance(4) mobileTemplate.setMaxSpawnDistance(8) mobileTemplate.setDeathblow(True) - mobileTemplate.setScale(2.8) + mobileTemplate.setScale(1.33) mobileTemplate.setMeatType("Carnivore Meat") mobileTemplate.setMeatAmount(1700) mobileTemplate.setHideType("Bristly Hide") diff --git a/scripts/mobiles/tatooine/pirate.py b/scripts/mobiles/tatooine/pirate.py index 843c31ee..c3eae120 100644 --- a/scripts/mobiles/tatooine/pirate.py +++ b/scripts/mobiles/tatooine/pirate.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('pirate', mobileTemplate) diff --git a/scripts/mobiles/tatooine/pirate_leader.py b/scripts/mobiles/tatooine/pirate_leader.py index bdcbde3e..e1deb72b 100644 --- a/scripts/mobiles/tatooine/pirate_leader.py +++ b/scripts/mobiles/tatooine/pirate_leader.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('pirate_leader', mobileTemplate) diff --git a/scripts/mobiles/tatooine/plaque_victim.py b/scripts/mobiles/tatooine/plaque_victim.py index ab3288f4..2d51b867 100644 --- a/scripts/mobiles/tatooine/plaque_victim.py +++ b/scripts/mobiles/tatooine/plaque_victim.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('plague_victim', mobileTemplate) diff --git a/scripts/mobiles/tatooine/r3-b57.py b/scripts/mobiles/tatooine/r3-b57.py index 0781f8ca..9474a87e 100644 --- a/scripts/mobiles/tatooine/r3-b57.py +++ b/scripts/mobiles/tatooine/r3-b57.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('r3b57', mobileTemplate) diff --git a/scripts/mobiles/tatooine/ra-316.py b/scripts/mobiles/tatooine/ra-316.py index eb7e6db1..77e5e342 100644 --- a/scripts/mobiles/tatooine/ra-316.py +++ b/scripts/mobiles/tatooine/ra-316.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('ra316', mobileTemplate) diff --git a/scripts/mobiles/tatooine/rodian_clan_captain.py b/scripts/mobiles/tatooine/rodian_clan_captain.py index c0222c25..2a85fa07 100644 --- a/scripts/mobiles/tatooine/rodian_clan_captain.py +++ b/scripts/mobiles/tatooine/rodian_clan_captain.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('rodian_clan_captain', mobileTemplate) diff --git a/scripts/mobiles/tatooine/rodian_clan_medic.py b/scripts/mobiles/tatooine/rodian_clan_medic.py index af8bf5e4..5bedda7a 100644 --- a/scripts/mobiles/tatooine/rodian_clan_medic.py +++ b/scripts/mobiles/tatooine/rodian_clan_medic.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('rodian_clan_medic', mobileTemplate) diff --git a/scripts/mobiles/tatooine/rodian_clan_warchief.py b/scripts/mobiles/tatooine/rodian_clan_warchief.py index 4d65378a..5a67de39 100644 --- a/scripts/mobiles/tatooine/rodian_clan_warchief.py +++ b/scripts/mobiles/tatooine/rodian_clan_warchief.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('rodian_clan_warchief', mobileTemplate) diff --git a/scripts/mobiles/tatooine/rodian_gladiator.py b/scripts/mobiles/tatooine/rodian_gladiator.py index 80061aaa..fbe56f69 100644 --- a/scripts/mobiles/tatooine/rodian_gladiator.py +++ b/scripts/mobiles/tatooine/rodian_gladiator.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('rodian_gladiator', mobileTemplate) diff --git a/scripts/mobiles/tatooine/sandcrawler_crewman.py b/scripts/mobiles/tatooine/sandcrawler_crewman.py index c498f075..f333f314 100644 --- a/scripts/mobiles/tatooine/sandcrawler_crewman.py +++ b/scripts/mobiles/tatooine/sandcrawler_crewman.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('sandcrawler_crewman', mobileTemplate) diff --git a/scripts/mobiles/tatooine/scavenger.py b/scripts/mobiles/tatooine/scavenger.py index 4c71b7f9..de275efe 100644 --- a/scripts/mobiles/tatooine/scavenger.py +++ b/scripts/mobiles/tatooine/scavenger.py @@ -32,7 +32,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('scavenger', mobileTemplate) diff --git a/scripts/mobiles/tatooine/sennex_guard.py b/scripts/mobiles/tatooine/sennex_guard.py index bfd1cf5a..f0cdf1d8 100644 --- a/scripts/mobiles/tatooine/sennex_guard.py +++ b/scripts/mobiles/tatooine/sennex_guard.py @@ -42,7 +42,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('sennex_guard', mobileTemplate) diff --git a/scripts/mobiles/tatooine/sennex_hunter.py b/scripts/mobiles/tatooine/sennex_hunter.py index 1cfb2ff9..4f9afcc2 100644 --- a/scripts/mobiles/tatooine/sennex_hunter.py +++ b/scripts/mobiles/tatooine/sennex_hunter.py @@ -42,7 +42,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('sennex_hunter', mobileTemplate) diff --git a/scripts/mobiles/tatooine/sennex_lookout.py b/scripts/mobiles/tatooine/sennex_lookout.py index 46fb6d4d..b04e0b35 100644 --- a/scripts/mobiles/tatooine/sennex_lookout.py +++ b/scripts/mobiles/tatooine/sennex_lookout.py @@ -42,7 +42,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('sennex_lookout', mobileTemplate) diff --git a/scripts/mobiles/tatooine/sennex_slavemaster.py b/scripts/mobiles/tatooine/sennex_slavemaster.py index 1e1bce16..a89d44f6 100644 --- a/scripts/mobiles/tatooine/sennex_slavemaster.py +++ b/scripts/mobiles/tatooine/sennex_slavemaster.py @@ -42,7 +42,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('sennex_slaver', mobileTemplate) diff --git a/scripts/mobiles/tatooine/sennex_slaver.py b/scripts/mobiles/tatooine/sennex_slaver.py index 20ae5fc2..fb8fe181 100644 --- a/scripts/mobiles/tatooine/sennex_slaver.py +++ b/scripts/mobiles/tatooine/sennex_slaver.py @@ -42,7 +42,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('sennex_slavemaster', mobileTemplate) diff --git a/scripts/mobiles/tatooine/sennex_warder.py b/scripts/mobiles/tatooine/sennex_warder.py index 325abe04..3bc906dc 100644 --- a/scripts/mobiles/tatooine/sennex_warder.py +++ b/scripts/mobiles/tatooine/sennex_warder.py @@ -42,7 +42,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('sennex_warder', mobileTemplate) diff --git a/scripts/mobiles/tatooine/shinn_guard.py b/scripts/mobiles/tatooine/shinn_guard.py index 030b499f..c9e1a328 100644 --- a/scripts/mobiles/tatooine/shinn_guard.py +++ b/scripts/mobiles/tatooine/shinn_guard.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('shinn_guard', mobileTemplate) diff --git a/scripts/mobiles/tatooine/shinn_mugger.py b/scripts/mobiles/tatooine/shinn_mugger.py index b4757037..4f67d792 100644 --- a/scripts/mobiles/tatooine/shinn_mugger.py +++ b/scripts/mobiles/tatooine/shinn_mugger.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('shinn_mugger', mobileTemplate) diff --git a/scripts/mobiles/tatooine/swoop_gang_enforcer.py b/scripts/mobiles/tatooine/swoop_gang_enforcer.py index a4b8f9c6..30156fe2 100644 --- a/scripts/mobiles/tatooine/swoop_gang_enforcer.py +++ b/scripts/mobiles/tatooine/swoop_gang_enforcer.py @@ -35,7 +35,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('swoop_gang_enforcer', mobileTemplate) diff --git a/scripts/mobiles/tatooine/swoop_gang_punk.py b/scripts/mobiles/tatooine/swoop_gang_punk.py index 35546ea0..6adb06fd 100644 --- a/scripts/mobiles/tatooine/swoop_gang_punk.py +++ b/scripts/mobiles/tatooine/swoop_gang_punk.py @@ -34,7 +34,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('swoop_gang_punk', mobileTemplate) diff --git a/scripts/mobiles/tatooine/swoop_gang_rogue.py b/scripts/mobiles/tatooine/swoop_gang_rogue.py index cb15bbb8..9d947e14 100644 --- a/scripts/mobiles/tatooine/swoop_gang_rogue.py +++ b/scripts/mobiles/tatooine/swoop_gang_rogue.py @@ -34,7 +34,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('swoop_gang_rogue', mobileTemplate) diff --git a/scripts/mobiles/tatooine/swoop_gang_thug.py b/scripts/mobiles/tatooine/swoop_gang_thug.py index eb0fff4b..cc1a1f5f 100644 --- a/scripts/mobiles/tatooine/swoop_gang_thug.py +++ b/scripts/mobiles/tatooine/swoop_gang_thug.py @@ -34,7 +34,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('swoop_gang_thug', mobileTemplate) diff --git a/scripts/mobiles/tatooine/swooper.py b/scripts/mobiles/tatooine/swooper.py index f93c2dcd..22d2b741 100644 --- a/scripts/mobiles/tatooine/swooper.py +++ b/scripts/mobiles/tatooine/swooper.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('swooper', mobileTemplate) diff --git a/scripts/mobiles/tatooine/trandoshan_slavemaster.py b/scripts/mobiles/tatooine/trandoshan_slavemaster.py index 4a40d6ce..21b4742a 100644 --- a/scripts/mobiles/tatooine/trandoshan_slavemaster.py +++ b/scripts/mobiles/tatooine/trandoshan_slavemaster.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('trandoshan_slavemaster', mobileTemplate) diff --git a/scripts/mobiles/tatooine/trandoshan_slaver.py b/scripts/mobiles/tatooine/trandoshan_slaver.py index ffe95f3e..e00e64e8 100644 --- a/scripts/mobiles/tatooine/trandoshan_slaver.py +++ b/scripts/mobiles/tatooine/trandoshan_slaver.py @@ -36,7 +36,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('trandoshan_slaver', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_avenger.py b/scripts/mobiles/tatooine/tusken_avenger.py index 76b057b1..58d82c85 100644 --- a/scripts/mobiles/tatooine/tusken_avenger.py +++ b/scripts/mobiles/tatooine/tusken_avenger.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_avenger', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_berserker.py b/scripts/mobiles/tatooine/tusken_berserker.py index 065429a4..70e12dc1 100644 --- a/scripts/mobiles/tatooine/tusken_berserker.py +++ b/scripts/mobiles/tatooine/tusken_berserker.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_berserker', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_blood_champion.py b/scripts/mobiles/tatooine/tusken_blood_champion.py index 39a2d86e..704cf031 100644 --- a/scripts/mobiles/tatooine/tusken_blood_champion.py +++ b/scripts/mobiles/tatooine/tusken_blood_champion.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_blood_champion', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_brute.py b/scripts/mobiles/tatooine/tusken_brute.py index a6556ae5..a49c391b 100644 --- a/scripts/mobiles/tatooine/tusken_brute.py +++ b/scripts/mobiles/tatooine/tusken_brute.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_brute', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_captain.py b/scripts/mobiles/tatooine/tusken_captain.py index 5df64ce0..cc510644 100644 --- a/scripts/mobiles/tatooine/tusken_captain.py +++ b/scripts/mobiles/tatooine/tusken_captain.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_chief', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_carnage_champion.py b/scripts/mobiles/tatooine/tusken_carnage_champion.py index 6ae5f705..9b5cb4de 100644 --- a/scripts/mobiles/tatooine/tusken_carnage_champion.py +++ b/scripts/mobiles/tatooine/tusken_carnage_champion.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_carnage_champion', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_chief.py b/scripts/mobiles/tatooine/tusken_chief.py index 42bdd4f0..1b733014 100644 --- a/scripts/mobiles/tatooine/tusken_chief.py +++ b/scripts/mobiles/tatooine/tusken_chief.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_captain', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_commoner.py b/scripts/mobiles/tatooine/tusken_commoner.py index 40d20d49..e15a498d 100644 --- a/scripts/mobiles/tatooine/tusken_commoner.py +++ b/scripts/mobiles/tatooine/tusken_commoner.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_commoner', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_death_hunter.py b/scripts/mobiles/tatooine/tusken_death_hunter.py index 3f840963..4ad7a23e 100644 --- a/scripts/mobiles/tatooine/tusken_death_hunter.py +++ b/scripts/mobiles/tatooine/tusken_death_hunter.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_death_hunter', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_elite_guard.py b/scripts/mobiles/tatooine/tusken_elite_guard.py index 83c20580..7767790a 100644 --- a/scripts/mobiles/tatooine/tusken_elite_guard.py +++ b/scripts/mobiles/tatooine/tusken_elite_guard.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_elite_guard', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_executioner.py b/scripts/mobiles/tatooine/tusken_executioner.py index 7d80beff..8d6a0dee 100644 --- a/scripts/mobiles/tatooine/tusken_executioner.py +++ b/scripts/mobiles/tatooine/tusken_executioner.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_executioner', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_fighter.py b/scripts/mobiles/tatooine/tusken_fighter.py index e19a28f5..34d1a74c 100644 --- a/scripts/mobiles/tatooine/tusken_fighter.py +++ b/scripts/mobiles/tatooine/tusken_fighter.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_fighter', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_flesh_hunter.py b/scripts/mobiles/tatooine/tusken_flesh_hunter.py index efa8eee6..3e58b259 100644 --- a/scripts/mobiles/tatooine/tusken_flesh_hunter.py +++ b/scripts/mobiles/tatooine/tusken_flesh_hunter.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_flesh_hunter', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_follower.py b/scripts/mobiles/tatooine/tusken_follower.py index 487198fb..3271ef2f 100644 --- a/scripts/mobiles/tatooine/tusken_follower.py +++ b/scripts/mobiles/tatooine/tusken_follower.py @@ -33,7 +33,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_follower', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_gore_chief.py b/scripts/mobiles/tatooine/tusken_gore_chief.py index 48d3c8cb..bf77045f 100644 --- a/scripts/mobiles/tatooine/tusken_gore_chief.py +++ b/scripts/mobiles/tatooine/tusken_gore_chief.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_gore_chief', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_guard.py b/scripts/mobiles/tatooine/tusken_guard.py index 6859011c..02c979cb 100644 --- a/scripts/mobiles/tatooine/tusken_guard.py +++ b/scripts/mobiles/tatooine/tusken_guard.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_guard', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_king.py b/scripts/mobiles/tatooine/tusken_king.py index 9d4e3557..68552335 100644 --- a/scripts/mobiles/tatooine/tusken_king.py +++ b/scripts/mobiles/tatooine/tusken_king.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_king', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_observer.py b/scripts/mobiles/tatooine/tusken_observer.py index 88e1ef6e..05d0faca 100644 --- a/scripts/mobiles/tatooine/tusken_observer.py +++ b/scripts/mobiles/tatooine/tusken_observer.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_observer', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_outrider.py b/scripts/mobiles/tatooine/tusken_outrider.py index 5e8c7c6d..ecffd926 100644 --- a/scripts/mobiles/tatooine/tusken_outrider.py +++ b/scripts/mobiles/tatooine/tusken_outrider.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_outrider', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_priest.py b/scripts/mobiles/tatooine/tusken_priest.py index 0efc6c29..cd9dcff5 100644 --- a/scripts/mobiles/tatooine/tusken_priest.py +++ b/scripts/mobiles/tatooine/tusken_priest.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_worshiper', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_raid_champion.py b/scripts/mobiles/tatooine/tusken_raid_champion.py index 70bd928d..e69d711c 100644 --- a/scripts/mobiles/tatooine/tusken_raid_champion.py +++ b/scripts/mobiles/tatooine/tusken_raid_champion.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_champion', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_raid_hunter.py b/scripts/mobiles/tatooine/tusken_raid_hunter.py index 6d7564fc..95dee534 100644 --- a/scripts/mobiles/tatooine/tusken_raid_hunter.py +++ b/scripts/mobiles/tatooine/tusken_raid_hunter.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_raid_hunter', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_raid_leader.py b/scripts/mobiles/tatooine/tusken_raid_leader.py index d072ab05..1d2562bb 100644 --- a/scripts/mobiles/tatooine/tusken_raid_leader.py +++ b/scripts/mobiles/tatooine/tusken_raid_leader.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_raid_leader', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_raider.py b/scripts/mobiles/tatooine/tusken_raider.py index 025d7793..1fab5848 100644 --- a/scripts/mobiles/tatooine/tusken_raider.py +++ b/scripts/mobiles/tatooine/tusken_raider.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_raider', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_raider_soldier.py b/scripts/mobiles/tatooine/tusken_raider_soldier.py index 2de70aed..9d29bd5c 100644 --- a/scripts/mobiles/tatooine/tusken_raider_soldier.py +++ b/scripts/mobiles/tatooine/tusken_raider_soldier.py @@ -33,7 +33,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_soldier', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_raider_warrior.py b/scripts/mobiles/tatooine/tusken_raider_warrior.py index 369dab9e..1da648d3 100644 --- a/scripts/mobiles/tatooine/tusken_raider_warrior.py +++ b/scripts/mobiles/tatooine/tusken_raider_warrior.py @@ -32,7 +32,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_warrior', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_savage.py b/scripts/mobiles/tatooine/tusken_savage.py index b24a9c81..7bd2227c 100644 --- a/scripts/mobiles/tatooine/tusken_savage.py +++ b/scripts/mobiles/tatooine/tusken_savage.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_savage', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_sniper.py b/scripts/mobiles/tatooine/tusken_sniper.py index c8330889..26514d52 100644 --- a/scripts/mobiles/tatooine/tusken_sniper.py +++ b/scripts/mobiles/tatooine/tusken_sniper.py @@ -30,7 +30,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_sniper', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_torture_lord.py b/scripts/mobiles/tatooine/tusken_torture_lord.py index 164e0348..083797b8 100644 --- a/scripts/mobiles/tatooine/tusken_torture_lord.py +++ b/scripts/mobiles/tatooine/tusken_torture_lord.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_torture_lord', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_wanderer.py b/scripts/mobiles/tatooine/tusken_wanderer.py index 9e09de42..f6ead25a 100644 --- a/scripts/mobiles/tatooine/tusken_wanderer.py +++ b/scripts/mobiles/tatooine/tusken_wanderer.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_wanderer', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_warlord.py b/scripts/mobiles/tatooine/tusken_warlord.py index 9e09de42..f6ead25a 100644 --- a/scripts/mobiles/tatooine/tusken_warlord.py +++ b/scripts/mobiles/tatooine/tusken_warlord.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_wanderer', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_witch_doctor.py b/scripts/mobiles/tatooine/tusken_witch_doctor.py index ce7f2dce..fcaf6cf2 100644 --- a/scripts/mobiles/tatooine/tusken_witch_doctor.py +++ b/scripts/mobiles/tatooine/tusken_witch_doctor.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_witch_doctor', mobileTemplate) diff --git a/scripts/mobiles/tatooine/tusken_zealot.py b/scripts/mobiles/tatooine/tusken_zealot.py index 1d5795d7..32548ca0 100644 --- a/scripts/mobiles/tatooine/tusken_zealot.py +++ b/scripts/mobiles/tatooine/tusken_zealot.py @@ -33,7 +33,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('tusken_zealot', mobileTemplate) diff --git a/scripts/mobiles/tatooine/vaigonn_shinn.py b/scripts/mobiles/tatooine/vaigonn_shinn.py index d1cbf3f1..071e5e22 100644 --- a/scripts/mobiles/tatooine/vaigonn_shinn.py +++ b/scripts/mobiles/tatooine/vaigonn_shinn.py @@ -38,7 +38,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('vaigon_shinn', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_assassin.py b/scripts/mobiles/tatooine/valarian_assassin.py index 8bebf555..83abf464 100644 --- a/scripts/mobiles/tatooine/valarian_assassin.py +++ b/scripts/mobiles/tatooine/valarian_assassin.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_assassin', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_compound_guard.py b/scripts/mobiles/tatooine/valarian_compound_guard.py index fc671a3a..c132509b 100644 --- a/scripts/mobiles/tatooine/valarian_compound_guard.py +++ b/scripts/mobiles/tatooine/valarian_compound_guard.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_compound_guard', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_crew_chief.py b/scripts/mobiles/tatooine/valarian_crew_chief.py index 8799d207..ef74a5dc 100644 --- a/scripts/mobiles/tatooine/valarian_crew_chief.py +++ b/scripts/mobiles/tatooine/valarian_crew_chief.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_chief', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_depot_boss.py b/scripts/mobiles/tatooine/valarian_depot_boss.py index 82d6a37e..32701f92 100644 --- a/scripts/mobiles/tatooine/valarian_depot_boss.py +++ b/scripts/mobiles/tatooine/valarian_depot_boss.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_depot_boss', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_depot_foreman.py b/scripts/mobiles/tatooine/valarian_depot_foreman.py index 6550ecca..d1a82dbe 100644 --- a/scripts/mobiles/tatooine/valarian_depot_foreman.py +++ b/scripts/mobiles/tatooine/valarian_depot_foreman.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_depot_foreman', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_depot_guard.py b/scripts/mobiles/tatooine/valarian_depot_guard.py index 4295ea95..659e83da 100644 --- a/scripts/mobiles/tatooine/valarian_depot_guard.py +++ b/scripts/mobiles/tatooine/valarian_depot_guard.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_depot_guard', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_depot_scout.py b/scripts/mobiles/tatooine/valarian_depot_scout.py index 30203204..dfe2c81a 100644 --- a/scripts/mobiles/tatooine/valarian_depot_scout.py +++ b/scripts/mobiles/tatooine/valarian_depot_scout.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_depot_scout', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_depot_swooper.py b/scripts/mobiles/tatooine/valarian_depot_swooper.py index 09fce025..d54842f2 100644 --- a/scripts/mobiles/tatooine/valarian_depot_swooper.py +++ b/scripts/mobiles/tatooine/valarian_depot_swooper.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_depot_swooper', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_depot_worker.py b/scripts/mobiles/tatooine/valarian_depot_worker.py index d1a93038..4a50ff5f 100644 --- a/scripts/mobiles/tatooine/valarian_depot_worker.py +++ b/scripts/mobiles/tatooine/valarian_depot_worker.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_depot_worker', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_enforcer.py b/scripts/mobiles/tatooine/valarian_enforcer.py index 669a2d38..e64d4d9b 100644 --- a/scripts/mobiles/tatooine/valarian_enforcer.py +++ b/scripts/mobiles/tatooine/valarian_enforcer.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_enforcer', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_henchman.py b/scripts/mobiles/tatooine/valarian_henchman.py index 702baea1..4351ac14 100644 --- a/scripts/mobiles/tatooine/valarian_henchman.py +++ b/scripts/mobiles/tatooine/valarian_henchman.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setDefaultAttack('rangedShot') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_henchman', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_mechanic.py b/scripts/mobiles/tatooine/valarian_mechanic.py index dab683bd..8a4eeacb 100644 --- a/scripts/mobiles/tatooine/valarian_mechanic.py +++ b/scripts/mobiles/tatooine/valarian_mechanic.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_mechanic', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_pod_racer.py b/scripts/mobiles/tatooine/valarian_pod_racer.py index c5aa9b3b..d7424b22 100644 --- a/scripts/mobiles/tatooine/valarian_pod_racer.py +++ b/scripts/mobiles/tatooine/valarian_pod_racer.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_pod_racer', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_scout.py b/scripts/mobiles/tatooine/valarian_scout.py index 46e76cc5..c7f1add6 100644 --- a/scripts/mobiles/tatooine/valarian_scout.py +++ b/scripts/mobiles/tatooine/valarian_scout.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_scout', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_shuttle_guard.py b/scripts/mobiles/tatooine/valarian_shuttle_guard.py index 6fbdf7cc..d62435c3 100644 --- a/scripts/mobiles/tatooine/valarian_shuttle_guard.py +++ b/scripts/mobiles/tatooine/valarian_shuttle_guard.py @@ -33,7 +33,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_shuttle_guard', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_swooper.py b/scripts/mobiles/tatooine/valarian_swooper.py index 373e60ec..bdb0d623 100644 --- a/scripts/mobiles/tatooine/valarian_swooper.py +++ b/scripts/mobiles/tatooine/valarian_swooper.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_swooper_leader', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_swooper_leader.py b/scripts/mobiles/tatooine/valarian_swooper_leader.py index e1b43c7c..56537037 100644 --- a/scripts/mobiles/tatooine/valarian_swooper_leader.py +++ b/scripts/mobiles/tatooine/valarian_swooper_leader.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_swooper', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_thief.py b/scripts/mobiles/tatooine/valarian_thief.py index feac01b1..7e30bf8a 100644 --- a/scripts/mobiles/tatooine/valarian_thief.py +++ b/scripts/mobiles/tatooine/valarian_thief.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_thief', mobileTemplate) diff --git a/scripts/mobiles/tatooine/valarian_thug.py b/scripts/mobiles/tatooine/valarian_thug.py index 3f679719..04ce215c 100644 --- a/scripts/mobiles/tatooine/valarian_thug.py +++ b/scripts/mobiles/tatooine/valarian_thug.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('valarian_thug', mobileTemplate) diff --git a/scripts/mobiles/tatooine/white_thranta_manager.py b/scripts/mobiles/tatooine/white_thranta_manager.py index 3f5d2fd1..f57bf0ca 100644 --- a/scripts/mobiles/tatooine/white_thranta_manager.py +++ b/scripts/mobiles/tatooine/white_thranta_manager.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('white_thranta_manager', mobileTemplate) diff --git a/scripts/mobiles/tatooine/white_thranta_security_captain.py b/scripts/mobiles/tatooine/white_thranta_security_captain.py index 668a897b..4d419c61 100644 --- a/scripts/mobiles/tatooine/white_thranta_security_captain.py +++ b/scripts/mobiles/tatooine/white_thranta_security_captain.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('white_thranta_security_captain', mobileTemplate) diff --git a/scripts/mobiles/tatooine/white_thranta_security_elite.py b/scripts/mobiles/tatooine/white_thranta_security_elite.py index 47499e11..db035c10 100644 --- a/scripts/mobiles/tatooine/white_thranta_security_elite.py +++ b/scripts/mobiles/tatooine/white_thranta_security_elite.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('white_thranta_security_elite', mobileTemplate) diff --git a/scripts/mobiles/tatooine/white_thranta_security_guard.py b/scripts/mobiles/tatooine/white_thranta_security_guard.py index e5959c69..f652ece2 100644 --- a/scripts/mobiles/tatooine/white_thranta_security_guard.py +++ b/scripts/mobiles/tatooine/white_thranta_security_guard.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('white_thranta_security_guard', mobileTemplate) diff --git a/scripts/mobiles/tatooine/white_thranta_security_officer.py b/scripts/mobiles/tatooine/white_thranta_security_officer.py index b3ac3677..ce9f6a30 100644 --- a/scripts/mobiles/tatooine/white_thranta_security_officer.py +++ b/scripts/mobiles/tatooine/white_thranta_security_officer.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotrifle') + mobileTemplate.setDefaultAttack('rangedShotrifle') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('white_thranta_security_officer', mobileTemplate) diff --git a/scripts/mobiles/tatooine/white_thranta_specialist.py b/scripts/mobiles/tatooine/white_thranta_specialist.py index 1a945909..8754ae56 100644 --- a/scripts/mobiles/tatooine/white_thranta_specialist.py +++ b/scripts/mobiles/tatooine/white_thranta_specialist.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('white_thranta_specialist', mobileTemplate) diff --git a/scripts/mobiles/tatooine/white_thranta_technican.py b/scripts/mobiles/tatooine/white_thranta_technican.py index bc9a2673..c8542f36 100644 --- a/scripts/mobiles/tatooine/white_thranta_technican.py +++ b/scripts/mobiles/tatooine/white_thranta_technican.py @@ -31,7 +31,7 @@ def addTemplate(core): mobileTemplate.setWeaponTemplateVector(weaponTemplates) attacks = Vector() - mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setDefaultAttack('rangedShotpistol') mobileTemplate.setAttacks(attacks) core.spawnService.addMobileTemplate('white_thranta_technican', mobileTemplate) diff --git a/scripts/mobiles/yavin4/ancient_mamien.py b/scripts/mobiles/yavin4/ancient_mamien.py new file mode 100644 index 00000000..dbf12dec --- /dev/null +++ b/scripts/mobiles/yavin4/ancient_mamien.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mamien_ancient') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(20) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(20) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(20) + mobileTemplate.setSocialGroup("mamien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_mamien.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('ancient_mamien', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/angler.py b/scripts/mobiles/yavin4/angler.py new file mode 100644 index 00000000..c0cfb19a --- /dev/null +++ b/scripts/mobiles/yavin4/angler.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('angler') + mobileTemplate.setLevel(72) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(4) + mobileTemplate.setSocialGroup("angler") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_angler.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('angler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/angler_bone.py b/scripts/mobiles/yavin4/angler_bone.py new file mode 100644 index 00000000..e98a684d --- /dev/null +++ b/scripts/mobiles/yavin4/angler_bone.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('angler_bone') + mobileTemplate.setLevel(68) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(4) + mobileTemplate.setSocialGroup("angler") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_angler.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bone_angler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/angler_hatchling.py b/scripts/mobiles/yavin4/angler_hatchling.py new file mode 100644 index 00000000..1f3a1933 --- /dev/null +++ b/scripts/mobiles/yavin4/angler_hatchling.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('angler_hatchling') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(2) + mobileTemplate.setSocialGroup("angler") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_angler.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('angler_hatchling', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/angler_recluse.py b/scripts/mobiles/yavin4/angler_recluse.py new file mode 100644 index 00000000..a3ed054a --- /dev/null +++ b/scripts/mobiles/yavin4/angler_recluse.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('angler_hatchling') + mobileTemplate.setLevel(73) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(2) + mobileTemplate.setSocialGroup("angler") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_angler.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('angler_recluse', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/blood_fanged_gackle_bat.py b/scripts/mobiles/yavin4/blood_fanged_gackle_bat.py new file mode 100644 index 00000000..0c0f21c9 --- /dev/null +++ b/scripts/mobiles/yavin4/blood_fanged_gackle_bat.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bloodfanged_gackle_bat') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(9) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(9) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(9) + mobileTemplate.setSocialGroup("gacklebat") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_gackle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('blood_fanged_gackle_bat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/choku.py b/scripts/mobiles/yavin4/choku.py new file mode 100644 index 00000000..59f319d7 --- /dev/null +++ b/scripts/mobiles/yavin4/choku.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('choku') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(10) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(8) + mobileTemplate.setSocialGroup("choku") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_choku.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('choku', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/choku_female.py b/scripts/mobiles/yavin4/choku_female.py new file mode 100644 index 00000000..93581639 --- /dev/null +++ b/scripts/mobiles/yavin4/choku_female.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('choku_female') + mobileTemplate.setLevel(69) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(10) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(8) + mobileTemplate.setSocialGroup("choku") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_choku.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('choku_female', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/choku_hunter.py b/scripts/mobiles/yavin4/choku_hunter.py new file mode 100644 index 00000000..5ed02d64 --- /dev/null +++ b/scripts/mobiles/yavin4/choku_hunter.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('choku_hunter') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(10) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(8) + mobileTemplate.setSocialGroup("choku") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_choku.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('choku_hunter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/choku_male.py b/scripts/mobiles/yavin4/choku_male.py new file mode 100644 index 00000000..2b70e07c --- /dev/null +++ b/scripts/mobiles/yavin4/choku_male.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('choku_male') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(10) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(8) + mobileTemplate.setSocialGroup("choku") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_choku.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('choku_male', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/choku_packmaster.py b/scripts/mobiles/yavin4/choku_packmaster.py new file mode 100644 index 00000000..039bc66e --- /dev/null +++ b/scripts/mobiles/yavin4/choku_packmaster.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('choku_packmaster') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(10) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(8) + mobileTemplate.setSocialGroup("choku") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_choku.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('choku_packmaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/choku_pup.py b/scripts/mobiles/yavin4/choku_pup.py new file mode 100644 index 00000000..8bed76a0 --- /dev/null +++ b/scripts/mobiles/yavin4/choku_pup.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('choku_pup') + mobileTemplate.setLevel(68) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.5) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(7) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(5) + mobileTemplate.setSocialGroup("choku") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_choku.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('choku_pup', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/crystal_snake.py b/scripts/mobiles/yavin4/crystal_snake.py new file mode 100644 index 00000000..a58c453c --- /dev/null +++ b/scripts/mobiles/yavin4/crystal_snake.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crystal_snake') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(2) + mobileTemplate.setSocialGroup("crystal snake") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_crystal_snake.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('crystal_snake', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/elder_mamien.py b/scripts/mobiles/yavin4/elder_mamien.py new file mode 100644 index 00000000..963482e0 --- /dev/null +++ b/scripts/mobiles/yavin4/elder_mamien.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mamien_elder') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(35) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(40) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(45) + mobileTemplate.setSocialGroup("mamien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_mamien.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('eler_mamien', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/enraged_tybis.py b/scripts/mobiles/yavin4/enraged_tybis.py new file mode 100644 index 00000000..3f2841f6 --- /dev/null +++ b/scripts/mobiles/yavin4/enraged_tybis.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('enraged_tybis') + mobileTemplate.setLevel(75) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(220) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(160) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(105) + mobileTemplate.setSocialGroup("tybis") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_tybis.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('enraged_tybis', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/female_mamien.py b/scripts/mobiles/yavin4/female_mamien.py new file mode 100644 index 00000000..6e04a67f --- /dev/null +++ b/scripts/mobiles/yavin4/female_mamien.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mamien_female') + mobileTemplate.setLevel(67) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(45) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(20) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(20) + mobileTemplate.setSocialGroup("mamien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_mamien.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('female_mamien', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/female_mawgax.py b/scripts/mobiles/yavin4/female_mawgax.py new file mode 100644 index 00000000..9c003136 --- /dev/null +++ b/scripts/mobiles/yavin4/female_mawgax.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mawgax_female') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Domesticated Meat") + mobileTemplate.setMeatAmount(115) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(72) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(52) + mobileTemplate.setSocialGroup("mawgax") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_mawgax.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('female_mawgax', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/female_tybis.py b/scripts/mobiles/yavin4/female_tybis.py new file mode 100644 index 00000000..0100a516 --- /dev/null +++ b/scripts/mobiles/yavin4/female_tybis.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tybis_female') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(220) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(160) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(105) + mobileTemplate.setSocialGroup("tybis") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_tybis.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('female_tybis', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/feral_mutant_gackle_stalker.py b/scripts/mobiles/yavin4/feral_mutant_gackle_stalker.py new file mode 100644 index 00000000..2f74e14d --- /dev/null +++ b/scripts/mobiles/yavin4/feral_mutant_gackle_stalker.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('feral_mutant_gackle_stalker') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(9) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(9) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(9) + mobileTemplate.setSocialGroup("gacklebat") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_gackle_bat_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('feral_mutant_gackle_stalker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/frenzied_choku.py b/scripts/mobiles/yavin4/frenzied_choku.py new file mode 100644 index 00000000..5cc27ba3 --- /dev/null +++ b/scripts/mobiles/yavin4/frenzied_choku.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('frenzied_choku') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(10) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(8) + mobileTemplate.setSocialGroup("choku") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_choku.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('frenzied_choku', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/gackle_bat.py b/scripts/mobiles/yavin4/gackle_bat.py new file mode 100644 index 00000000..16723014 --- /dev/null +++ b/scripts/mobiles/yavin4/gackle_bat.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gackle_bat') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(4) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(2) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(3) + mobileTemplate.setSocialGroup("gacklebat") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_gackle_bat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gackle_bat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/gackle_bat_hunter.py b/scripts/mobiles/yavin4/gackle_bat_hunter.py new file mode 100644 index 00000000..444ac1c2 --- /dev/null +++ b/scripts/mobiles/yavin4/gackle_bat_hunter.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gackle_bat_hunter') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(4) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(2) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(3) + mobileTemplate.setSocialGroup("gacklebat") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_gackle_bat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gackle_bat_hunter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/gackle_bat_mymidon_lord.py b/scripts/mobiles/yavin4/gackle_bat_mymidon_lord.py new file mode 100644 index 00000000..8d9fd29d --- /dev/null +++ b/scripts/mobiles/yavin4/gackle_bat_mymidon_lord.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gackle_bat_myrmidon_lord') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(10) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(10) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(10) + mobileTemplate.setSocialGroup("gacklebat") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_giant_gackle_bat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gackle_bat_myrmidon_lord', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/geonosian_bunker/enhanced_gaping_spider.py b/scripts/mobiles/yavin4/geonosian_bunker/enhanced_gaping_spider.py new file mode 100644 index 00000000..387b4ca9 --- /dev/null +++ b/scripts/mobiles/yavin4/geonosian_bunker/enhanced_gaping_spider.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('geonosian_gaping_spider_fire') + mobileTemplate.setLevel(88) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(50) + mobileTemplate.setSocialGroup("geonosian bunker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_gaping_spider_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/base/shared_creature_base.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('enhanced_gaping_spider', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/geonosian_bunker/enhanced_kliknik.py b/scripts/mobiles/yavin4/geonosian_bunker/enhanced_kliknik.py new file mode 100644 index 00000000..1ad10dbc --- /dev/null +++ b/scripts/mobiles/yavin4/geonosian_bunker/enhanced_kliknik.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('geonosian_kliknik_force_strong') + mobileTemplate.setLevel(89) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(45) + mobileTemplate.setHideType("Scaley Meat") + mobileTemplate.setHideAmount(40) + mobileTemplate.setSocialGroup("geonosian bunker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kliknik_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/base/shared_creature_base.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('enhanced_kliknik', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/geonosian_bunker/enhanced_kwi.py b/scripts/mobiles/yavin4/geonosian_bunker/enhanced_kwi.py new file mode 100644 index 00000000..6cc6a288 --- /dev/null +++ b/scripts/mobiles/yavin4/geonosian_bunker/enhanced_kwi.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('geonosian_enhanced_kwi') + mobileTemplate.setLevel(88) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(100) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(85) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(75) + mobileTemplate.setSocialGroup("geonosian bunker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kwi_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('enhanced_kwi', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/geonosian_bunker/geonosian_acklay_bunker_boss.py b/scripts/mobiles/yavin4/geonosian_bunker/geonosian_acklay_bunker_boss.py new file mode 100644 index 00000000..ff94ddd2 --- /dev/null +++ b/scripts/mobiles/yavin4/geonosian_bunker/geonosian_acklay_bunker_boss.py @@ -0,0 +1,38 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('geonosian_acklay_bunker_boss') + mobileTemplate.setLevel(93) + mobileTemplate.setDifficulty(2) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("geonosian bunker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_acklay.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/base/shared_base_weapon_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('geonosian_acklay_bunker_boss', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/geonosian_bunker/geonosian_crazed_guard.py b/scripts/mobiles/yavin4/geonosian_bunker/geonosian_crazed_guard.py new file mode 100644 index 00000000..ad8cf4b6 --- /dev/null +++ b/scripts/mobiles/yavin4/geonosian_bunker/geonosian_crazed_guard.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('geonosian_crazed_guard') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("geonosian bunker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_geonosian_warrior_01.iff') + templates.add('object/mobile/shared_dressed_geonosian_warrior_02.iff') + templates.add('object/mobile/shared_dressed_geonosian_warrior_03.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_geo_generic.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('geonosian_crazed_guard', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/geonosian_bunker/geonosian_droideka_crazed.py b/scripts/mobiles/yavin4/geonosian_bunker/geonosian_droideka_crazed.py new file mode 100644 index 00000000..4523dcce --- /dev/null +++ b/scripts/mobiles/yavin4/geonosian_bunker/geonosian_droideka_crazed.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('geonosian_droideka_crazed') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("geonosian bunker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_droideka.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/droid/shared_droid_droideka_ranged.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('geonosian_droideka_crazed', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/geonosian_bunker/geonosian_scientist.py b/scripts/mobiles/yavin4/geonosian_bunker/geonosian_scientist.py new file mode 100644 index 00000000..c0d13cf4 --- /dev/null +++ b/scripts/mobiles/yavin4/geonosian_bunker/geonosian_scientist.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('geonosian_scientist') + mobileTemplate.setLevel(86) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("geonosian bunker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_geonosian_scientist_01.iff') + templates.add('object/mobile/shared_dressed_geonosian_scientist_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_geonosian_sonic_blaster_loot.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('geonosian_scientist', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/geonosian_bunker/geonosian_technical_assistant.py b/scripts/mobiles/yavin4/geonosian_bunker/geonosian_technical_assistant.py new file mode 100644 index 00000000..1acef5cf --- /dev/null +++ b/scripts/mobiles/yavin4/geonosian_bunker/geonosian_technical_assistant.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('geonosian_tech_assistant') + mobileTemplate.setLevel(86) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("geonosian bunker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_geonosian_warrior_01.iff') + templates.add('object/mobile/shared_dressed_geonosian_warrior_02.iff') + templates.add('object/mobile/shared_dressed_geonosian_warrior_03.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_geonosian_sonic_blaster_loot.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshotpistol') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('geonosian_technical_assistant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/geonosian_bunker/geonosian_worker.py b/scripts/mobiles/yavin4/geonosian_bunker/geonosian_worker.py new file mode 100644 index 00000000..5f12658a --- /dev/null +++ b/scripts/mobiles/yavin4/geonosian_bunker/geonosian_worker.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('geonosian_worker') + mobileTemplate.setLevel(85) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("geonosian bunker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_geonosian_commoner_01.iff') + templates.add('object/mobile/shared_dressed_geonosian_commoner_02.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_geo_generic.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('geonosian_worker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/geonosian_bunker/imperial_observer.py b/scripts/mobiles/yavin4/geonosian_bunker/imperial_observer.py new file mode 100644 index 00000000..1e294dd2 --- /dev/null +++ b/scripts/mobiles/yavin4/geonosian_bunker/imperial_observer.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('eow_geonosian_imperial_observer') + mobileTemplate.setLevel(88) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("geonosian bunker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_imperial_officer_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('imperial_observer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/geonosian_bunker/mercenary_sentry.py b/scripts/mobiles/yavin4/geonosian_bunker/mercenary_sentry.py new file mode 100644 index 00000000..91861738 --- /dev/null +++ b/scripts/mobiles/yavin4/geonosian_bunker/mercenary_sentry.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('eow_geonosian_human_security_force') + mobileTemplate.setLevel(88) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("geonosian bunker") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_mercenary_elite_hum_f.iff') + templates.add('object/mobile/shared_dressed_mercenary_elite_hum_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('mercenary_sentry', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/giant_angler.py b/scripts/mobiles/yavin4/giant_angler.py new file mode 100644 index 00000000..dce8ae78 --- /dev/null +++ b/scripts/mobiles/yavin4/giant_angler.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_angler') + mobileTemplate.setLevel(73) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(3) + mobileTemplate.setSocialGroup("angler") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_giant_angler.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_angler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/giant_crystal_snake.py b/scripts/mobiles/yavin4/giant_crystal_snake.py new file mode 100644 index 00000000..d0b81980 --- /dev/null +++ b/scripts/mobiles/yavin4/giant_crystal_snake.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_crystal_snake') + mobileTemplate.setLevel(68) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(7) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setSocialGroup("crystal snake") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_giant_crystal_snake.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_crystal_snake', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/giant_gackle_bat.py b/scripts/mobiles/yavin4/giant_gackle_bat.py new file mode 100644 index 00000000..70440ef9 --- /dev/null +++ b/scripts/mobiles/yavin4/giant_gackle_bat.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_gackle_bat') + mobileTemplate.setLevel(68) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(7) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(5) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(6) + mobileTemplate.setSocialGroup("gacklebat") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_giant_gackle_bat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_gackle_bat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/giant_mawgax.py b/scripts/mobiles/yavin4/giant_mawgax.py new file mode 100644 index 00000000..f07ab6b9 --- /dev/null +++ b/scripts/mobiles/yavin4/giant_mawgax.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_mawgax') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Domesticated Meat") + mobileTemplate.setMeatAmount(135) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(85) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(70) + mobileTemplate.setSocialGroup("mawgax") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_giant_mawgax.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_mawgax', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/giant_spined_puc.py b/scripts/mobiles/yavin4/giant_spined_puc.py new file mode 100644 index 00000000..024bb1f1 --- /dev/null +++ b/scripts/mobiles/yavin4/giant_spined_puc.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_spined_puc') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Reptile Meat") + mobileTemplate.setMeatAmount(7) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(7) + mobileTemplate.setSocialGroup("spined puc") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_giant_spined_puc.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_spined_puc', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/giant_stintaril.py b/scripts/mobiles/yavin4/giant_stintaril.py new file mode 100644 index 00000000..502629e0 --- /dev/null +++ b/scripts/mobiles/yavin4/giant_stintaril.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_stintaril') + mobileTemplate.setLevel(63) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(9) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(7) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(6) + mobileTemplate.setSocialGroup("stintaril") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_giant_stintaril.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_stintaril', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/giant_tanc_mite.py b/scripts/mobiles/yavin4/giant_tanc_mite.py new file mode 100644 index 00000000..9091d6ed --- /dev/null +++ b/scripts/mobiles/yavin4/giant_tanc_mite.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('giant_tanc_mite') + mobileTemplate.setLevel(68) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(6) + mobileTemplate.setSocialGroup("tancmite") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_giant_tanc_mite.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('giant_tanc_mite', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/hooded_crystal_snake.py b/scripts/mobiles/yavin4/hooded_crystal_snake.py new file mode 100644 index 00000000..069f1cf3 --- /dev/null +++ b/scripts/mobiles/yavin4/hooded_crystal_snake.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('crystal_snake_hooded') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(2) + mobileTemplate.setSocialGroup("crystal snake") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_crystal_snake.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('hooded_crystal_snake', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/hutt_expeditionary_force_leader.py b/scripts/mobiles/yavin4/hutt_expeditionary_force_leader.py new file mode 100644 index 00000000..7210b145 --- /dev/null +++ b/scripts/mobiles/yavin4/hutt_expeditionary_force_leader.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('hutt_expedition_force_leader') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("hutt") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_hutt_expedition_force_leader.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('hutt_expeditionary_force_leader', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/hutt_expeditionary_force_member.py b/scripts/mobiles/yavin4/hutt_expeditionary_force_member.py new file mode 100644 index 00000000..d8f0dd31 --- /dev/null +++ b/scripts/mobiles/yavin4/hutt_expeditionary_force_member.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('hutt_expedition_force_member') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("hutt") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_hutt_expedition_force_member.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('hutt_expeditionary_force_member', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/hutt_expeditionary_force_surveyor.py b/scripts/mobiles/yavin4/hutt_expeditionary_force_surveyor.py new file mode 100644 index 00000000..27a5ce1b --- /dev/null +++ b/scripts/mobiles/yavin4/hutt_expeditionary_force_surveyor.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('hutt_expedition_force_surveyor') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("hutt") + mobileTemplate.setAssistRange(6) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_hutt_medic1_zabrak_female_01..iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('hutt_expeditionary_force_sureyor', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/kai_tok_bloodreaver.py b/scripts/mobiles/yavin4/kai_tok_bloodreaver.py new file mode 100644 index 00000000..4d849b6d --- /dev/null +++ b/scripts/mobiles/yavin4/kai_tok_bloodreaver.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kai_tok_bloodreaver') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(41) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(46) + mobileTemplate.setSocialGroup("kai tok") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kai_tok.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kai_tok_bloodreaver', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/kai_tok_prowler.py b/scripts/mobiles/yavin4/kai_tok_prowler.py new file mode 100644 index 00000000..c6b42cc1 --- /dev/null +++ b/scripts/mobiles/yavin4/kai_tok_prowler.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kai_tok_prowler') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(41) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(46) + mobileTemplate.setSocialGroup("kai tok") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kai_tok.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kai_tok_prowler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/kai_tok_scavenger.py b/scripts/mobiles/yavin4/kai_tok_scavenger.py new file mode 100644 index 00000000..f434d75c --- /dev/null +++ b/scripts/mobiles/yavin4/kai_tok_scavenger.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kai_tok_scavenger') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(41) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(46) + mobileTemplate.setSocialGroup("kai tok") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kai_tok.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kai_tok_scavenger', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/kai_tok_slayer.py b/scripts/mobiles/yavin4/kai_tok_slayer.py new file mode 100644 index 00000000..3453be75 --- /dev/null +++ b/scripts/mobiles/yavin4/kai_tok_slayer.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kai_tok_slayer') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(41) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(46) + mobileTemplate.setSocialGroup("kai tok") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kai_tok.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kai_tok_slayer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/kliknik.py b/scripts/mobiles/yavin4/kliknik.py new file mode 100644 index 00000000..2e377321 --- /dev/null +++ b/scripts/mobiles/yavin4/kliknik.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kliknik') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setSocialGroup("kliknik") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kliknik.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kliknik', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/kliknik_dark_defender.py b/scripts/mobiles/yavin4/kliknik_dark_defender.py new file mode 100644 index 00000000..cb9101f7 --- /dev/null +++ b/scripts/mobiles/yavin4/kliknik_dark_defender.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kliknik_dark_defender') + mobileTemplate.setLevel(74) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setSocialGroup("kliknik") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kliknik.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kliknik_dark_defender', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/kliknik_dark_hunter.py b/scripts/mobiles/yavin4/kliknik_dark_hunter.py new file mode 100644 index 00000000..106e16fe --- /dev/null +++ b/scripts/mobiles/yavin4/kliknik_dark_hunter.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kliknik_dark_hunter') + mobileTemplate.setLevel(74) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(6) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setSocialGroup("kliknik") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kliknik.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kliknik_dark_hunter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/kliknik_dark_queen.py b/scripts/mobiles/yavin4/kliknik_dark_queen.py new file mode 100644 index 00000000..03178fca --- /dev/null +++ b/scripts/mobiles/yavin4/kliknik_dark_queen.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kliknik_dark_queen') + mobileTemplate.setLevel(75) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(7) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setSocialGroup("kliknik") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kliknik_queen.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kliknik_dark_queen', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/kliknik_dark_warrior.py b/scripts/mobiles/yavin4/kliknik_dark_warrior.py new file mode 100644 index 00000000..5611a22f --- /dev/null +++ b/scripts/mobiles/yavin4/kliknik_dark_warrior.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kliknik_dark_warrior') + mobileTemplate.setLevel(74) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(6) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setSocialGroup("kliknik") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kliknik.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kliknik_dark_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/kliknik_hatchling.py b/scripts/mobiles/yavin4/kliknik_hatchling.py new file mode 100644 index 00000000..769bfd71 --- /dev/null +++ b/scripts/mobiles/yavin4/kliknik_hatchling.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kliknik_hatchling') + mobileTemplate.setLevel(73) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(1) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setSocialGroup("kliknik") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_kliknik_hatchling.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kliknik_hatchling', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/kliknik_hunter.py b/scripts/mobiles/yavin4/kliknik_hunter.py new file mode 100644 index 00000000..1a67f5da --- /dev/null +++ b/scripts/mobiles/yavin4/kliknik_hunter.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kliknik_hunter') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(6) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setSocialGroup("kliknik") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kliknik.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kliknik_hunter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/kliknik_mantis.py b/scripts/mobiles/yavin4/kliknik_mantis.py new file mode 100644 index 00000000..80057620 --- /dev/null +++ b/scripts/mobiles/yavin4/kliknik_mantis.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kliknik_mantis') + mobileTemplate.setLevel(74) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setSocialGroup("kliknik") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kliknik.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kliknik_mantis', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/kliknik_queen.py b/scripts/mobiles/yavin4/kliknik_queen.py new file mode 100644 index 00000000..7d716284 --- /dev/null +++ b/scripts/mobiles/yavin4/kliknik_queen.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kliknik_queen') + mobileTemplate.setLevel(80) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(7) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setSocialGroup("kliknik") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kliknik_queen.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kliknik_queen', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/kliknik_queen_harvester.py b/scripts/mobiles/yavin4/kliknik_queen_harvester.py new file mode 100644 index 00000000..69b61823 --- /dev/null +++ b/scripts/mobiles/yavin4/kliknik_queen_harvester.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kliknik_queen_harvester') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(15) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setSocialGroup("kliknik") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kliknik.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kliknik_queen_harvester', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/kliknik_scout.py b/scripts/mobiles/yavin4/kliknik_scout.py new file mode 100644 index 00000000..1b473e00 --- /dev/null +++ b/scripts/mobiles/yavin4/kliknik_scout.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kliknik_scout') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(6) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setSocialGroup("kliknik") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kliknik_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kliknik_scout', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/kliknik_shredder_guardian.py b/scripts/mobiles/yavin4/kliknik_shredder_guardian.py new file mode 100644 index 00000000..9b2ee777 --- /dev/null +++ b/scripts/mobiles/yavin4/kliknik_shredder_guardian.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kliknik_shredder_guardian') + mobileTemplate.setLevel(73) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(15) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setSocialGroup("kliknik") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kliknik_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kliknik_shredder_guardian', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/kliknik_warrior.py b/scripts/mobiles/yavin4/kliknik_warrior.py new file mode 100644 index 00000000..76065513 --- /dev/null +++ b/scripts/mobiles/yavin4/kliknik_warrior.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kliknik_warrior') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(6) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setSocialGroup("kliknik") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kliknik.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kliknik_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/kliknik_worker.py b/scripts/mobiles/yavin4/kliknik_worker.py new file mode 100644 index 00000000..f8539994 --- /dev/null +++ b/scripts/mobiles/yavin4/kliknik_worker.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kliknik_worker') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(6) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setSocialGroup("kliknik") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_kliknik_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kliknik_worker', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/lurking_angler.py b/scripts/mobiles/yavin4/lurking_angler.py new file mode 100644 index 00000000..2f35e65b --- /dev/null +++ b/scripts/mobiles/yavin4/lurking_angler.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('lurking_angler') + mobileTemplate.setLevel(67) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(4) + mobileTemplate.setSocialGroup("angler") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_angler_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('lurking_angler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/mad_angler.py b/scripts/mobiles/yavin4/mad_angler.py new file mode 100644 index 00000000..0e2517a1 --- /dev/null +++ b/scripts/mobiles/yavin4/mad_angler.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mad_angler') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(3) + mobileTemplate.setSocialGroup("angler") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_angler_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mad_angler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/majestic_whisper_bird.py b/scripts/mobiles/yavin4/majestic_whisper_bird.py new file mode 100644 index 00000000..caf2f682 --- /dev/null +++ b/scripts/mobiles/yavin4/majestic_whisper_bird.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('whisper_bird_majestic') + mobileTemplate.setLevel(56) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(40) + mobileTemplate.setSocialGroup("whisperbird") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_whisper_bird.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('majestic_whisper_bird', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/male_mamien.py b/scripts/mobiles/yavin4/male_mamien.py new file mode 100644 index 00000000..dbe95a91 --- /dev/null +++ b/scripts/mobiles/yavin4/male_mamien.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mamien_male') + mobileTemplate.setLevel(68) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(45) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(20) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(20) + mobileTemplate.setSocialGroup("mamien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_mamien.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('male_mamien', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/male_mawgax.py b/scripts/mobiles/yavin4/male_mawgax.py new file mode 100644 index 00000000..89608fec --- /dev/null +++ b/scripts/mobiles/yavin4/male_mawgax.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mawgax_male') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Domesticated Meat") + mobileTemplate.setMeatAmount(100) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(70) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(55) + mobileTemplate.setSocialGroup("mawgax") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_mawgax.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('male_mawgax', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/male_tybis.py b/scripts/mobiles/yavin4/male_tybis.py new file mode 100644 index 00000000..5b82b3ce --- /dev/null +++ b/scripts/mobiles/yavin4/male_tybis.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tybis_male') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(275) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(200) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(125) + mobileTemplate.setSocialGroup("tybis") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_tybis.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('male_tybis', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/mamien_junglelord.py b/scripts/mobiles/yavin4/mamien_junglelord.py new file mode 100644 index 00000000..ad610222 --- /dev/null +++ b/scripts/mobiles/yavin4/mamien_junglelord.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mamien_junglelord') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(18) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(18) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(18) + mobileTemplate.setSocialGroup("mamien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_mamien.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mamien_junglelord', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/mamien_matriarch.py b/scripts/mobiles/yavin4/mamien_matriarch.py new file mode 100644 index 00000000..d76a707c --- /dev/null +++ b/scripts/mobiles/yavin4/mamien_matriarch.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mamien_matriarch') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(17) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(20) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(20) + mobileTemplate.setSocialGroup("mamien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_mamien.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mamien_matriarch', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/mamien_youth.py b/scripts/mobiles/yavin4/mamien_youth.py new file mode 100644 index 00000000..c503262c --- /dev/null +++ b/scripts/mobiles/yavin4/mamien_youth.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mamien_youth') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(.7) + mobileTemplate.setMeatType("Wild Meat") + mobileTemplate.setMeatAmount(35) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(20) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(20) + mobileTemplate.setSocialGroup("mamien") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_mamien.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mamien_youth', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/mawgax.py b/scripts/mobiles/yavin4/mawgax.py new file mode 100644 index 00000000..9f4b948c --- /dev/null +++ b/scripts/mobiles/yavin4/mawgax.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bio_engineered_mawgax') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Domesticated Meat") + mobileTemplate.setMeatAmount(100) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(70) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(55) + mobileTemplate.setSocialGroup("mawgax") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_mawgax.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mawgax', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/mawgax_raptor.py b/scripts/mobiles/yavin4/mawgax_raptor.py new file mode 100644 index 00000000..7aebbcfe --- /dev/null +++ b/scripts/mobiles/yavin4/mawgax_raptor.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mawgax_raptor') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Domesticated Meat") + mobileTemplate.setMeatAmount(100) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(70) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(55) + mobileTemplate.setSocialGroup("mawgax") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_mawgax.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mawgax_raptor', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/mawgax_youth.py b/scripts/mobiles/yavin4/mawgax_youth.py new file mode 100644 index 00000000..f4443690 --- /dev/null +++ b/scripts/mobiles/yavin4/mawgax_youth.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mawgax_youth') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Domesticated Meat") + mobileTemplate.setMeatAmount(90) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(60) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(45) + mobileTemplate.setSocialGroup("mawgax") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_mawgax_youth.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mawgax_youth', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/ominous_skreeg.py b/scripts/mobiles/yavin4/ominous_skreeg.py new file mode 100644 index 00000000..78d9ce73 --- /dev/null +++ b/scripts/mobiles/yavin4/ominous_skreeg.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('skreeg_ominous') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(9) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(7) + mobileTemplate.setSocialGroup("skreeg") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_skreeg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('ominous_skreeg', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/poisinous_spined_puc.py b/scripts/mobiles/yavin4/poisinous_spined_puc.py new file mode 100644 index 00000000..d5388f03 --- /dev/null +++ b/scripts/mobiles/yavin4/poisinous_spined_puc.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('spined_puc_poison') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Reptile Meat") + mobileTemplate.setMeatAmount(7) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(7) + mobileTemplate.setSocialGroup("spined puc") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_spined_puc.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('poisinous_spined_puc', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/puny_gackle_bat.py b/scripts/mobiles/yavin4/puny_gackle_bat.py new file mode 100644 index 00000000..f4198003 --- /dev/null +++ b/scripts/mobiles/yavin4/puny_gackle_bat.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('puny_gackle_bat') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(2) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(1) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(1) + mobileTemplate.setSocialGroup("gacklebat") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_puny_gackle_bat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('puny_gackle_bat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/puny_stintaril.py b/scripts/mobiles/yavin4/puny_stintaril.py new file mode 100644 index 00000000..583b4d50 --- /dev/null +++ b/scripts/mobiles/yavin4/puny_stintaril.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('puny_stintaril') + mobileTemplate.setLevel(61) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(2) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(1) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(1) + mobileTemplate.setSocialGroup("stintaril") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_puny_stintaril.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('puny_stintaril', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/puny_tanc_mite.py b/scripts/mobiles/yavin4/puny_tanc_mite.py new file mode 100644 index 00000000..f080440f --- /dev/null +++ b/scripts/mobiles/yavin4/puny_tanc_mite.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('puny_tanc_mite') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(2) + mobileTemplate.setSocialGroup("tancmite") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_puny_tanc_mite.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('puny_tanc_mite', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/ravaging_gackle_bat.py b/scripts/mobiles/yavin4/ravaging_gackle_bat.py new file mode 100644 index 00000000..d8f3f6e6 --- /dev/null +++ b/scripts/mobiles/yavin4/ravaging_gackle_bat.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('ravaging_gackle_bat') + mobileTemplate.setLevel(68) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(3) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(4) + mobileTemplate.setSocialGroup("gacklebat") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_gackle_bat.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('ravaging_gackle_bat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/skreeg_adolescent.py b/scripts/mobiles/yavin4/skreeg_adolescent.py new file mode 100644 index 00000000..f35bbd7b --- /dev/null +++ b/scripts/mobiles/yavin4/skreeg_adolescent.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('skreeg_adolescent') + mobileTemplate.setLevel(59) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(12) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(9) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(7) + mobileTemplate.setSocialGroup("skreeg") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_skreeg_adolescent.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('skreeg_adolescent', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/skreeg_female.py b/scripts/mobiles/yavin4/skreeg_female.py new file mode 100644 index 00000000..e66eeb3b --- /dev/null +++ b/scripts/mobiles/yavin4/skreeg_female.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('skreeg_female') + mobileTemplate.setLevel(65) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(9) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(7) + mobileTemplate.setSocialGroup("skreeg") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_skreeg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('skreeg_female', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/skreeg_gatherer.py b/scripts/mobiles/yavin4/skreeg_gatherer.py new file mode 100644 index 00000000..e5490848 --- /dev/null +++ b/scripts/mobiles/yavin4/skreeg_gatherer.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('skreeg_gatherer') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(18) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(9) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(7) + mobileTemplate.setSocialGroup("skreeg") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_skreeg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('skreeg_gatherer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/skreeg_hunter.py b/scripts/mobiles/yavin4/skreeg_hunter.py new file mode 100644 index 00000000..347c7f8b --- /dev/null +++ b/scripts/mobiles/yavin4/skreeg_hunter.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('skreeg_hunter') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(9) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(7) + mobileTemplate.setSocialGroup("skreeg") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_skreeg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('skreeg_hunter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/skreeg_infant.py b/scripts/mobiles/yavin4/skreeg_infant.py new file mode 100644 index 00000000..2d2097e3 --- /dev/null +++ b/scripts/mobiles/yavin4/skreeg_infant.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('skreeg_infant') + mobileTemplate.setLevel(59) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(15) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(9) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(7) + mobileTemplate.setSocialGroup("skreeg") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_skreeg_infant.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('skreeg_infant', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/skreeg_male.py b/scripts/mobiles/yavin4/skreeg_male.py new file mode 100644 index 00000000..00e62267 --- /dev/null +++ b/scripts/mobiles/yavin4/skreeg_male.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('skreeg_male') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(9) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(7) + mobileTemplate.setSocialGroup("skreeg") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_skreeg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('skreeg_male', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/skreeg_scout.py b/scripts/mobiles/yavin4/skreeg_scout.py new file mode 100644 index 00000000..c25350c3 --- /dev/null +++ b/scripts/mobiles/yavin4/skreeg_scout.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('skreeg_scout') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(9) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(7) + mobileTemplate.setSocialGroup("skreeg") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_skreeg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('skreeg_scout', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/skreeg_warrior.py b/scripts/mobiles/yavin4/skreeg_warrior.py new file mode 100644 index 00000000..52eecddd --- /dev/null +++ b/scripts/mobiles/yavin4/skreeg_warrior.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('skreeg_warrior') + mobileTemplate.setLevel(66) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(9) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(7) + mobileTemplate.setSocialGroup("skreeg") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_skreeg_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('skreeg_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/skreeg_warrior_elite.py b/scripts/mobiles/yavin4/skreeg_warrior_elite.py new file mode 100644 index 00000000..20e92498 --- /dev/null +++ b/scripts/mobiles/yavin4/skreeg_warrior_elite.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('skreeg_warrior_elite') + mobileTemplate.setLevel(67) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(9) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(7) + mobileTemplate.setSocialGroup("skreeg") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_skreeg_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('skreeg_warrior_elite', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/smuggler_member.py b/scripts/mobiles/yavin4/smuggler_member.py new file mode 100644 index 00000000..56b8e91a --- /dev/null +++ b/scripts/mobiles/yavin4/smuggler_member.py @@ -0,0 +1,45 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('yavin_smuggler_member') + mobileTemplate.setLevel(70) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("smuggler") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(128) + + + templates = Vector() + templates.add('object/mobile/shared_dressed_smuggler_trainer_01.iff') + + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('smuggler_member', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/spined_puc.py b/scripts/mobiles/yavin4/spined_puc.py new file mode 100644 index 00000000..5d8c617e --- /dev/null +++ b/scripts/mobiles/yavin4/spined_puc.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('spined_puc') + mobileTemplate.setLevel(69) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Reptile Meat") + mobileTemplate.setMeatAmount(6) + mobileTemplate.setHideType("Leathery Hide") + mobileTemplate.setHideAmount(6) + mobileTemplate.setSocialGroup("spined puc") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_spined_puc.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('spined_puc', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/stintaril.py b/scripts/mobiles/yavin4/stintaril.py new file mode 100644 index 00000000..08ba8a30 --- /dev/null +++ b/scripts/mobiles/yavin4/stintaril.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stintaril') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(3) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("stintaril") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_stintaril.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stintaril', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/stintaril_fleshripper.py b/scripts/mobiles/yavin4/stintaril_fleshripper.py new file mode 100644 index 00000000..b11e6f4f --- /dev/null +++ b/scripts/mobiles/yavin4/stintaril_fleshripper.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stintaril_fleshripper') + mobileTemplate.setLevel(58) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(3) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("stintaril") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_stintaril.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stintaril_fleshripper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/stintaril_prowler.py b/scripts/mobiles/yavin4/stintaril_prowler.py new file mode 100644 index 00000000..9e8e4045 --- /dev/null +++ b/scripts/mobiles/yavin4/stintaril_prowler.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stintaril_prowler') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(3) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("stintaril") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_stintaril_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stintaril_prowler', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/stintaril_ravager.py b/scripts/mobiles/yavin4/stintaril_ravager.py new file mode 100644 index 00000000..7e12fcd9 --- /dev/null +++ b/scripts/mobiles/yavin4/stintaril_ravager.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stintaril_ravager') + mobileTemplate.setLevel(62) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(3) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("stintaril") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_stintaril.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stintaril_ravager', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/stintaril_scavenger.py b/scripts/mobiles/yavin4/stintaril_scavenger.py new file mode 100644 index 00000000..eefd318e --- /dev/null +++ b/scripts/mobiles/yavin4/stintaril_scavenger.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stintaril_scavenger') + mobileTemplate.setLevel(64) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(3) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(2) + mobileTemplate.setSocialGroup("stintaril") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_stintaril.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stintaril_scavenger', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/stranded_imperial_officer.py b/scripts/mobiles/yavin4/stranded_imperial_officer.py new file mode 100644 index 00000000..2da0fdc9 --- /dev/null +++ b/scripts/mobiles/yavin4/stranded_imperial_officer.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stranded_imperial_officer') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stranded_imperial_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stranded_imperial_officer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/stranded_imperial_pilot.py b/scripts/mobiles/yavin4/stranded_imperial_pilot.py new file mode 100644 index 00000000..6553b678 --- /dev/null +++ b/scripts/mobiles/yavin4/stranded_imperial_pilot.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stranded_imperial_pilot') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stranded_imperial_pilot.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stranded_imperial_pilot', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/stranded_imperial_soldier.py b/scripts/mobiles/yavin4/stranded_imperial_soldier.py new file mode 100644 index 00000000..0b5d0275 --- /dev/null +++ b/scripts/mobiles/yavin4/stranded_imperial_soldier.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stranded_imperial_soldier') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("imperial") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("imperial") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stranded_imperial_soldier.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stranded_imperial_soldier', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/stranded_rebel_officer.py b/scripts/mobiles/yavin4/stranded_rebel_officer.py new file mode 100644 index 00000000..b918421d --- /dev/null +++ b/scripts/mobiles/yavin4/stranded_rebel_officer.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stranded_rebel_officer') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("rebel") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("rebel") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stranded_rebel_officer.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stranded_rebel_officer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/stranded_rebel_pilot.py b/scripts/mobiles/yavin4/stranded_rebel_pilot.py new file mode 100644 index 00000000..19875d3b --- /dev/null +++ b/scripts/mobiles/yavin4/stranded_rebel_pilot.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stranded_rebel_pilot') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("rebel") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("rebel") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stranded_rebel_pilot.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stranded_rebel_pilot', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/stranded_rebel_soldier.py b/scripts/mobiles/yavin4/stranded_rebel_soldier.py new file mode 100644 index 00000000..1f1931ba --- /dev/null +++ b/scripts/mobiles/yavin4/stranded_rebel_soldier.py @@ -0,0 +1,39 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stranded_rebel_soldier') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("rebel") + mobileTemplate.setAssistRange(0) + mobileTemplate.setStalker(True) + mobileTemplate.setFaction("rebel") + mobileTemplate.setFactionStatus(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_stranded_rebel_soldier.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedshot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stranded_rebel_soldier', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/stunted_woolamander.py b/scripts/mobiles/yavin4/stunted_woolamander.py new file mode 100644 index 00000000..abb89023 --- /dev/null +++ b/scripts/mobiles/yavin4/stunted_woolamander.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('stunted_woolamander') + mobileTemplate.setLevel(74) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(20) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(20) + mobileTemplate.setSocialGroup("woolamander") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_woolamander.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stunted_woolamander', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/swarming_kliknik.py b/scripts/mobiles/yavin4/swarming_kliknik.py new file mode 100644 index 00000000..23a4a257 --- /dev/null +++ b/scripts/mobiles/yavin4/swarming_kliknik.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kliknik_swarming') + mobileTemplate.setLevel(73) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(12) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Carnivore Meat") + mobileTemplate.setMeatAmount(5) + mobileTemplate.setHideType("Scaley Hide") + mobileTemplate.setHideAmount(4) + mobileTemplate.setSocialGroup("kliknik") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_kliknik_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('swarming_kliknik', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/tanc_mite.py b/scripts/mobiles/yavin4/tanc_mite.py new file mode 100644 index 00000000..b425ff64 --- /dev/null +++ b/scripts/mobiles/yavin4/tanc_mite.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tanc_mite') + mobileTemplate.setLevel(67) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(4) + mobileTemplate.setSocialGroup("tancmite") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_tanc_mite.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('tanc_mite', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/tanc_mite_warrior.py b/scripts/mobiles/yavin4/tanc_mite_warrior.py new file mode 100644 index 00000000..d3467c00 --- /dev/null +++ b/scripts/mobiles/yavin4/tanc_mite_warrior.py @@ -0,0 +1,40 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tanc_mite_warrior') + mobileTemplate.setLevel(71) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Insect Meat") + mobileTemplate.setMeatAmount(6) + mobileTemplate.setSocialGroup("tancmite") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_tanc_mite.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('tanc_mite_warrior', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/tybis.py b/scripts/mobiles/yavin4/tybis.py new file mode 100644 index 00000000..fe8e087d --- /dev/null +++ b/scripts/mobiles/yavin4/tybis.py @@ -0,0 +1,44 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tybis') + mobileTemplate.setLevel(73) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Herbivore Meat") + mobileTemplate.setMeatAmount(275) + mobileTemplate.setHideType("Bristley Hide") + mobileTemplate.setHideAmount(200) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(125) + mobileTemplate.setSocialGroup("tybis") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_tybis.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('tybis', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/whisper_bird_female.py b/scripts/mobiles/yavin4/whisper_bird_female.py new file mode 100644 index 00000000..68a4b863 --- /dev/null +++ b/scripts/mobiles/yavin4/whisper_bird_female.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('whisper_bird_female') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(40) + mobileTemplate.setSocialGroup("whisperbird") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_whisper_bird.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('whisper_bird_female', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/whisper_bird_hatchling.py b/scripts/mobiles/yavin4/whisper_bird_hatchling.py new file mode 100644 index 00000000..1b225cfd --- /dev/null +++ b/scripts/mobiles/yavin4/whisper_bird_hatchling.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('whisper_bird_hatchling') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(55) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(30) + mobileTemplate.setSocialGroup("whisperbird") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_whisper_bird_hatchling.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('whisper_bird_hatchling', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/whisper_bird_male.py b/scripts/mobiles/yavin4/whisper_bird_male.py new file mode 100644 index 00000000..79c59ee9 --- /dev/null +++ b/scripts/mobiles/yavin4/whisper_bird_male.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('whisper_bird_male') + mobileTemplate.setLevel(60) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setMeatType("Avian Meat") + mobileTemplate.setMeatAmount(65) + mobileTemplate.setBoneType("Avian Bones") + mobileTemplate.setBoneAmount(40) + mobileTemplate.setSocialGroup("whisperbird") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_whisper_bird.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('whisper_bird_male', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/woolamander.py b/scripts/mobiles/yavin4/woolamander.py new file mode 100644 index 00000000..68495a12 --- /dev/null +++ b/scripts/mobiles/yavin4/woolamander.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('woolamander') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(20) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(20) + mobileTemplate.setSocialGroup("woolamander") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_woolamander.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('woolamander', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/woolamander_gatherer.py b/scripts/mobiles/yavin4/woolamander_gatherer.py new file mode 100644 index 00000000..15add95a --- /dev/null +++ b/scripts/mobiles/yavin4/woolamander_gatherer.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('woolamander_gatherer') + mobileTemplate.setLevel(76) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(20) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(20) + mobileTemplate.setSocialGroup("woolamander") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(128) + + templates = Vector() + templates.add('object/mobile/shared_woolamander.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('woolamander_gatherer', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/woolamander_harrower.py b/scripts/mobiles/yavin4/woolamander_harrower.py new file mode 100644 index 00000000..55268859 --- /dev/null +++ b/scripts/mobiles/yavin4/woolamander_harrower.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('woolamander_harrower') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(40) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(40) + mobileTemplate.setSocialGroup("woolamander") + mobileTemplate.setAssistRange(40) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_woolamander_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('woolamander_harrower', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/woolamander_harvester.py b/scripts/mobiles/yavin4/woolamander_harvester.py new file mode 100644 index 00000000..d2f50f61 --- /dev/null +++ b/scripts/mobiles/yavin4/woolamander_harvester.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('woolamander_harvester') + mobileTemplate.setLevel(77) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(False) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(20) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(20) + mobileTemplate.setSocialGroup("woolamander") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_woolamander.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('woolamander_harvester', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/woolamander_reaper.py b/scripts/mobiles/yavin4/woolamander_reaper.py new file mode 100644 index 00000000..1fa77bcb --- /dev/null +++ b/scripts/mobiles/yavin4/woolamander_reaper.py @@ -0,0 +1,42 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('woolamander_reaper') + mobileTemplate.setLevel(78) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(6) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setHideType("Wooly Hide") + mobileTemplate.setHideAmount(35) + mobileTemplate.setBoneType("Mammal Bones") + mobileTemplate.setBoneAmount(20) + mobileTemplate.setSocialGroup("woolamander") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(False) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_woolamander_hue.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('woolamander_reaper', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/yavin4/yakasoba.py b/scripts/mobiles/yavin4/yakasoba.py new file mode 100644 index 00000000..1afffb75 --- /dev/null +++ b/scripts/mobiles/yavin4/yakasoba.py @@ -0,0 +1,43 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('yavin_yakasoba') + mobileTemplate.setLevel(68) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setAttackSpeed(1.0) + mobileTemplate.setWeaponType(1) + mobileTemplate.setMinSpawnDistance(4) + mobileTemplate.setMaxSpawnDistance(8) + mobileTemplate.setDeathblow(True) + mobileTemplate.setScale(1) + mobileTemplate.setSocialGroup("gracerobber") + mobileTemplate.setAssistRange(12) + mobileTemplate.setStalker(True) + mobileTemplate.setOptionsBitmask(192) + + templates = Vector() + templates.add('object/mobile/shared_dressed_yavin_yakasoba.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/sword/shared_sword_01.iff', 1, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('meleeHit') + mobileTemplate.setAttacks(attacks) + + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 100 + mobileTemplate.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + + core.spawnService.addMobileTemplate('yakasoba', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/object/mobile/3po_protocol_droid_red.py b/scripts/object/mobile/3po_protocol_droid_red.py index ccad8904..29961558 100644 --- a/scripts/object/mobile/3po_protocol_droid_red.py +++ b/scripts/object/mobile/3po_protocol_droid_red.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('protocol_droid_3po_red') return \ No newline at end of file diff --git a/scripts/object/mobile/barada.py b/scripts/object/mobile/barada.py index ccad8904..b5250e70 100644 --- a/scripts/object/mobile/barada.py +++ b/scripts/object/mobile/barada.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('barada') return \ No newline at end of file diff --git a/scripts/object/mobile/berok_skoff.py b/scripts/object/mobile/berok_skoff.py index ccad8904..20bf2a45 100644 --- a/scripts/object/mobile/berok_skoff.py +++ b/scripts/object/mobile/berok_skoff.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('heroic_tusken_major_berok_skoff') return \ No newline at end of file diff --git a/scripts/object/mobile/bib_fortuna.py b/scripts/object/mobile/bib_fortuna.py index ccad8904..1507ccc4 100644 --- a/scripts/object/mobile/bib_fortuna.py +++ b/scripts/object/mobile/bib_fortuna.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('bib_fortuna') return \ No newline at end of file diff --git a/scripts/object/mobile/boba_fett.py b/scripts/object/mobile/boba_fett.py index ccad8904..26c5be1e 100644 --- a/scripts/object/mobile/boba_fett.py +++ b/scripts/object/mobile/boba_fett.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('boba_fett') return \ No newline at end of file diff --git a/scripts/object/mobile/dressed_gran_thug_male_01.py b/scripts/object/mobile/dressed_gran_thug_male_01.py index ccad8904..6dcda077 100644 --- a/scripts/object/mobile/dressed_gran_thug_male_01.py +++ b/scripts/object/mobile/dressed_gran_thug_male_01.py @@ -1,4 +1,11 @@ import sys +from resources.datatables import Options def setup(core, object): - return \ No newline at end of file + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('ree_yees') + return + \ No newline at end of file diff --git a/scripts/object/mobile/dressed_imperial_officer_f.py b/scripts/object/mobile/dressed_imperial_officer_f.py index b9963b3e..52476091 100644 --- a/scripts/object/mobile/dressed_imperial_officer_f.py +++ b/scripts/object/mobile/dressed_imperial_officer_f.py @@ -7,4 +7,6 @@ def setup(core, object): object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) object.setStfFilename('mob/creature_names') object.setStfName('imperial_recruiter') + + core.mapService.addLocation(object.getPlanet(), '@map_loc_cat_n:imperial', object.getPosition().x, object.getPosition().z, 46, 48, 0) return diff --git a/scripts/object/mobile/dressed_imperial_officer_m_2.py b/scripts/object/mobile/dressed_imperial_officer_m_2.py index b9963b3e..52476091 100644 --- a/scripts/object/mobile/dressed_imperial_officer_m_2.py +++ b/scripts/object/mobile/dressed_imperial_officer_m_2.py @@ -7,4 +7,6 @@ def setup(core, object): object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) object.setStfFilename('mob/creature_names') object.setStfName('imperial_recruiter') + + core.mapService.addLocation(object.getPlanet(), '@map_loc_cat_n:imperial', object.getPosition().x, object.getPosition().z, 46, 48, 0) return diff --git a/scripts/object/mobile/dressed_imperial_officer_m_3.py b/scripts/object/mobile/dressed_imperial_officer_m_3.py index b9963b3e..52476091 100644 --- a/scripts/object/mobile/dressed_imperial_officer_m_3.py +++ b/scripts/object/mobile/dressed_imperial_officer_m_3.py @@ -7,4 +7,6 @@ def setup(core, object): object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) object.setStfFilename('mob/creature_names') object.setStfName('imperial_recruiter') + + core.mapService.addLocation(object.getPlanet(), '@map_loc_cat_n:imperial', object.getPosition().x, object.getPosition().z, 46, 48, 0) return diff --git a/scripts/object/mobile/dressed_imperial_officer_m_4.py b/scripts/object/mobile/dressed_imperial_officer_m_4.py index b9963b3e..52476091 100644 --- a/scripts/object/mobile/dressed_imperial_officer_m_4.py +++ b/scripts/object/mobile/dressed_imperial_officer_m_4.py @@ -7,4 +7,6 @@ def setup(core, object): object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) object.setStfFilename('mob/creature_names') object.setStfName('imperial_recruiter') + + core.mapService.addLocation(object.getPlanet(), '@map_loc_cat_n:imperial', object.getPosition().x, object.getPosition().z, 46, 48, 0) return diff --git a/scripts/object/mobile/dressed_imperial_officer_m_5.py b/scripts/object/mobile/dressed_imperial_officer_m_5.py index b9963b3e..52476091 100644 --- a/scripts/object/mobile/dressed_imperial_officer_m_5.py +++ b/scripts/object/mobile/dressed_imperial_officer_m_5.py @@ -7,4 +7,6 @@ def setup(core, object): object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) object.setStfFilename('mob/creature_names') object.setStfName('imperial_recruiter') + + core.mapService.addLocation(object.getPlanet(), '@map_loc_cat_n:imperial', object.getPosition().x, object.getPosition().z, 46, 48, 0) return diff --git a/scripts/object/mobile/dressed_imperial_officer_m_6.py b/scripts/object/mobile/dressed_imperial_officer_m_6.py index b9963b3e..220d9fd8 100644 --- a/scripts/object/mobile/dressed_imperial_officer_m_6.py +++ b/scripts/object/mobile/dressed_imperial_officer_m_6.py @@ -7,4 +7,6 @@ def setup(core, object): object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) object.setStfFilename('mob/creature_names') object.setStfName('imperial_recruiter') + + core.mapService.addLocation(object.getPlanet(), '@map_loc_cat_n:imperial', object.getPosition().x, object.getPosition().z, 46, 48, 0) return diff --git a/scripts/object/mobile/dressed_porcellus.py b/scripts/object/mobile/dressed_porcellus.py index ccad8904..b2884b2c 100644 --- a/scripts/object/mobile/dressed_porcellus.py +++ b/scripts/object/mobile/dressed_porcellus.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('porcellus') return \ No newline at end of file diff --git a/scripts/object/mobile/dressed_rebel_recruiter_human_female_01.py b/scripts/object/mobile/dressed_rebel_recruiter_human_female_01.py index e0dd64a1..d4d1de24 100644 --- a/scripts/object/mobile/dressed_rebel_recruiter_human_female_01.py +++ b/scripts/object/mobile/dressed_rebel_recruiter_human_female_01.py @@ -7,4 +7,6 @@ def setup(core, object): object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) object.setStfFilename('mob/creature_names') object.setStfName('rebel_recruiter') + + core.mapService.addLocation(object.getPlanet(), '@map_loc_cat_n:rebel', object.getPosition().x, object.getPosition().z, 45, 47, 0) return diff --git a/scripts/object/mobile/dressed_rebel_recruiter_human_female_02.py b/scripts/object/mobile/dressed_rebel_recruiter_human_female_02.py index ccad8904..4f948254 100644 --- a/scripts/object/mobile/dressed_rebel_recruiter_human_female_02.py +++ b/scripts/object/mobile/dressed_rebel_recruiter_human_female_02.py @@ -1,4 +1,13 @@ import sys +from resources.datatables import Options def setup(core, object): - return \ No newline at end of file + object.setAttachment('radial_filename', 'object/conversation'); + object.setAttachment('conversationFile','reb_recruiter') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('rebel_recruiter') + + core.mapService.addLocation(object.getPlanet(), '@map_loc_cat_n:rebel', object.getPosition().x, object.getPosition().z, 45, 47, 0) + + return diff --git a/scripts/object/mobile/dressed_rebel_recruiter_moncal_male_01.py b/scripts/object/mobile/dressed_rebel_recruiter_moncal_male_01.py index ccad8904..efad85db 100644 --- a/scripts/object/mobile/dressed_rebel_recruiter_moncal_male_01.py +++ b/scripts/object/mobile/dressed_rebel_recruiter_moncal_male_01.py @@ -1,4 +1,13 @@ import sys +from resources.datatables import Options def setup(core, object): - return \ No newline at end of file + object.setAttachment('radial_filename', 'object/conversation'); + object.setAttachment('conversationFile','reb_recruiter') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('rebel_recruiter') + + core.mapService.addLocation(object.getPlanet(), '@map_loc_cat_n:rebel', object.getPosition().x, object.getPosition().z, 45, 47, 0) + + return diff --git a/scripts/object/mobile/dressed_rebel_recruiter_twilek_female_01.py b/scripts/object/mobile/dressed_rebel_recruiter_twilek_female_01.py index ccad8904..25c143c9 100644 --- a/scripts/object/mobile/dressed_rebel_recruiter_twilek_female_01.py +++ b/scripts/object/mobile/dressed_rebel_recruiter_twilek_female_01.py @@ -1,4 +1,13 @@ import sys +from resources.datatables import Options def setup(core, object): - return \ No newline at end of file + object.setAttachment('radial_filename', 'object/conversation'); + object.setAttachment('conversationFile','reb_recruiter') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('rebel_recruiter') + + core.mapService.addLocation(object.getPlanet(), '@map_loc_cat_n:rebel', object.getPosition().x, object.getPosition().z, 45, 47, 0) + + return diff --git a/scripts/object/mobile/droopy_mccool.py b/scripts/object/mobile/droopy_mccool.py index ccad8904..2574a1f6 100644 --- a/scripts/object/mobile/droopy_mccool.py +++ b/scripts/object/mobile/droopy_mccool.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('droopy_mccool') return \ No newline at end of file diff --git a/scripts/object/mobile/ephant_mon.py b/scripts/object/mobile/ephant_mon.py index ccad8904..99f49296 100644 --- a/scripts/object/mobile/ephant_mon.py +++ b/scripts/object/mobile/ephant_mon.py @@ -1,4 +1,11 @@ import sys +from resources.datatables import Options def setup(core, object): - return \ No newline at end of file + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE | Options.QUEST) + object.setStfFilename('mob/creature_names') + object.setStfName('ephant_mon') + return + \ No newline at end of file diff --git a/scripts/object/mobile/ev_9d9.py b/scripts/object/mobile/ev_9d9.py index ccad8904..28c1c020 100644 --- a/scripts/object/mobile/ev_9d9.py +++ b/scripts/object/mobile/ev_9d9.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('ev_9d9') return \ No newline at end of file diff --git a/scripts/object/mobile/han_solo.py b/scripts/object/mobile/han_solo.py index ccad8904..8608e0f6 100644 --- a/scripts/object/mobile/han_solo.py +++ b/scripts/object/mobile/han_solo.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('han_solo') return \ No newline at end of file diff --git a/scripts/object/mobile/heroic_tusken_kav_golder.py b/scripts/object/mobile/heroic_tusken_kav_golder.py index ccad8904..9fad2d18 100644 --- a/scripts/object/mobile/heroic_tusken_kav_golder.py +++ b/scripts/object/mobile/heroic_tusken_kav_golder.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('heroic_tusken_kav_goldor') return \ No newline at end of file diff --git a/scripts/object/mobile/hirce_tharnam.py b/scripts/object/mobile/hirce_tharnam.py index ccad8904..952e7294 100644 --- a/scripts/object/mobile/hirce_tharnam.py +++ b/scripts/object/mobile/hirce_tharnam.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('heroic_tusken_hirce_tharnam') return \ No newline at end of file diff --git a/scripts/object/mobile/jabba_the_hutt.py b/scripts/object/mobile/jabba_the_hutt.py index ccad8904..bc2e1050 100644 --- a/scripts/object/mobile/jabba_the_hutt.py +++ b/scripts/object/mobile/jabba_the_hutt.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('jabba_the_hutt') return \ No newline at end of file diff --git a/scripts/object/mobile/javran_mu.py b/scripts/object/mobile/javran_mu.py index ccad8904..d2f6080d 100644 --- a/scripts/object/mobile/javran_mu.py +++ b/scripts/object/mobile/javran_mu.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('heroic_tusken_javran_mu') return \ No newline at end of file diff --git a/scripts/object/mobile/junk_dealer_f_01.py b/scripts/object/mobile/junk_dealer_f_01.py index 6fed84e5..0864b43c 100644 --- a/scripts/object/mobile/junk_dealer_f_01.py +++ b/scripts/object/mobile/junk_dealer_f_01.py @@ -7,4 +7,6 @@ def setup(core, object): object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) object.setStfFilename('mob/creature_names') object.setStfName('junk_dealer') + + core.mapService.addLocation(object.getPlanet(), '@map_loc_cat_n:junkshop', object.getPosition().x, object.getPosition().z, 26, 81, 0) return \ No newline at end of file diff --git a/scripts/object/mobile/junk_dealer_f_02.py b/scripts/object/mobile/junk_dealer_f_02.py index 6e9644e2..f366e0a9 100644 --- a/scripts/object/mobile/junk_dealer_f_02.py +++ b/scripts/object/mobile/junk_dealer_f_02.py @@ -7,4 +7,6 @@ def setup(core, object): object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) object.setStfFilename('mob/creature_names') object.setStfName('junk_dealer_smuggler') + + core.mapService.addLocation(object.getPlanet(), '@map_loc_cat_n:junkshop', object.getPosition().x, object.getPosition().z, 26, 81, 0) return \ No newline at end of file diff --git a/scripts/object/mobile/junk_dealer_f_03.py b/scripts/object/mobile/junk_dealer_f_03.py index 9ed1eded..8de1dd20 100644 --- a/scripts/object/mobile/junk_dealer_f_03.py +++ b/scripts/object/mobile/junk_dealer_f_03.py @@ -7,4 +7,6 @@ def setup(core, object): object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) object.setStfFilename('mob/creature_names') object.setStfName('junk_dealer_special') + + core.mapService.addLocation(object.getPlanet(), '@map_loc_cat_n:junkshop', object.getPosition().x, object.getPosition().z, 26, 81, 0) return \ No newline at end of file diff --git a/scripts/object/mobile/junk_dealer_m_01.py b/scripts/object/mobile/junk_dealer_m_01.py index 6fed84e5..0864b43c 100644 --- a/scripts/object/mobile/junk_dealer_m_01.py +++ b/scripts/object/mobile/junk_dealer_m_01.py @@ -7,4 +7,6 @@ def setup(core, object): object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) object.setStfFilename('mob/creature_names') object.setStfName('junk_dealer') + + core.mapService.addLocation(object.getPlanet(), '@map_loc_cat_n:junkshop', object.getPosition().x, object.getPosition().z, 26, 81, 0) return \ No newline at end of file diff --git a/scripts/object/mobile/junk_dealer_m_02.py b/scripts/object/mobile/junk_dealer_m_02.py index 6e9644e2..f366e0a9 100644 --- a/scripts/object/mobile/junk_dealer_m_02.py +++ b/scripts/object/mobile/junk_dealer_m_02.py @@ -7,4 +7,6 @@ def setup(core, object): object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) object.setStfFilename('mob/creature_names') object.setStfName('junk_dealer_smuggler') + + core.mapService.addLocation(object.getPlanet(), '@map_loc_cat_n:junkshop', object.getPosition().x, object.getPosition().z, 26, 81, 0) return \ No newline at end of file diff --git a/scripts/object/mobile/junk_dealer_m_03.py b/scripts/object/mobile/junk_dealer_m_03.py index 9ed1eded..8de1dd20 100644 --- a/scripts/object/mobile/junk_dealer_m_03.py +++ b/scripts/object/mobile/junk_dealer_m_03.py @@ -7,4 +7,6 @@ def setup(core, object): object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) object.setStfFilename('mob/creature_names') object.setStfName('junk_dealer_special') + + core.mapService.addLocation(object.getPlanet(), '@map_loc_cat_n:junkshop', object.getPosition().x, object.getPosition().z, 26, 81, 0) return \ No newline at end of file diff --git a/scripts/object/mobile/macy_malo.py b/scripts/object/mobile/macy_malo.py index ccad8904..a59ed409 100644 --- a/scripts/object/mobile/macy_malo.py +++ b/scripts/object/mobile/macy_malo.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('heroic_tusken_macy_malo') return \ No newline at end of file diff --git a/scripts/object/mobile/malakili.py b/scripts/object/mobile/malakili.py index ccad8904..8a73a9fe 100644 --- a/scripts/object/mobile/malakili.py +++ b/scripts/object/mobile/malakili.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('malakili') return \ No newline at end of file diff --git a/scripts/object/mobile/max_rebo.py b/scripts/object/mobile/max_rebo.py index ccad8904..697ffb20 100644 --- a/scripts/object/mobile/max_rebo.py +++ b/scripts/object/mobile/max_rebo.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('max_rebo') return \ No newline at end of file diff --git a/scripts/object/mobile/oola.py b/scripts/object/mobile/oola.py index ccad8904..6e18f435 100644 --- a/scripts/object/mobile/oola.py +++ b/scripts/object/mobile/oola.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('oola') return \ No newline at end of file diff --git a/scripts/object/mobile/porcellus.py b/scripts/object/mobile/porcellus.py index ccad8904..b2884b2c 100644 --- a/scripts/object/mobile/porcellus.py +++ b/scripts/object/mobile/porcellus.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('porcellus') return \ No newline at end of file diff --git a/scripts/object/mobile/rancor_static.py b/scripts/object/mobile/rancor_static.py index ccad8904..37df700c 100644 --- a/scripts/object/mobile/rancor_static.py +++ b/scripts/object/mobile/rancor_static.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('jabbas_palace_rancor') return \ No newline at end of file diff --git a/scripts/object/mobile/reelo_baruk.py b/scripts/object/mobile/reelo_baruk.py index ccad8904..b4a616d8 100644 --- a/scripts/object/mobile/reelo_baruk.py +++ b/scripts/object/mobile/reelo_baruk.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('reelo_baruk') return \ No newline at end of file diff --git a/scripts/object/mobile/space_rebel_tier1_tatooine_socuna.py b/scripts/object/mobile/space_rebel_tier1_tatooine_socuna.py index ccad8904..b2c0f1e5 100644 --- a/scripts/object/mobile/space_rebel_tier1_tatooine_socuna.py +++ b/scripts/object/mobile/space_rebel_tier1_tatooine_socuna.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('heroic_tusken_da_la_socuna') return \ No newline at end of file diff --git a/scripts/object/mobile/sy_snootles.py b/scripts/object/mobile/sy_snootles.py index ccad8904..000eafed 100644 --- a/scripts/object/mobile/sy_snootles.py +++ b/scripts/object/mobile/sy_snootles.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('sy_snootles') return \ No newline at end of file diff --git a/scripts/object/mobile/watto.py b/scripts/object/mobile/watto.py index ccad8904..5541ebd8 100644 --- a/scripts/object/mobile/watto.py +++ b/scripts/object/mobile/watto.py @@ -1,4 +1,10 @@ import sys +from resources.datatables import Options def setup(core, object): + #object.setAttachment('radial_filename', 'object/conversation'); + #object.setAttachment('conversationFile','junk_dealer') + object.setOptionsBitmask(Options.CONVERSABLE | Options.INVULNERABLE) + object.setStfFilename('mob/creature_names') + object.setStfName('heroic_tusken_watto') return \ No newline at end of file diff --git a/scripts/object/tangible/item/quest/force_sensitive/fs_crystal_force.py b/scripts/object/tangible/item/quest/force_sensitive/fs_crystal_force.py index ccad8904..b50e17cf 100644 --- a/scripts/object/tangible/item/quest/force_sensitive/fs_crystal_force.py +++ b/scripts/object/tangible/item/quest/force_sensitive/fs_crystal_force.py @@ -1,4 +1,10 @@ import sys def setup(core, object): - return \ No newline at end of file + object.setStfFilename('static_item_n') + object.setStfName('item_force_crystal_04_02') + object.setDetailFilename('static_item_d') + object.setDetailName('item_force_crystal_04_02') + object.setAttachment('Post_BL_radial_filename', 'item/synapse_focus_crystal') + object.setAttachment('radial_filename', 'item/biolink') + return diff --git a/scripts/object/tangible/item/quest/force_sensitive/fs_crystal_health.py b/scripts/object/tangible/item/quest/force_sensitive/fs_crystal_health.py index ccad8904..189829e8 100644 --- a/scripts/object/tangible/item/quest/force_sensitive/fs_crystal_health.py +++ b/scripts/object/tangible/item/quest/force_sensitive/fs_crystal_health.py @@ -1,4 +1,10 @@ import sys def setup(core, object): - return \ No newline at end of file + object.setStfFilename('static_item_n') + object.setStfName('item_force_crystal_04_01') + object.setDetailFilename('static_item_d') + object.setDetailName('item_force_crystal_04_01') + object.setAttachment('Post_BL_radial_filename', 'item/biological_focus_crystal') + object.setAttachment('radial_filename', 'item/biolink') + return diff --git a/scripts/object/tangible/wearables/robe/robe_s05_h1.py b/scripts/object/tangible/wearables/robe/robe_s05_h1.py index ccad8904..6df15568 100644 --- a/scripts/object/tangible/wearables/robe/robe_s05_h1.py +++ b/scripts/object/tangible/wearables/robe/robe_s05_h1.py @@ -1,4 +1,22 @@ import sys def setup(core, object): + object.setStfFilename('static_item_n') + object.setStfName('item_jedi_robe_06_01') + object.setDetailFilename('static_item_d') + object.setDetailName('item_jedi_robe_06_01') + + object.setStringAttribute('protection_level', 'Luminous') + object.setStringAttribute('class_required', 'Jedi') + object.setIntAttribute('required_combat_level', 80) + + object.setIntAttribute('cat_stat_mod_bonus.@stat_n:constitution_modified', 100) + object.setIntAttribute('cat_stat_mod_bonus.@stat_n:strength_modified', 100) + object.setIntAttribute('cat_stat_mod_bonus.@stat_n:agility_modified', 100) + object.setIntAttribute('cat_stat_mod_bonus.@stat_n:luck_modified', 100) + + object.setStringAttribute('@set_bonus:piece_bonus_count_2', '@set_bonus:set_bonus_jedi_robe_1') + + object.setAttachment('type', 'jedi_robe') + object.setAttachment('setBonus', 'set_bonus_jedi_robe') return \ No newline at end of file diff --git a/scripts/pvpzones.py b/scripts/pvpzones.py index 91ab32ef..0714e398 100644 --- a/scripts/pvpzones.py +++ b/scripts/pvpzones.py @@ -5,5 +5,6 @@ def addZones(core): gcwService = core.gcwService gcwService.addPvPZone('rori', 5318, 5680, 400) - - \ No newline at end of file + gcwService.addPvPZone('corellia', 4722, -5233, 200) + gcwService.addPvPZone('naboo', 1019, -1508, 150) + gcwService.addPvPZone('talus', -4899, -3137, 150) \ No newline at end of file diff --git a/scripts/radial/item/biolink.py b/scripts/radial/item/biolink.py new file mode 100644 index 00000000..099a04b9 --- /dev/null +++ b/scripts/radial/item/biolink.py @@ -0,0 +1,58 @@ +from resources.common import RadialOptions +from services.sui import SUIWindow +from services.sui.SUIWindow import Trigger +from java.util import Vector +from java.lang import Long +from main import NGECore +import sys + +def createRadial(core, owner, target, radials): + radials.add(RadialOptions(0, 21, 1, '')) + radials.add(RadialOptions(0, 7, 1, '')) + radials.add(RadialOptions(0, 15, 1, '')) + return + +def handleSelection(core, owner, target, option): + if option == 21 and target: + bioLinkPrompt(core, owner, target, option) + if option == 15 and target: + core.objectService.destroyObject(target) + return + +def bioLinkPrompt(core, owner, target, option): + + if not 'shared_character_inventory' in target.getContainer().getTemplate(): + owner.sendSystemMessage('@base_player:must_biolink_to_use_from_inventory', 1) + return + bl = target.getStringAttribute('bio_link') + #if not '' in bl: + # owner.sendSystemMessage('@base_player:not_linked_to_holder', 1) # This should never occur, because a bio-linked item should have another radial + # return + owner.setAttachment('BioLinkItemCandidate', Long(target.getObjectID())) + window = core.suiService.createSUIWindow('Script.messageBox', owner, owner, 0) + window.setProperty('bg.caption.lblTitle:Text', '@sui:bio_link_item_title') + window.setProperty('Prompt.lblPrompt:Text', '@sui:bio_link_item_prompt') + window.setProperty('btnCancel:visible', 'True') + window.setProperty('btnOk:visible', 'True') + window.setProperty('btnUpdate:visible', 'False') + window.setProperty('btnCancel:Text', '@cancel') + window.setProperty('btnOk:Text', '@ui_radial:bio_link') + returnList = Vector() + + window.addHandler(0, '', Trigger.TRIGGER_OK, returnList, bioLinkProcess) + window.addHandler(1, '', Trigger.TRIGGER_CANCEL, returnList, bioLinkCancel) + core.suiService.openSUIWindow(window); + return + +def bioLinkProcess(owner, window, eventType, returnList): + objectID = owner.getAttachment('BioLinkItemCandidate') + linkedobject = NGECore.getInstance().objectService.getObject(objectID) + owner.sendSystemMessage('@base_player:item_bio_linked', 1) + newRadial = linkedobject.getAttachment('Post_BL_radial_filename') + linkedobject.setAttachment('radial_filename', newRadial) + linkedobject.setStringAttribute('bio_link', owner.getCustomName()) + return + +def bioLinkCancel(owner, window, eventType, returnList): + + return \ No newline at end of file diff --git a/scripts/radial/item/biological_focus_crystal.py b/scripts/radial/item/biological_focus_crystal.py new file mode 100644 index 00000000..7f755500 --- /dev/null +++ b/scripts/radial/item/biological_focus_crystal.py @@ -0,0 +1,19 @@ +import resources.objects.creature.CreatureObject; +from resources.common import RadialOptions +import sys + +def createRadial(core, owner, target, radials): + radials.add(RadialOptions(0, 21, 1, '')) + radials.add(RadialOptions(0, 7, 1, '')) + radials.add(RadialOptions(0, 15, 1, '')) + return + +def handleSelection(core, owner, object, option): + if option == 21: + bl = object.getStringAttribute('bio_link') + if not bl == owner.getCustomName(): + owner.sendSystemMessage('@base_player:not_linked_to_holder', 1) + return + core.buffService.addBuffToCreature(owner, 'forceCrystalHealth', owner) + + return diff --git a/scripts/radial/item/lootchest.py b/scripts/radial/item/lootchest.py index 1a0c9889..90c6b03e 100644 --- a/scripts/radial/item/lootchest.py +++ b/scripts/radial/item/lootchest.py @@ -8,6 +8,7 @@ def createRadial(core, owner, target, radials): def handleSelection(core, owner, target, option): if option == 21 and target: - owner.sendSystemMessage('RLS chest content system not yet implemented.',1) + core.lootService.fillrarelootchest(owner, target) + return \ No newline at end of file diff --git a/scripts/radial/item/shard_of_ferocity.py b/scripts/radial/item/shard_of_ferocity.py new file mode 100644 index 00000000..759f7175 --- /dev/null +++ b/scripts/radial/item/shard_of_ferocity.py @@ -0,0 +1,19 @@ +import resources.objects.creature.CreatureObject; +from resources.common import RadialOptions +import sys + +def createRadial(core, owner, target, radials): + radials.add(RadialOptions(0, 21, 1, '')) + radials.add(RadialOptions(0, 7, 1, '')) + radials.add(RadialOptions(0, 15, 1, '')) + return + +def handleSelection(core, owner, object, option): + if option == 21: + bl = object.getStringAttribute('bio_link') + if not bl == owner.getCustomName(): + owner.sendSystemMessage('@base_player:not_linked_to_holder', 1) + return + core.buffService.addBuffToCreature(owner, 'towCrystalUberCombat', owner) + + return diff --git a/scripts/radial/item/shard_of_retaliation.py b/scripts/radial/item/shard_of_retaliation.py new file mode 100644 index 00000000..9112336e --- /dev/null +++ b/scripts/radial/item/shard_of_retaliation.py @@ -0,0 +1,19 @@ +import resources.objects.creature.CreatureObject; +from resources.common import RadialOptions +import sys + +def createRadial(core, owner, target, radials): + radials.add(RadialOptions(0, 21, 1, '')) + radials.add(RadialOptions(0, 7, 1, '')) + radials.add(RadialOptions(0, 15, 1, '')) + return + +def handleSelection(core, owner, object, option): + if option == 21: + bl = object.getStringAttribute('bio_link') + if not bl == owner.getCustomName(): + owner.sendSystemMessage('@base_player:not_linked_to_holder', 1) + return + core.buffService.addBuffToCreature(owner, 'towCrystalUberDs', owner) + + return diff --git a/scripts/radial/item/shard_of_the_serpent.py b/scripts/radial/item/shard_of_the_serpent.py new file mode 100644 index 00000000..3a73c511 --- /dev/null +++ b/scripts/radial/item/shard_of_the_serpent.py @@ -0,0 +1,19 @@ +import resources.objects.creature.CreatureObject; +from resources.common import RadialOptions +import sys + +def createRadial(core, owner, target, radials): + radials.add(RadialOptions(0, 21, 1, '')) + radials.add(RadialOptions(0, 7, 1, '')) + radials.add(RadialOptions(0, 15, 1, '')) + return + +def handleSelection(core, owner, object, option): + if option == 21: + bl = object.getStringAttribute('bio_link') + if not bl == owner.getCustomName(): + owner.sendSystemMessage('@base_player:not_linked_to_holder', 1) + return + core.buffService.addBuffToCreature(owner, 'towCrystalUberCombat', owner) # correct buff needs to be replaced + + return diff --git a/scripts/radial/item/sith_buff_holocron.py b/scripts/radial/item/sith_buff_holocron.py new file mode 100644 index 00000000..3c417e7f --- /dev/null +++ b/scripts/radial/item/sith_buff_holocron.py @@ -0,0 +1,19 @@ +import resources.objects.creature.CreatureObject; +from resources.common import RadialOptions +import sys + +def createRadial(core, owner, target, radials): + radials.add(RadialOptions(0, 21, 1, '')) + radials.add(RadialOptions(0, 7, 1, '')) + radials.add(RadialOptions(0, 15, 1, '')) + return + +def handleSelection(core, owner, object, option): + if option == 21: + bl = object.getStringAttribute('bio_link') + if not bl == owner.getCustomName(): + owner.sendSystemMessage('@base_player:not_linked_to_holder', 1) + return + core.buffService.addBuffToCreature(owner, 'towCrystalABImmune', owner) + + return diff --git a/scripts/radial/item/synapse_focus_crystal.py b/scripts/radial/item/synapse_focus_crystal.py new file mode 100644 index 00000000..7aa755ba --- /dev/null +++ b/scripts/radial/item/synapse_focus_crystal.py @@ -0,0 +1,19 @@ +import resources.objects.creature.CreatureObject; +from resources.common import RadialOptions +import sys + +def createRadial(core, owner, target, radials): + radials.add(RadialOptions(0, 21, 1, '')) + radials.add(RadialOptions(0, 7, 1, '')) + radials.add(RadialOptions(0, 15, 1, '')) + return + +def handleSelection(core, owner, object, option): + if option == 21: + bl = object.getStringAttribute('bio_link') + if not bl == owner.getCustomName(): + owner.sendSystemMessage('@base_player:not_linked_to_holder', 1) + return + core.buffService.addBuffToCreature(owner, 'forceCrystalForce', owner) + + return diff --git a/scripts/radial/npc/bounty_probot.py b/scripts/radial/npc/bounty_probot.py index 1301c027..83cdb93a 100644 --- a/scripts/radial/npc/bounty_probot.py +++ b/scripts/radial/npc/bounty_probot.py @@ -25,6 +25,11 @@ def handleSelection(core, owner, target, option): if not core.terrainService.canBuildAtPosition(owner, owner.getPosition().x, owner.getPosition().z): owner.sendSystemMessage('@mission/mission_generic:probe_droid_bad_location', 0) return + + if target.getUses() == 0: + core.objectService.destroyObject(target) + else: + target.setUses(target.getUses() - 1) mission.getObjective().handleProbeDroidSummon(core, owner) return \ No newline at end of file diff --git a/scripts/radial/npc/bounty_seeker.py b/scripts/radial/npc/bounty_seeker.py index d7e829fe..f619a5bb 100644 --- a/scripts/radial/npc/bounty_seeker.py +++ b/scripts/radial/npc/bounty_seeker.py @@ -26,13 +26,18 @@ def handleSelection(core, owner, target, option): if mission.getObjective().isSeekerActive(): owner.sendSystemMessage('@mission/mission_generic:bounty_already_tracking', 0) return + if target.getUses() == 0: + core.objectService.destroyObject(target) + else: + target.setUses(target.getUses() - 1) pos = SpawnPoint.getRandomPosition(owner.getPosition(), 1, 3, owner.getPlanetId()) ori = owner.getOrientation() seeker = core.staticService.spawnObject('object/creature/npc/droid/crafted/shared_probe_droid_advanced.iff', owner.getPlanet().getName(), 0, pos.x, pos.y, pos.z, ori.y, ori.w) time.sleep(3) owner.sendSystemMessage('@mission/mission_generic:seeker_droid_standby', 0) seeker.setPosture(8) - time.sleep(7.5) + time.sleep(6.5) + core.objectService.destroyObject(seeker) mission.getObjective().beginSeekerUpdates(core, owner) return diff --git a/scripts/radial/object/guild_access_device.py b/scripts/radial/object/guild_access_device.py index bd019f39..48784bda 100644 --- a/scripts/radial/object/guild_access_device.py +++ b/scripts/radial/object/guild_access_device.py @@ -5,26 +5,104 @@ from main import NGECore import sys def createRadial(core, owner, target, radials): - - #radials.clear() - - if owner.getGuildId() != 0: - guild = core.guildService.getGuildById(owner.getGuildId) - - if guild is None: - return - - if guild.getLeader() == owner.getObjectID(): - radials.add(RadialOptions(0, RadialOptions.serverGuildGuildManagement, 3, '@guild:menu_guild_management')) - radials.add(RadialOptions(0, RadialOptions.serverGuildMemberManagement, 3, '@guild:menu_member_management')) + # http://i293.photobucket.com/albums/mm62/cebot/radial.jpg - #Guild Management - radials.add(RadialOptions(3, RadialOptions.serverGuildDisband, 3, '@guild:menu_disband')) + #radials.clear() + + if owner.getGuildId() != 0: - #Member Management - radials.add(RadialOptions(4, RadialOptions.serverGuildSponsor, 3, '@guild:menu_sponsor')) - return - return - + guild = core.guildService.getGuildById(owner.getGuildId()) + + if guild is None: + return + + member = guild.getMember(owner.getObjectID()) + + + # TODO: Add List of Guilds radial option + # TODO: Add List of Guild Wars radial option http://i293.photobucket.com/albums/mm62/cebot/wars.jpg << List of Guild Wars + + radials.add(RadialOptions(0, RadialOptions.serverGuildGuildManagement, 3, '@guild:menu_guild_management')) # Guild Management + radials.add(RadialOptions(0, RadialOptions.serverGuildMemberManagement, 3, '@guild:menu_member_management')) # Member Management + + #### Guild Management #### + radials.add(RadialOptions(3, RadialOptions.serverGuildInfo, 3, '@guild:menu_info')) # Guild Information + #radials.add(RadialOptions(3, RadialOptions.serverGuildEnemies, 3, '@guild:menu_enemies')) # Guild Enemies + #radials.add(RadialOptions(3, 215, 3, '@guild:menu_rank_list')) # Rank List + # TODO: Add Rank Summary + radials.add(RadialOptions(3, 217, 3, '@guild:menu_permission_list')) # Permissions List + + if member.hasDisbandPermission(): + radials.add(RadialOptions(3, RadialOptions.serverGuildDisband, 3, '@guild:menu_disband')) # Disband Guild + if member.hasChangeNamePermission(): + radials.add(RadialOptions(3, RadialOptions.serverGuildNameChange, 3, '@guild:menu_namechange')) # Change Guild Name + + #### Member Management #### + radials.add(RadialOptions(4, RadialOptions.serverGuildMembers, 3, '@guild:menu_members')) # Guild Members + if member.hasSponsorPermission(): + radials.add(RadialOptions(4, RadialOptions.serverGuildSponsor, 3, '@guild:menu_sponsor')) # Sponsor for Membership + if member.hasAcceptPermission() and guild.getSponsoredPlayers().size() > 0: + radials.add(RadialOptions(4, RadialOptions.serverGuildSponsored, 3, '@guild:menu_sponsored')) # Sponsored for Membership + if owner.getObjectID() == guild.getLeader(): + radials.add(RadialOptions(4, 218, 3, '@guild:menu_member_motd')) # Create a Guild Message + #radials.add(RadialOptions(4, 69, 3, '@guild:menu_leader_change')) # Transfer PA Leadership + return + + return + def handleSelection(core, owner, target, option): - return \ No newline at end of file + guild = core.guildService.getGuildById(owner.getGuildId()) + + if guild is None: + return + + #### Guild Management #### + + # - Guild Info + if option == RadialOptions.serverGuildInfo: + core.guildService.showGuildInfoWindow(owner, guild) + return + + # - Rank List + elif option == 215: + return + + # - Permissions List + elif option == 217: + core.guildService.handleViewPermissionsList(owner, guild) + return + + # - Disband Guild + elif option == RadialOptions.serverGuildDisband: + core.guildService.showDisbandConfirmWindow(owner, guild) + return + + elif option == RadialOptions.serverGuildNameChange: + core.guildService.handleChangeGuildName(owner, guild) + return + + #### Member Management #### + + # - Guild Members + elif option == RadialOptions.serverGuildMembers: + core.guildService.handleViewGuildMembers(owner, guild) + return + + # - Sponsor for Membership + elif option == RadialOptions.serverGuildSponsor: + core.guildService.handleGuildSponsorWindow(owner) + return + + # - Sponsored for Membership + elif option == RadialOptions.serverGuildSponsored: + core.guildService.handleManageSponsoredPlayers(owner) + return + + # - Transfer PA Leadership + elif option == 69: + return + + elif option == 218: + core.guildService.handleChangeGuildMotd(owner, guild) + return + return \ No newline at end of file diff --git a/scripts/radial/object/guild_registry.py b/scripts/radial/object/guild_registry.py index 7b383d9a..4b751dec 100644 --- a/scripts/radial/object/guild_registry.py +++ b/scripts/radial/object/guild_registry.py @@ -5,43 +5,16 @@ from main import NGECore import sys def createRadial(core, owner, target, radials): - - #radials.clear() - + if owner.getGuildId() == 0: radials.add(RadialOptions(0, RadialOptions.serverGuildCreate, 3, '@guild:menu_create')) return - + return def handleSelection(core, owner, target, option): - suiSvc = NGECore().getInstance().suiService # Create Guild if option == 185 and target: - wndGuildCreate = core.suiService.createInputBox(InputBoxType.INPUT_BOX_OK_CANCEL, '@guild:create_name_title', '@guild:create_name_prompt', owner, owner, 0, handleGuildCreateName) - wndGuildCreate.setProperty("txtInput:MaxLength", "24"); - wndGuildCreate.setProperty("txtInput:NumericInteger", "false") - suiSvc.openSUIWindow(wndGuildCreate) - return - - return - -def handleGuildCreateName(owner, window, eventType, returnList): - suiSvc = NGECore().getInstance().suiService - if eventType == 0: - guildName = str(returnList.get(0)) - if guildName is not None: - owner.setAttachment('guildName', guildName) - wndGuildInitials = NGECore().getInstance().suiService.createInputBox(InputBoxType.INPUT_BOX_OK, '@guild:create_abbrev_title', '@guild:create_abbrev_prompt', owner, owner, 0, doGuildCreate) - wndGuildInitials.setProperty("txtInput:MaxLength", "4"); - wndGuildInitials.setProperty("txtInput:NumericInteger", "false") - suiSvc.openSUIWindow(wndGuildInitials) + core.guildService.handleCreateGuildName(owner, target) return return - -def doGuildCreate(owner, window, eventType, returnList): - if eventType == 0: - guild = NGECore().getInstance().guildService.createGuild(str(returnList.get(0)), str(owner.getAttachment('guildName')), owner) - owner.setGuildId(guild.getId()) - return - return \ No newline at end of file diff --git a/scripts/radial/terminal/vendor.py b/scripts/radial/terminal/vendor.py index 39b25d8b..1ebb5c4b 100644 --- a/scripts/radial/terminal/vendor.py +++ b/scripts/radial/terminal/vendor.py @@ -1,39 +1,130 @@ -from resources.common import RadialOptions +from resources.common import RadialOptions, ProsePackage, OutOfBand +from java.util import HashMap +from java.lang import Long +from services.sui.SUIService import ListBoxType +from services.sui.SUIService import InputBoxType +from services.sui.SUIWindow import Trigger import sys def createRadial(core, owner, target, radials): radials.clear() + radials.add(RadialOptions(0, 7, 1, '')) radials.add(RadialOptions(0, 11, 1, '')) - radials.add(RadialOptions(0, 55, 0, '')) - radials.add(RadialOptions(2, 56, 1, '')) - radials.add(RadialOptions(2, 57, 1, '')) - radials.add(RadialOptions(2, 58, 1, '')) - radials.add(RadialOptions(2, 59, 1, '')) - radials.add(RadialOptions(0, 52, 0, '')) - radials.add(RadialOptions(3, 53, 1, '')) - radials.add(RadialOptions(3, 54, 1, '')) - - if not owner.getPlayerObject().getOwnedVendors().contains(target.getObjectID()) + if not long(target.getAttachment('vendorOwner')) == owner.getObjectID(): return + radials.add(RadialOptions(0, 55, 0, '')) + radials.add(RadialOptions(0, 52, 0, '')) radials.add(RadialOptions(0, 112, 3, '@player_structure:vendor_control')) + radials.add(RadialOptions(3, 56, 1, '')) + radials.add(RadialOptions(3, 57, 1, '')) + radials.add(RadialOptions(3, 58, 1, '')) + radials.add(RadialOptions(3, 59, 1, '')) + radials.add(RadialOptions(4, 53, 1, '')) + radials.add(RadialOptions(4, 54, 1, '')) + + if target.getAttachment('initialized') == False: - radials.add(RadialOptions(1, 118, 3, '@player_structure:vendor_init')) + radials.add(RadialOptions(5, 118, 3, '@player_structure:vendor_init')) else: # soe reuses option 118 - radials.add(RadialOptions(4, 118, 3, '@player_structure:vendor_status')) - radials.add(RadialOptions(4, 217, 3, '@player_structure:give_maintenance')) - radials.add(RadialOptions(4, 115, 3, '@player_structure:take_maintenance')) + radials.add(RadialOptions(5, 118, 3, '@player_structure:vendor_status')) + radials.add(RadialOptions(5, 217, 3, '@player_structure:give_maintenance')) + radials.add(RadialOptions(5, 115, 3, '@player_structure:take_maintenance')) if owner.getSkillModBase('private_register_vendor') >= 1: - radials.add(RadialOptions(4, 116, 3, '@player_structure:register_vendor')) - radials.add(RadialOptions(4, 205, 3, '@player_structure:enable_vendor_search')) - radials.add(RadialOptions(4, 206, 3, '@player_structure:disable_vendor_search')) - radials.add(RadialOptions(4, 121, 3, '@player_structure:customize_vendor')) + radials.add(RadialOptions(5, 116, 3, '@player_structure:register_vendor')) + radials.add(RadialOptions(5, 205, 3, '@player_structure:enable_vendor_search')) + radials.add(RadialOptions(5, 206, 3, '@player_structure:disable_vendor_search')) + radials.add(RadialOptions(5, 121, 3, '@player_structure:customize_vendor')) - radials.add(RadialOptions(4, 114, 3, '@player_structure:vendor_pack')) - radials.add(RadialOptions(4, 117, 3, '@player_structure:remove_vendor')) + radials.add(RadialOptions(5, 114, 3, '@player_structure:vendor_pack')) + radials.add(RadialOptions(5, 117, 3, '@player_structure:remove_vendor')) return def handleSelection(core, owner, target, option): + + if not target.getAttachment('vendorOwner') == owner.getObjectID(): + return + + if target.getAttachment('initialized') == False: + if option == 118: + owner.sendSystemMessage('@player_structure:vendor_initialized', 0) + target.setAttachment('initialized', True) + core.bazaarService.startVendorUpdateTask(owner, target) + else: + if option == 118: + suiOptions = HashMap() + suiOptions.put(Long(1), 'Owner: ' + owner.getCustomName()) + suiOptions.put(Long(2), 'Maintenance Pool: ' + str(target.getAttachment('maintenanceAmount')) + ' cr') + maintenanceRate = 15 + if target.getAttachment('onMap') is True: + maintenanceRate += 6 + suiOptions.put(Long(3), 'Maintenance Rate: ' + str(maintenanceRate) + ' cr/hr') + suiOptions.put(Long(4), 'Number of Items For Sale: ' + str(core.bazaarService.getNumberOfItemsForSale(target.getObjectID()))) + window = core.suiService.createListBox(ListBoxType.LIST_BOX_OK_CANCEL, '@player_structure:vendor_status', 'Vendor Status', suiOptions, owner, None, 5) + core.suiService.openSUIWindow(window) + if option == 205: + target.setAttachment('vendorSearchEnabled', True) + owner.sendSystemMessage('@player_structure:vendor_search_enabled', 0) + if option == 206: + target.setAttachment('vendorSearchEnabled', False) + owner.sendSystemMessage('@player_structure:vendor_search_disabled', 0) + if option == 217: + window = core.suiService.createInputBox(InputBoxType.INPUT_BOX_OK_CANCEL, '@player_structure:pay_vendor_t', '@player_structure:pay_vendor_d', owner, target, 5, handlePayMaintenance) + core.suiService.openSUIWindow(window) + if option == 115: + window = core.suiService.createInputBox(InputBoxType.INPUT_BOX_OK_CANCEL, '@player_structure:withdraw_vendor_t', '@player_structure:withdraw_vendor_d', owner, target, 5, handleWithdrawMaintenance) + core.suiService.openSUIWindow(window) + + + + + + + return + +def handlePayMaintenance(actor, window, eventType, returnList): + + value = int(returnList.get(0)) + + if value > 100000: + actor.sendSystemMessage('@player_structure:vendor_maint_invalid', 0) + return + if value <= 0: + actor.sendSystemMessage('@player_structure:amt_greater_than_zero', 0) + return + if actor.getBankCredits() + actor.getCashCredits() <= value: + actor.sendSystemMessage('@player_structure:vendor_maint_denied', 0) + return + + if actor.getBankCredits() < value: + actor.setCashCredits(actor.getCashCredits() - (value - actor.getBankCredits())) + actor.setBankCredits(0) + else: + actor.setBankCredits(actor.getBankCredits() - value) + + maintAmount = window.getRangeObject().getAttachment('maintenanceAmount') + maintAmount += value + window.getRangeObject().setAttachment('maintenanceAmount', maintAmount) + + #actor.sendSystemMessage('@player_structure:vendor_maint_accepted', OutOfBand(ProsePackage(maintAmount)), 0) + + return + +def handleWithdrawMaintenance(actor, window, eventType, returnList): + + value = int(returnList.get(0)) + maintAmount = window.getRangeObject().getAttachment('maintenanceAmount') + + if value > maintAmount: + #actor.sendSystemMessage('@player_structure:vendor_withdraw_fail', OutOfBand(ProsePackage(value)), 0) + return + if value <= 0: + actor.sendSystemMessage('@player_structure:amt_greater_than_zero', 0) + + maintAmount -= value + window.getRangeObject().setAttachment('maintenanceAmount', maintAmount) + #actor.sendSystemMessage('@player_structure:vendor_withdraw', OutOfBand(ProsePackage(value)), 0) + return \ No newline at end of file diff --git a/scripts/roadmap/spy_1a.py b/scripts/roadmap/spy_1a.py index 079de728..2fa7ff2e 100644 --- a/scripts/roadmap/spy_1a.py +++ b/scripts/roadmap/spy_1a.py @@ -25,4 +25,96 @@ def getAction(): return 75 def getRewards(name): - return \ No newline at end of file + def getRewards(name): + if name == 'item_spy_backpack_01_02': + return "object/tangible/wearables/backpack/shared_backpack_s04.iff" + + if name == 'armor_spy_roadmap_bicep_l_02_01': + return "object/tangible/wearables/armor/padded/shared_armor_padded_s01_bicep_l.iff" + + if name == 'armor_spy_roadmap_bicep_r_02_01': + return "object/tangible/wearables/armor/padded/shared_armor_padded_s01_bicep_r.iff" + + if name == 'armor_spy_roadmap_bracer_l_02_01': + return "object/tangible/wearables/armor/padded/shared_armor_padded_s01_bracer_l.iff" + + if name == 'armor_spy_roadmap_bracer_r_02_01': + return "object/tangible/wearables/armor/padded/shared_armor_padded_s01_bracer_r.iff" + + if name == 'armor_spy_roadmap_boots_02_01': + return "object/tangible/wearables/armor/padded/shared_armor_padded_s01_boots.iff" + + if name == 'armor_spy_roadmap_chest_02_01': + return "object/tangible/wearables/armor/padded/shared_armor_padded_s01_chest_plate.iff" + + if name == 'armor_spy_roadmap_gloves_02_01': + return "object/tangible/wearables/armor/padded/shared_armor_padded_s01_gloves.iff" + + if name == 'armor_spy_roadmap_helmet_02_01': + return "object/tangible/wearables/armor/padded/shared_armor_padded_s01_helmet.iff" + + if name == 'armor_spy_roadmap_leggings_02_01': + return "object/tangible/wearables/armor/padded/shared_armor_padded_s01_leggings.iff" + + if name == 'armor_wookiee_roadmap_chest_02_03': + return "object/tangible/wearables/armor/kashyyykian_hunting/shared_armor_kashyyykian_hunting_chestplate.iff" + + if name == 'armor_wookiee_roadmap_leggings_02_03': + return "object/tangible/wearables/armor/kashyyykian_hunting/shared_armor_kashyyykian_hunting_leggings.iff" + + if name == 'armor_wookiee_roadmap_bicep_l_02_03': + return "object/tangible/wearables/armor/kashyyykian_hunting/shared_armor_kashyyykian_hunting_bicep_l.iff" + + if name == 'armor_wookiee_roadmap_bicep_r_02_03': + return "object/tangible/wearables/armor/kashyyykian_hunting/shared_armor_kashyyykian_hunting_bicep_r.iff" + + if name == 'armor_wookiee_roadmap_bracer_l_02_03': + return "object/tangible/wearables/armor/kashyyykian_hunting/shared_armor_kashyyykian_hunting_bracer_l.iff" + + if name == 'armor_wookiee_roadmap_bracer_r_02_03': + return "object/tangible/wearables/armor/kashyyykian_hunting/shared_armor_kashyyykian_hunting_bracer_r.iff" + + if name == 'armor_ithorian_roadmap_chest_02_03': + return "object/tangible/wearables/armor/ithorian_sentinel/shared_ith_armor_s03_chest_plate.iff" + + if name == 'armor_ithorian_roadmap_leggings_02_03': + return "object/tangible/wearables/armor/ithorian_sentinel/shared_ith_armor_s03_leggings.iff" + + if name == 'armor_ithorian_roadmap_helmet_02_03': + return "object/tangible/wearables/armor/ithorian_sentinel/shared_ith_armor_s03_helmet.iff" + + if name == 'armor_ithorian_roadmap_bicep_l_02_03': + return "object/tangible/wearables/armor/ithorian_sentinel/shared_ith_armor_s03_bicep_l.iff" + + if name == 'armor_ithorian_roadmap_bicep_r_02_03': + return "object/tangible/wearables/armor/ithorian_sentinel/shared_ith_armor_s03_bicep_r.iff" + + if name == 'armor_ithorian_roadmap_bracer_l_02_03': + return "object/tangible/wearables/armor/ithorian_sentinel/shared_ith_armor_s03_bracer_l.iff" + + if name == 'armor_ithorian_roadmap_bracer_r_02_03': + return "object/tangible/wearables/armor/ithorian_sentinel/shared_ith_armor_s03_bracer_r.iff" + + if name == 'armor_ithorian_roadmap_boots_02_03': + return "object/tangible/wearables/armor/ithorian_sentinel/shared_ith_armor_s03_boots.iff" + + if name == 'armor_ithorian_roadmap_gloves_02_03': + return "object/tangible/wearables/armor/ithorian_sentinel/shared_ith_armor_s03_gloves.iff" + + if name == 'weapon_pistol_sp_roadmap_01_02': + return "object/weapon/ranged/pistol/shared_pistol_striker.iff" + + if name == 'item_spy_ring_01_02': + return "object/tangible/wearables/ring/shared_ring_s02.iff" + + if name == 'weapon_carbine_sp_roadmap_01_02': + return "object/weapon/ranged/carbine/shared_carbine_e11.iff" + + if name == 'item_spy_pendant_01_02': + return "object/tangible/wearables/necklace/shared_necklace_s02.iff" + + if name == 'item_spy_clicky_01_02': + return "object/tangible/loot/generic_usable/shared_survey_pad_adv_generic.iff" + + if name == 'item_roadmap_belt_spy_01_02': + return "object/tangible/wearables/armor/zam/shared_armor_zam_wesell_belt.iff" diff --git a/scripts/static_spawns/corellia/bela_vistal.py b/scripts/static_spawns/corellia/bela_vistal.py new file mode 100644 index 00000000..45ea12ee --- /dev/null +++ b/scripts/static_spawns/corellia/bela_vistal.py @@ -0,0 +1,17 @@ + +import sys +from resources.datatables import Options +from resources.datatables import StateStatus + + +def addPlanetSpawns(core, planet): + + stcSvc = core.staticService + objSvc = core.objectService + + #junkdealer + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'corellia', long(0), float(6840), float(315), float(-5630), float(0.707), float(-0.707)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'corellia', long(0), float(6852), float(315), float(-5802), float(0.71), float(-0.71)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'corellia', long(0), float(6756), float(315), float(-5778), float(0.71), float(0.71)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'corellia', long(0), float(6970), float(330), float(-5588), float(0.71), float(0.71)) + return diff --git a/scripts/static_spawns/corellia/coronet.py b/scripts/static_spawns/corellia/coronet.py index 60de3058..e7974869 100644 --- a/scripts/static_spawns/corellia/coronet.py +++ b/scripts/static_spawns/corellia/coronet.py @@ -121,5 +121,7 @@ def addPlanetSpawns(core, planet): mackJasper.setCustomName2('Lieutenant Mack Jasper') mackJasper.setOptionsBitmask(256) + #Junkdealer will be added as soon as i can find coords + return \ No newline at end of file diff --git a/scripts/static_spawns/corellia/doaba_guerfel.py b/scripts/static_spawns/corellia/doaba_guerfel.py new file mode 100644 index 00000000..bb48cb72 --- /dev/null +++ b/scripts/static_spawns/corellia/doaba_guerfel.py @@ -0,0 +1,12 @@ + +import sys +from resources.datatables import Options +from resources.datatables import StateStatus + + +def addPlanetSpawns(core, planet): + + + #junkdealer will be added as soon as i find coords + + return diff --git a/scripts/static_spawns/corellia/factional_recruiters.py b/scripts/static_spawns/corellia/factional_recruiters.py new file mode 100644 index 00000000..17de611c --- /dev/null +++ b/scripts/static_spawns/corellia/factional_recruiters.py @@ -0,0 +1,27 @@ +import sys +# Project SWG: Imperial Recruiters tatooine: Static Spawns +# (C)2014 ProjectSWG + + + +from resources.datatables import Options +from resources.datatables import State + +def addPlanetSpawns(core, planet): + + stcSvc = core.staticService + objSvc = core.objectService + #recruiter Imp Outpost + + stcSvc.spawnObject('object/mobile/shared_dressed_imperial_officer_m_4.iff', 'corellia', long(0), float(6718), float(315), float(-5809), float(0), float(0), float(0), float(0)) + + #rebrecruiter tyrena + tyrenaCantina = core.objectService.getObject(long(2625352)) + stcSvc.spawnObject('object/mobile/shared_dressed_rebel_recruiter_moncal_male_01.iff', 'corellia', tyrenaCantina.getCellByCellNumber(11), float(-25.8), float(-0.9), float(0.4), float(0), float(-0.707), float(0), float(0.707)) + + #cnet cantina + cnetCantina = core.objectService.getObject(long(8105493)) + stcSvc.spawnObject('object/mobile/shared_dressed_rebel_recruiter_twilek_female_01.iff', 'corellia', cnetCantina.getCellByCellNumber(11), float(-25.8), float(-0.9), float(0.4), float(0), float(-0.707), float(0), float(0.707)) + + + return \ No newline at end of file diff --git a/scripts/static_spawns/corellia/kor_vella.py b/scripts/static_spawns/corellia/kor_vella.py new file mode 100644 index 00000000..bb48cb72 --- /dev/null +++ b/scripts/static_spawns/corellia/kor_vella.py @@ -0,0 +1,12 @@ + +import sys +from resources.datatables import Options +from resources.datatables import StateStatus + + +def addPlanetSpawns(core, planet): + + + #junkdealer will be added as soon as i find coords + + return diff --git a/scripts/static_spawns/corellia/tyrena.py b/scripts/static_spawns/corellia/tyrena.py new file mode 100644 index 00000000..bb48cb72 --- /dev/null +++ b/scripts/static_spawns/corellia/tyrena.py @@ -0,0 +1,12 @@ + +import sys +from resources.datatables import Options +from resources.datatables import StateStatus + + +def addPlanetSpawns(core, planet): + + + #junkdealer will be added as soon as i find coords + + return diff --git a/scripts/static_spawns/dantooine/factional_recruiters.py b/scripts/static_spawns/dantooine/factional_recruiters.py new file mode 100644 index 00000000..22c27df9 --- /dev/null +++ b/scripts/static_spawns/dantooine/factional_recruiters.py @@ -0,0 +1,22 @@ +import sys +# Project SWG: Imperial Recruiters dantooine: Static Spawns +# (C)2014 ProjectSWG + + + +from resources.datatables import Options +from resources.datatables import State + +def addPlanetSpawns(core, planet): + + stcSvc = core.staticService + objSvc = core.objectService + #imprecruiter Imp Outpost + + stcSvc.spawnObject('object/mobile/shared_dressed_imperial_officer_m_6.iff', 'dantooine', long(0), float(-4198), float(3), float(-2411), float(0.819), float(-0.572)) + + #rebrecruiter abandoned base + stcSvc.spawnObject('object/mobile/shared_dressed_rebel_recruiter_moncal_male_01.iff', 'dantooine', long(0), float(-6817), float(46), float(5511), float(0), float(-0.707), float(0), float(0.707)) + + + return \ No newline at end of file diff --git a/scripts/static_spawns/dantooine/force_crystal_hunters_cave.py b/scripts/static_spawns/dantooine/force_crystal_hunters_cave.py new file mode 100644 index 00000000..e2b6b0e1 --- /dev/null +++ b/scripts/static_spawns/dantooine/force_crystal_hunters_cave.py @@ -0,0 +1,30 @@ +from resources.datatables import Options +from resources.datatables import State + +def addPlanetSpawns(core, planet): + + stcSvc = core.staticService + hunter1 = stcSvc.spawnObject('force_sensitive_crypt_crawler', 'dantooine', long(8535484), float(26), float(-41), float(-68), float(2.77), float(1.82)) + hunter2 = stcSvc.spawnObject('untrained_wielder_of_the_dark_side', 'dantooine', long(8535484), float(23), float(-41), float(-65), float(1.52), float(2.94)) + hunter3 = stcSvc.spawnObject('untrained_wielder_of_the_dark_side', 'dantooine', long(8535484), float(47), float(-48), float(-65), float(0.72), float(-0.68)) + hunter4 = stcSvc.spawnObject('untrained_wielder_of_the_dark_side', 'dantooine', long(8535484), float(49.12), float(-47.48), float(-13.41), float(1), float(-0.05)) + hunter5 = stcSvc.spawnObject('dark_force_crystal_hunter', 'dantooine', long(8535485), float(93.10), float(-61.87), float(-14.25), float(-0.7), float(0.7)) + hunter6 = stcSvc.spawnObject('force_sensitive_crypt_crawler', 'dantooine', long(8535485), float(62.2), float(-69.0), float(-37.8), float(0.68), float(0.72)) + hunter7 = stcSvc.spawnObject('dark_force_crystal_hunter', 'dantooine', long(8535484), float(52.14), float(-67.8), float(-42.9), float(0.51), float(0.86)) + hunter8 = stcSvc.spawnObject('force_sensitive_crypt_crawler', 'dantooine', long(8535486), float(84.94), float(-77.09), float(-63.28), float(-0.19), float(0.98)) + hunter9 = stcSvc.spawnObject('force_sensitive_crypt_crawler', 'dantooine', long(8535486), float(65.30), float(-76.16), float(-70.15), float(0.38), float(0.92)) + hunter10 = stcSvc.spawnObject('untrained_wielder_of_the_dark_side', 'dantooine', long(8535486), float(65.636), float(-76.87), float(-81.40), float(-0.123), float(0.99)) + hunter11 = stcSvc.spawnObject('dark_force_crystal_hunter', 'dantooine', long(8535487), float(80.34), float(-77.29), float(-92.77), float(-0.2), float(0.97)) + hunter12 = stcSvc.spawnObject('dark_force_crystal_hunter', 'dantooine', long(8535487), float(80.34), float(-77.29), float(-92.77), float(-0.2), float(0.97)) + objSvc = core.objectService + magSeal1 = objSvc.getObject(200335); #(200336-1) + if magSeal1 != None: + lootPoolNames_1 = ['Junk'] + lootPoolChances_1 = [100] + lootGroupChance_1 = 90 + magSeal1.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1) + lotSvc = core.lootService + lotSvc.handleContainer(200335,'Junk','dantooine') + + return + \ No newline at end of file diff --git a/scripts/static_spawns/dantooine/imperial_outpost.py b/scripts/static_spawns/dantooine/imperial_outpost.py new file mode 100644 index 00000000..d19b18d5 --- /dev/null +++ b/scripts/static_spawns/dantooine/imperial_outpost.py @@ -0,0 +1,29 @@ +import sys +from resources.datatables import Options +from resources.datatables import State + +def addPlanetSpawns(core, planet): + stcSvc = core.staticService + objSvc = core.objectService + + stormtrooper1 = stcSvc.spawnObject('eow_fbase_stormtrooper', 'dantooine', long(0), float(-4211), float(3), float(-2384), float(0.011), float(0.999)) + stormtrooper2 = stcSvc.spawnObject('eow_fbase_stormtrooper', 'dantooine', long(0), float(-4212), float(3), float(-2384), float(0.011), float(0.999)) + stormtrooper3 = stcSvc.spawnObject('eow_fbase_stormtrooper', 'dantooine', long(0), float(-4211), float(3), float(-2386), float(0.011), float(0.999)) + stormtrooper4 = stcSvc.spawnObject('eow_fbase_stormtrooper', 'dantooine', long(0), float(-4212), float(3), float(-2386), float(0.011), float(0.999)) + stormtrooper5 = stcSvc.spawnObject('eow_fbase_stormtrooper', 'dantooine', long(0), float(-4212), float(3), float(-2388), float(0.011), float(0.999)) + + stormtrooper6 = stcSvc.spawnObject('eow_fbase_stormtrooper', 'dantooine', long(0), float(-4229), float(3), float(-2394), float(0.703), float(0.710)) + corporal1 = stcSvc.spawnObject('eow_fbase_imperial_corporal', 'dantooine', long(0), float(-4228), float(3), float(-2395), float(0.703), float(0.710)) + corporal2 = stcSvc.spawnObject('eow_fbase_imperial_corporal', 'dantooine', long(0), float(-4230), float(3), float(-2394), float(0.703), float(0.710)) + + atst1 = stcSvc.spawnObject('object/mobile/shared_atst.iff', 'dantooine', long(0), float(-4291), float(3), float(-2433), float(0.819), float(-0.572)) + atst2 = stcSvc.spawnObject('object/mobile/shared_atst.iff', 'dantooine', long(0), float(-4154), float(3), float(-2383), float(0.264), float(0.964)) + + r5u0 = stcSvc.spawnObject('object/creature/npc/droid/shared_r4_base.iff', 'dantooine', long(0), float(-4231), float(3), float(-2363), float(0.264), float(0.964)) + r4h3 = stcSvc.spawnObject('object/creature/npc/droid/shared_r5_base.iff', 'dantooine', long(0), float(-4215), float(3), float(-2363), float(0.264), float(0.964)) + + commoner1 = stcSvc.spawnObject('object/mobile/shared_dressed_commoner_fat_human_male_01.iff', 'dantooine', long(0), float(-4224), float(3), float(-2366), float(0.264), float(0.964)) + commoner1.setOptionsBitmask(256) + commoner2 = stcSvc.spawnObject('object/mobile/shared_dressed_commoner_fat_human_female_01.iff', 'dantooine', long(0), float(-4238), float(3), float(-2365), float(0.264), float(0.964)) + commoner2.setOptionsBitmask(256) + return diff --git a/scripts/static_spawns/dathomir/ns_vs_smc_battle.py b/scripts/static_spawns/dathomir/ns_vs_smc_battle.py new file mode 100644 index 00000000..98c3f2cb --- /dev/null +++ b/scripts/static_spawns/dathomir/ns_vs_smc_battle.py @@ -0,0 +1,37 @@ +import sys +from resources.datatables import Options +from resources.datatables import State + +def addPlanetSpawns(core, planet): + stcSvc = core.staticService + objSvc = core.objectService + + Nightsister_Elder_1 = stcSvc.spawnObject('nightsister_elder', 'dathomir', long(0), float(-2520), float(130), float(1468), float(0.0007), float(0.999)) + Nightsister_Spellweaver_1 = stcSvc.spawnObject('nightsister_spell_weaver', 'dathomir', long(0), float(-2497), float(128), float(1484), float(0.0007), float(0.999)) + Nightsister_Spellweaver_2 = stcSvc.spawnObject('nightsister_spell_weaver', 'dathomir', long(0), float(-2539), float(128), float(1484), float(0.0007), float(0.999)) + Nightsister_Rancor_1 = stcSvc.spawnObject('nightsister_rancor', 'dathomir', long(0), float(-2480), float(126), float(1503), float(0.0007), float(0.999)) + Nightsister_RancorTamer_1 = stcSvc.spawnObject('nightsister_rancor_tamer', 'dathomir', long(0), float(-2495), float(122), float(1501), float(0.0007), float(0.999)) + Nightsister_Outcast_1 = stcSvc.spawnObject('nightsister_outcast', 'dathomir', long(0), float(-2480), float(119), float(1519), float(0.0007), float(0.999)) + Nightsister_Initiate_1 = stcSvc.spawnObject('nightsister_initiate', 'dathomir', long(0), float(-2494), float(124), float(1518), float(0.0007), float(0.999)) + Nightsister_Sentinel_1 = stcSvc.spawnObject('nightsister_sentinal', 'dathomir', long(0), float(-2516), float(124), float(1520), float(0.0007), float(0.999)) + Nightsister_Stalker_1 = stcSvc.spawnObject('nightsister_stalker', 'dathomir', long(0), float(-2516), float(128), float(1503), float(0.0007), float(0.999)) + Nightsister_Sentinel_2 = stcSvc.spawnObject('nightsister_sentinal', 'dathomir', long(0), float(-2516), float(124), float(1520), float(0.0007), float(0.999)) + Nightsister_Initiate_1 = stcSvc.spawnObject('nightsister_initiate', 'dathomir', long(0), float(-2540), float(125), float(1521), float(0.0007), float(0.999)) + Nightsister_Outcast_2 = stcSvc.spawnObject('nightsister_outcast', 'dathomir', long(0), float(-2557), float(125), float(1522), float(0.0007), float(0.999)) + Nightsister_Rancor_2 = stcSvc.spawnObject('nightsister_rancor', 'dathomir', long(0), float(-2556), float(125), float(1505), float(0.0007), float(0.999)) + Nightsister_RancorTamer_2 = stcSvc.spawnObject('nightsister_rancor_tamer', 'dathomir', long(0), float(-2540), float(126), float(1504), float(0.0007), float(0.999)) + + SMC_Councilwoman_1 = stcSvc.spawnObject('singing_mtn_clan_councilwoman', 'dathomir', long(0), float(-2520), float(130), float(1598), float(0.999), float(0.002)) + SMC_Archwitch_1 = stcSvc.spawnObject('singing_mtn_clan_arch_witch', 'dathomir', long(0), float(-2543), float(131), float(1585), float(0.999), float(0.002)) + SMC_Archwitch_2 = stcSvc.spawnObject('singing_mtn_clan_arch_witch', 'dathomir', long(0), float(-2498), float(124), float(1585), float(0.999), float(0.002)) + SMC_Dragoon_1 = stcSvc.spawnObject('singing_mtn_clan_dragoon', 'dathomir', long(0), float(-2516), float(123), float(1565), float(0.999), float(0.002)) + SMC_RancorTamer_1 = stcSvc.spawnObject('singing_mtn_clan_rancor_tamer', 'dathomir', long(0), float(-2497), float(121), float(1568), float(0.999), float(0.002)) + SMC_Rancor_1 = stcSvc.spawnObject('singing_mountain_clan_rancor', 'dathomir', long(0), float(-2481), float(119), float(1568), float(0.999), float(0.002)) + SMC_RancorTamer_2 = stcSvc.spawnObject('singing_mtn_clan_rancor_tamer', 'dathomir', long(0), float(-2543), float(128), float(1566), float(0.999), float(0.002)) + SMC_Rancor_2 = stcSvc.spawnObject('singing_mountain_clan_rancor', 'dathomir', long(0), float(-2556), float(130), float(1564), float(0.999), float(0.002)) + SMC_Scout_1 = stcSvc.spawnObject('singing_mtn_clan_scout', 'dathomir', long(0), float(-2481), float(118), float(1547), float(0.999), float(0.002)) + SMC_Initiate_1 = stcSvc.spawnObject('singing_mtn_clan_initiate', 'dathomir', long(0), float(-2497), float(120), float(1547), float(0.999), float(0.002)) + SMC_Sentry_1 = stcSvc.spawnObject('singing_mountain_clan_sentry', 'dathomir', long(0), float(-2515), float(122), float(1547), float(0.999), float(0.002)) + SMC_Initiate_1 = stcSvc.spawnObject('singing_mtn_clan_initiate', 'dathomir', long(0), float(-2543), float(126), float(1547), float(0.999), float(0.002)) + SMC_Scout_1 = stcSvc.spawnObject('singing_mtn_clan_scout', 'dathomir', long(0), float(-2556), float(127), float(1547), float(0.999), float(0.002)) + return diff --git a/scripts/static_spawns/lok/factional_recruiters.py b/scripts/static_spawns/lok/factional_recruiters.py new file mode 100644 index 00000000..8a6e3cd3 --- /dev/null +++ b/scripts/static_spawns/lok/factional_recruiters.py @@ -0,0 +1,18 @@ +import sys +# Project SWG: Imperial Recruiters tatooine: Static Spawns +# (C)2014 ProjectSWG + + + +from resources.datatables import Options +from resources.datatables import State + +def addPlanetSpawns(core, planet): + + stcSvc = core.staticService + objSvc = core.objectService + #recruiter Imp Outpost + + stcSvc.spawnObject('object/mobile/shared_dressed_imperial_officer_m_4.iff', 'lok', long(0), float(-1843), float(12), float(-3069), float(0.71), float(0), float(0.70), float(0)) + + return \ No newline at end of file diff --git a/scripts/static_spawns/lok/nyms_stronghold.py b/scripts/static_spawns/lok/nyms_stronghold.py new file mode 100644 index 00000000..c45e284d --- /dev/null +++ b/scripts/static_spawns/lok/nyms_stronghold.py @@ -0,0 +1,18 @@ +import sys +# Project SWG: Imperial Recruiters tatooine: Static Spawns +# (C)2014 ProjectSWG + + + +from resources.datatables import Options +from resources.datatables import State + +def addPlanetSpawns(core, planet): + + stcSvc = core.staticService + objSvc = core.objectService + #recruiter Imp Outpost + + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_03.iff', 'lok', long(0), float(366), float(9), float(5202), float(0.71), float(0), float(0.70), float(0)) + + return \ No newline at end of file diff --git a/scripts/static_spawns/naboo/deeja_peak.py b/scripts/static_spawns/naboo/deeja_peak.py new file mode 100644 index 00000000..6fdf650b --- /dev/null +++ b/scripts/static_spawns/naboo/deeja_peak.py @@ -0,0 +1,15 @@ +import sys +from resources.datatables import Options +from resources.datatables import StateStatus + + +def addPlanetSpawns(core, planet): + + stcSvc = core.staticService + objSvc = core.objectService + + #junkdealer + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'naboo', long(0), float(5135), float(346.5), float(-1514), float(0.707), float(0.707)) + + + return diff --git a/scripts/static_spawns/naboo/factional_recruiters.py b/scripts/static_spawns/naboo/factional_recruiters.py new file mode 100644 index 00000000..4be2c940 --- /dev/null +++ b/scripts/static_spawns/naboo/factional_recruiters.py @@ -0,0 +1,24 @@ +import sys +# Project SWG: Imperial Recruiters Naboo: Static Spawns +# (C)2014 ProjectSWG + + + +from resources.datatables import Options +from resources.datatables import State + +def addPlanetSpawns(core, planet): + + stcSvc = core.staticService + objSvc = core.objectService + #recruiter theed + stcSvc.spawnObject('object/mobile/shared_dressed_imperial_officer_m_3.iff', 'naboo', long(0), float(-4927.9), float(6), float(4230.5), float(-0.998), float(0), float(0.06), float(0)) + + #deeja Peek + stcSvc.spawnObject('object/mobile/shared_dressed_imperial_officer_m_5.iff', 'naboo', long(0), float(5307), float(326), float(-1584), float(0), float(0), float(0), float(0)) + + #Rebrecruiter Moenia + stcSvc.spawnObject('object/mobile/shared_dressed_rebel_recruiter_human_female_02.iff', 'naboo', long(0), float(4827), float(4), float(-4697), float(0), float(-0.707), float(0), float(0.707)) + + + return \ No newline at end of file diff --git a/scripts/static_spawns/naboo/kaadara.py b/scripts/static_spawns/naboo/kaadara.py new file mode 100644 index 00000000..bb48cb72 --- /dev/null +++ b/scripts/static_spawns/naboo/kaadara.py @@ -0,0 +1,12 @@ + +import sys +from resources.datatables import Options +from resources.datatables import StateStatus + + +def addPlanetSpawns(core, planet): + + + #junkdealer will be added as soon as i find coords + + return diff --git a/scripts/static_spawns/naboo/keren.py b/scripts/static_spawns/naboo/keren.py new file mode 100644 index 00000000..2c6c6ce0 --- /dev/null +++ b/scripts/static_spawns/naboo/keren.py @@ -0,0 +1,16 @@ +import sys +from resources.datatables import Options +from resources.datatables import StateStatus + + +def addPlanetSpawns(core, planet): + + stcSvc = core.staticService + objSvc = core.objectService + + #junkdealer + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'naboo', long(0), float(1242), float(13), float(2732), float(0.707), float(0.707)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'naboo', long(0), float(1774), float(12.5), float(2625), float(0.707), float(0.707)) + + + return diff --git a/scripts/static_spawns/naboo/moenia.py b/scripts/static_spawns/naboo/moenia.py new file mode 100644 index 00000000..4c63c0fc --- /dev/null +++ b/scripts/static_spawns/naboo/moenia.py @@ -0,0 +1,17 @@ + +import sys +from resources.datatables import Options +from resources.datatables import StateStatus + + +def addPlanetSpawns(core, planet): + + stcSvc = core.staticService + objSvc = core.objectService + + # TODO Check all NPCs for personalized scripting, change format. + + #Junkdealer + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_03.iff', 'naboo', long(0), float(4318.83), float(5.15), float(-4797.57), float(0), float(1)) + + return diff --git a/scripts/static_spawns/naboo/theed.py b/scripts/static_spawns/naboo/theed.py new file mode 100644 index 00000000..292e9649 --- /dev/null +++ b/scripts/static_spawns/naboo/theed.py @@ -0,0 +1,24 @@ +import sys +from resources.datatables import Options +from resources.datatables import StateStatus + + +def addPlanetSpawns(core, planet): + + stcSvc = core.staticService + objSvc = core.objectService + + #junkdealer + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'naboo', long(0), float(-5694), float(6.5), float(4182), float(0.707), float(-0.707)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'naboo', long(0), float(-5717), float(6.5), float(4159), float(0.71), float(0.71)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'naboo', long(0), float(-5086), float(6), float(4142), float(0.71), float(0.71)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'naboo', long(0), float(-5147), float(6.5), float(4158), float(0.71), float(0.71)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'naboo', long(0), float(-5114), float(6.5), float(4161), float(0.71), float(-0.71)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'naboo', long(0), float(-5222), float(6), float(4217), float(0.71), float(-0.71)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'naboo', long(0), float(-5127), float(6), float(4239), float(0.71), float(0.71)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'naboo', long(0), float(-5761), float(6.6), float(4234), float(0.71), float(0.71)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'naboo', long(0), float(-5475), float(6), float(4105), float(0.71), float(0.71)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'naboo', long(0), float(-4999), float(6), float(4119), float(0.71), float(0.71)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'naboo', long(0), float(-5883), float(6), float(4214), float(0.71), float(0.71)) + + return diff --git a/scripts/static_spawns/rori/emperors_hand.py b/scripts/static_spawns/rori/emperors_hand.py index c7f61f9d..4d94581f 100644 --- a/scripts/static_spawns/rori/emperors_hand.py +++ b/scripts/static_spawns/rori/emperors_hand.py @@ -11,5 +11,5 @@ def addPlanetSpawns(core, planet): respawntimer = random.nextInt((maxtime - mintime) + 1800) - stcSvc.spawnObject('emperors_hand', 'rori', long(0), float(5283), float(80), float(5746), float(0.641), float(0.767),float(0),float(0), int(respawntimer)) + stcSvc.spawnObject('restuss_emperors_hand', 'rori', long(0), float(5283), float(80), float(5746), float(0.641), float(0.767),float(0),float(0), int(respawntimer)) return \ No newline at end of file diff --git a/scripts/static_spawns/talus/factional_recruiters.py b/scripts/static_spawns/talus/factional_recruiters.py new file mode 100644 index 00000000..31a1a19c --- /dev/null +++ b/scripts/static_spawns/talus/factional_recruiters.py @@ -0,0 +1,21 @@ +import sys +# Project SWG: Imperial Recruiters talus: Static Spawns +# (C)2014 ProjectSWG + + + +from resources.datatables import Options +from resources.datatables import State + +def addPlanetSpawns(core, planet): + + stcSvc = core.staticService + objSvc = core.objectService + #recruiter Imp Outpost + stcSvc.spawnObject('object/mobile/shared_dressed_imperial_officer_m_6.iff', 'talus', long(0), float(-2192), float(20), float(2269), float(0), float(0), float(0), float(0)) + + #Reb recruiter + dearicCantina = core.objectService.getObject(long(3175388)) + stcSvc.spawnObject('object/mobile/shared_dressed_rebel_recruiter_human_female_02.iff', 'talus', dearicCantina.getCellByCellNumber(11), float(-25.8), float(-0.9), float(-0.7), float(0), float(-0.707), float(0), float(0.707)) + + return \ No newline at end of file diff --git a/scripts/static_spawns/tatooine/anchorhead.py b/scripts/static_spawns/tatooine/anchorhead.py index 5e2fb31e..ff4809f1 100644 --- a/scripts/static_spawns/tatooine/anchorhead.py +++ b/scripts/static_spawns/tatooine/anchorhead.py @@ -16,9 +16,6 @@ def addPlanetSpawns(core, planet): # TODO Check all NPCs for personalized scripting, change format. # Cantina Interior - rebRecruiter = stcSvc.spawnObject('object/mobile/shared_dressed_rebel_recruiter_human_female_01.iff', 'tatooine', long(1213345), float(-2.2), float(0.4), float(-5.4), float(0), float(0)) - #rebRecruiter.setOptionsBitmask(264) - borraSetas = stcSvc.spawnObject('object/mobile/shared_dressed_commoner_tatooine_rodian_female_03.iff', 'tatooine', long(1213345), float(9.8), float(0.4), float(-1.2), float(-0.65), float(0.75)) #borraSetas.setCustomName2('Borra Setas') #borraSetas.setOptionsBitmask(256) @@ -47,5 +44,9 @@ def addPlanetSpawns(core, planet): Sorna = stcSvc.spawnObject('object/mobile/shared_dressed_tatooine_tosche_sorna.iff', 'tatooine', long(0), float(-135), float(52.0), float(-5331), float(0.36), float(0.93)) Sorna.setCustomName2('Sorna') Sorna.setOptionsBitmask(256) + + #Junk Dealer + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'tatooine', long(0), float(110), float(52), float(-5428), float(0.71), float(0.71)) + return diff --git a/scripts/static_spawns/tatooine/ancient_krayt_dragon_skeleton.py b/scripts/static_spawns/tatooine/ancient_krayt_dragon_skeleton.py new file mode 100644 index 00000000..47e9b0b3 --- /dev/null +++ b/scripts/static_spawns/tatooine/ancient_krayt_dragon_skeleton.py @@ -0,0 +1,27 @@ +import sys +# Project SWG: Ancient Krayt Skeleton: Static Spawns +# (C)2014 ProjectSWG + + + +from resources.datatables import Options +from resources.datatables import State + +def addPlanetSpawns(core, planet): + + + stcSvc = core.staticService + objSvc = core.objectService + + # TODO Check all NPCs for personalized scripting, change format. + + stcSvc.spawnObject('canyon_krayt_dragon', 'tatooine', long(0), float(-4528.8), float(28.3), float(-4302.4), float(0), float(0), float(0), float(0), 1800) + stcSvc.spawnObject('juvenile_canyon_krayt_dragon', 'tatooine', long(0), float(-4521.2), float(27.1), float(-4298.1), float(0), float(0), float(0), float(0), 1500) + stcSvc.spawnObject('giant_canyon_krayt_dragon', 'tatooine', long(0), float(-4669.8), float(30.0), float(-4477.7), float(0), float(0), float(0), float(0), 1800) + stcSvc.spawnObject('grand_krayt_dragon', 'tatooine', long(0), float(-4555.0), float(49.2), float(-4459.3), float(0), float(0), float(0), float(0), 1800) + stcSvc.spawnObject('krayt_dragon_ancient', 'tatooine', long(0), float(-4713.3), float(46.5), float(-4288.3), float(0), float(0), float(0), float(0), 1800) + stcSvc.spawnObject('adolescent_krayt_dragon', 'tatooine', long(0), float(-4747.2), float(32.5), float(-4424.6), float(0), float(0), float(0), float(0), 1500) + + + return + diff --git a/scripts/static_spawns/tatooine/bestine.py b/scripts/static_spawns/tatooine/bestine.py index a636f8c3..7a124bd6 100644 --- a/scripts/static_spawns/tatooine/bestine.py +++ b/scripts/static_spawns/tatooine/bestine.py @@ -96,5 +96,12 @@ def addPlanetSpawns(core, planet): #calebKnolar.setCustomName2('Major Caleb Knolar') #calebKnolar.setOptionsBitmask(256) + #Junk Dealers + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'tatooine', long(0), float(-1287), float(12), float(-3655), float(0.71), float(0.71)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'tatooine', long(0), float(-1259), float(12), float(-3673), float(0.71), float(-0.71)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'tatooine', long(0), float(-1026), float(10), float(-3557), float(0), float(0)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'tatooine', long(0), float(-1260), float(12), float(-3573), float(0), float(1)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'tatooine', long(0), float(-1126), float(12), float(-3674), float(0.71), float(-0.71)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'tatooine', long(0), float(-1118), float(12), float(-3687), float(0), float(0)) return diff --git a/scripts/static_spawns/tatooine/factional_recruiters.py b/scripts/static_spawns/tatooine/factional_recruiters.py new file mode 100644 index 00000000..6f9b4137 --- /dev/null +++ b/scripts/static_spawns/tatooine/factional_recruiters.py @@ -0,0 +1,30 @@ +import sys +# Project SWG: Factional Recruiters tatooine: Static Spawns +# (C)2014 ProjectSWG + + + +from resources.datatables import Options +from resources.datatables import State + +def addPlanetSpawns(core, planet): + + stcSvc = core.staticService + objSvc = core.objectService + #Imp recruiter Eisley + smallImpHouse = core.objectService.getObject(long(1280129)) + stcSvc.spawnObject('object/mobile/shared_dressed_imperial_officer_f.iff', 'tatooine', smallImpHouse.getCellByCellNumber(3), float(-6), float(1), float(9.2), float(0.71), float(0), float(0.70), float(0)) + + #Imp recruiter Bestine + #Hill + stcSvc.spawnObject('object/mobile/shared_dressed_imperial_officer_m_5.iff', 'tatooine', long(0), float(-1138), float(98), float(-3897), float(0.71), float(0), float(0.70), float(0)) + #outside SP + stcSvc.spawnObject('object/mobile/shared_dressed_imperial_officer_m_3.iff', 'tatooine', long(0), float(-1275), float(12), float(-3594), float(0), float(0), float(0), float(0)) + + # Reb Recruiter + + #Anchorhead cantina + anchCantina = core.objectService.getObject(long(1213343)) + stcSvc.spawnObject('object/mobile/shared_dressed_rebel_recruiter_human_female_01.iff', 'tatooine', anchCantina.getCellByCellNumber(2), float(-2.2), float(0.4), float(-5.4), float(0), float(0), float(0), float(0)) + + return \ No newline at end of file diff --git a/scripts/static_spawns/tatooine/jabbas_palace.py b/scripts/static_spawns/tatooine/jabbas_palace.py index 036fc2a1..ea2ca745 100644 --- a/scripts/static_spawns/tatooine/jabbas_palace.py +++ b/scripts/static_spawns/tatooine/jabbas_palace.py @@ -13,70 +13,59 @@ def addPlanetSpawns(core, planet): stcSvc = core.staticService objSvc = core.objectService + building = core.objectService.getObject(long(-466404040703346823)) + # TODO Check all NPCs for personalized scripting, change format. # TODO Verify proper cell IDs once Jabba's Palace is spawning properly again. - reelo = stcSvc.spawnObject('object/mobile/shared_reelo_baruk.iff', 'tatooine', long(26560), float(-3.5), float(0.2), float(113.5), float(0), float(0)) - #reelo.setCustomName2('Reelo Baruk') - #reelo.setOptionsBitmask(264) + #reelo baruk + stcSvc.spawnObject('object/mobile/shared_reelo_baruk.iff', 'tatooine', building.getCellByCellNumber(1), float(-3.5), float(0.2), float(113.5), float(0), float(0), float(0), float(0)) - reeyees = stcSvc.spawnObject('object/mobile/shared_dressed_gran_thug_male_01.iff', 'tatooine', long(26560), float(5.8), float(0.2), float(115.7), float(0.70), float(-0.71)) - #reeyees.setCustomName2('Ree-Yees') - #reeyees.setOptionsBitmask(264) - - ephant = stcSvc.spawnObject('object/mobile/shared_ephant_mon.iff', 'tatooine', long(26564), float(-6.1), float(5.8), float(86.1), float(0), float(0)) - #ephant.setCustomName2('Ephant Mon') - #ephant.setOptionsBitmask(264) - - porcellus = stcSvc.spawnObject('object/mobile/shared_dressed_porcellus.iff', 'tatooine', long(26572), float(-44.0), float(3.0), float(63.4), float(0), float(0)) - #porcellus.setCustomName2('Porcellus') - #porcellus.setOptionsBitmask(264) - - barada = stcSvc.spawnObject('object/mobile/shared_barada.iff', 'tatooine', long(26596), float(31.2), float(0.2), float(-1.0), float(0.98), float(-0.17)) - #barada.setCustomName2('Barada') - #barada.setOptionsBitmask(264) + #ree yees + stcSvc.spawnObject('object/mobile/shared_dressed_gran_thug_male_01.iff', 'tatooine', building.getCellByCellNumber(1), float(5.8), float(0.2), float(115.7), float(-0.71), float(0), float(0.7), float(0)) - bibMain = stcSvc.spawnObject('object/mobile/shared_bib_fortuna.iff', 'tatooine', long(26582), float(-11.1), float(2.0), float(49.5), float(0.70), float(0.71)) - #bibMain.setCustomName2('Bib Fortuna') - #bibMain.setOptionsBitmask(264) + #ephantmon + stcSvc.spawnObject('object/mobile/shared_ephant_mon.iff', 'tatooine', building.getCellByCellNumber(4), float(-6.1), float(5.8), float(86.1), float(0), float(0), float(0), float(0)) + + #porcellus + stcSvc.spawnObject('object/mobile/shared_dressed_porcellus.iff', 'tatooine', building.getCellByCellNumber(12), float(-44.0), float(3.0), float(63.4), float(0), float(0), float(0), float(0)) + + #barada + stcSvc.spawnObject('object/mobile/shared_barada.iff', 'tatooine', building.getCellByCellNumber(34), float(31.2), float(0.2), float(-1.0), float(-0.17), float(0), float(0.98), float(0)) + + #Bib Fortuna + stcSvc.spawnObject('object/mobile/shared_bib_fortuna.iff', 'tatooine', building.getCellByCellNumber(22), float(-11.1), float(2.0), float(49.5), float(0.71), float(0), float(0.70), float(0)) - jabba = stcSvc.spawnObject('object/mobile/shared_jabba_the_hutt.iff', 'tatooine', long(26582), float(-17.0), float(2.8), float(44.9), float(0.70), float(0.71)) - #jabba.setCustomName2('Jabba the Hutt') - #jabba.setOptionsBitmask(264) + #Jabba + stcSvc.spawnObject('object/mobile/shared_jabba_the_hutt.iff', 'tatooine', building.getCellByCellNumber(22), float(-17.0), float(2.8), float(44.9), float(0.71), float(0), float(0.70), float(0)) - oola = stcSvc.spawnObject('object/mobile/shared_oola.iff', 'tatooine', long(26582), float(-10.3), float(2.0), float(43.9), float(0.70), float(-0.71)) - #oola.setCustomName2('Oola') - #oola.setOptionsBitmask(264) + #oola + stcSvc.spawnObject('object/mobile/shared_oola.iff', 'tatooine', building.getCellByCellNumber(22), float(-10.3), float(2.0), float(43.9), float(-0.71), float(0), float(0.70), float(0)) + + #Boba Fett + stcSvc.spawnObject('object/mobile/shared_boba_fett.iff', 'tatooine', building.getCellByCellNumber(22), float(-1.0), float(3.0), float(33.1), float(0), float(0), float(0), float(0)) + + #EV9D9 + stcSvc.spawnObject('object/mobile/shared_ev_9d9.iff', 'tatooine', building.getCellByCellNumber(14), float(18.8), float(0.2), float(78.7), float(0), float(0), float(1.0), float(0)) - bobaFett = stcSvc.spawnObject('object/mobile/shared_boba_fett.iff', 'tatooine', long(26582), float(-1.0), float(3.0), float(33.1), float(0), float(0)) - #bobaFett.setCustomName2('Boba Fett') - #bobaFett.setOptionsBitmask(264) + #malakili + stcSvc.spawnObject('object/mobile/shared_malakili.iff', 'tatooine', building.getCellByCellNumber(37), float(17.3), float(-11.0), float(43.8), float(0), float(0), float(0), float(0)) + + #Jabba Rancor + stcSvc.spawnObject('object/mobile/shared_rancor_static.iff', 'tatooine', building.getCellByCellNumber(38), float(0), float(-11.0), float(43.8), float(-0.9), float(0), float(0.42), float(0)) - ev9d9 = stcSvc.spawnObject('object/mobile/shared_ev_9d9.iff', 'tatooine', long(26574), float(18.8), float(0.2), float(78.7), float(1.0), float(0)) - #ev9d9.setCustomName2('EV-9D9') - #ev9d9.setOptionsBitmask(264) + #Max Rebo + stcSvc.spawnObject('object/mobile/shared_max_rebo.iff', 'tatooine', building.getCellByCellNumber(22), float(-1.4), float(3.0), float(26.9), float(-0.9), float(0), float(0.42), float(0)) + + #Droopy Mccool + stcSvc.spawnObject('object/mobile/shared_droopy_mccool.iff', 'tatooine', building.getCellByCellNumber(22), float(-3.9), float(3.0), float(26.1), float(-0.9), float(0), float(0.42), float(0)) - malakili = stcSvc.spawnObject('object/mobile/shared_malakili.iff', 'tatooine', long(26599), float(17.3), float(-11.0), float(43.8), float(0), float(0)) - #malakili.setCustomName2('Malakili') - #malakili.setOptionsBitmask(264) - -# TODO Need to somehow get the cellID for the Rancor Pit or it will NEVER be spawned. - - maxRebo = stcSvc.spawnObject('object/mobile/shared_max_rebo.iff', 'tatooine', long(26582), float(-1.4), float(3.0), float(26.9), float(0.42), float(-0.9)) - #maxRebo.setCustomName2('Max Rebo') - #maxRebo.setOptionsBitmask(264) - - droopy = stcSvc.spawnObject('object/mobile/shared_droopy_mccool.iff', 'tatooine', long(26582), float(-3.9), float(3.0), float(26.1), float(0.42), float(-0.9)) - #droopy.setCustomName2('Droopy McCool') - #droopy.setOptionsBitmask(264) - - sySnootles = stcSvc.spawnObject('object/mobile/shared_sy_snootles.iff', 'tatooine', long(26582), float(-1.4), float(3.0), float(29.8), float(0.42), float(-0.)) - #sySnootles.setCustomName2('Sy Snootles') - #sySnootles.setOptionsBitmask(264) - - g5po = stcSvc.spawnObject('object/mobile/shared_3po_protocol_droid_red.iff', 'tatooine', long(26582), float(-14.3), float(2.0), float(47.4), float(0.70), float(0.71)) - #g5po.setCustomName2('G5-PO') - #g5po.setOptionsBitmask(264) + #Sy Snootles + stcSvc.spawnObject('object/mobile/shared_sy_snootles.iff', 'tatooine', building.getCellByCellNumber(22), float(-1.4), float(3.0), float(29.8), float(-0.1), float(0), float(0.42), float(0)) + + # G5P0 + stcSvc.spawnObject('object/mobile/shared_3po_protocol_droid_red.iff', 'tatooine', building.getCellByCellNumber(22), float(-14.3), float(2.0), float(47.4), float(0.71), float(0), float(0.70), float(0)) + return diff --git a/scripts/static_spawns/tatooine/krayt_dragon_skeleton.py b/scripts/static_spawns/tatooine/krayt_dragon_skeleton.py new file mode 100644 index 00000000..c0aea5fd --- /dev/null +++ b/scripts/static_spawns/tatooine/krayt_dragon_skeleton.py @@ -0,0 +1,31 @@ +import sys +# Project SWG: Krayt Skeleton: Static Spawns +# (C)2014 ProjectSWG + + + +from resources.datatables import Options +from resources.datatables import State + +def addPlanetSpawns(core, planet): + + + stcSvc = core.staticService + objSvc = core.objectService + + # TODO Check all NPCs for personalized scripting, change format. + + # -6205, 5054 + stcSvc.spawnObject('canyon_krayt_dragon', 'tatooine', long(0), float(-6216.0), float(30.8), float(5033.9), float(0), float(0), float(0), float(0), 1800) + stcSvc.spawnObject('juvenile_canyon_krayt_dragon', 'tatooine', long(0), float(-6213.8), float(31.1), float(5021.3), float(0), float(0), float(0), float(0), 1500) + + # giant canyon krayt + stcSvc.spawnObject('giant_canyon_krayt_dragon', 'tatooine', long(0), float(5728.5), float(56.6), float(3784.7), float(0), float(0), float(0), float(0), 1800) + + # -6750, 3569 + stcSvc.spawnObject('grand_krayt_dragon', 'tatooine', long(0), float(-6718.3), float(175.6), float(3499.6), float(0), float(0), float(0), float(0), 1800) + stcSvc.spawnObject('grand_krayt_dragon', 'tatooine', long(0), float(-6796.1), float(194.0), float(3514.6), float(0), float(0), float(0), float(0), 1800) + stcSvc.spawnObject('adolescent_krayt_dragon', 'tatooine', long(0), float(-6789.0), float(127.7), float(3661.2), float(0), float(0), float(0), float(0), 1500) + + return + diff --git a/scripts/static_spawns/tatooine/krayt_graveyard.py b/scripts/static_spawns/tatooine/krayt_graveyard.py new file mode 100644 index 00000000..04e5a6d4 --- /dev/null +++ b/scripts/static_spawns/tatooine/krayt_graveyard.py @@ -0,0 +1,59 @@ +import sys +# Project SWG: Krayt Graveyard: Static Spawns +# (C)2014 ProjectSWG + + + +from resources.datatables import Options +from resources.datatables import State + +def addPlanetSpawns(core, planet): + + + stcSvc = core.staticService + objSvc = core.objectService + + # TODO Check all NPCs for personalized scripting, change format. + + # Canyons, 1 canyon will always spawn together with 1 juveline + stcSvc.spawnObject('canyon_krayt_dragon', 'tatooine', long(0), float(7227.5), float(33.2), float(4495.8), float(0), float(0), float(0), float(0), 1800) + stcSvc.spawnObject('canyon_krayt_dragon', 'tatooine', long(0), float(7178), float(24.5), float(4429.8), float(0), float(0), float(0), float(0), 1800) + stcSvc.spawnObject('canyon_krayt_dragon', 'tatooine', long(0), float(7035.5), float(22.8), float(4337.3), float(0), float(0), float(0), float(0), 1800) + stcSvc.spawnObject('canyon_krayt_dragon', 'tatooine', long(0), float(6872.9), float(41.7), float(4246.8), float(0), float(0), float(0), float(0), 1800) + stcSvc.spawnObject('canyon_krayt_dragon', 'tatooine', long(0), float(6564.1), float(87.7), float(4484.8), float(0), float(0), float(0), float(0), 1800) + stcSvc.spawnObject('canyon_krayt_dragon', 'tatooine', long(0), float(7523.5), float(4.5), float(4655.5), float(0), float(0), float(0), float(0), 1800) + + stcSvc.spawnObject('juvenile_canyon_krayt_dragon', 'tatooine', long(0), float(7233.2), float(30.1), float(4487.1), float(0), float(0), float(0), float(0), 1500) + stcSvc.spawnObject('juvenile_canyon_krayt_dragon', 'tatooine', long(0), float(7172.2), float(22.5), float(4441.1), float(0), float(0), float(0), float(0), 1500) + stcSvc.spawnObject('juvenile_canyon_krayt_dragon', 'tatooine', long(0), float(7043.2), float(22.1), float(4344.1), float(0), float(0), float(0), float(0), 1500) + stcSvc.spawnObject('juvenile_canyon_krayt_dragon', 'tatooine', long(0), float(6877.8), float(45.5), float(4237.0), float(0), float(0), float(0), float(0), 1500) + stcSvc.spawnObject('juvenile_canyon_krayt_dragon', 'tatooine', long(0), float(6575.9), float(92.5), float(4487.7), float(0), float(0), float(0), float(0), 1500) + stcSvc.spawnObject('juvenile_canyon_krayt_dragon', 'tatooine', long(0), float(7513.2), float(4.1), float(4656.1), float(0), float(0), float(0), float(0), 1500) + + # giant canyon + + stcSvc.spawnObject('giant_canyon_krayt_dragon', 'tatooine', long(0), float(7515.5), float(8.5), float(4556.5), float(0), float(0), float(0), float(0), 1800) + stcSvc.spawnObject('giant_canyon_krayt_dragon', 'tatooine', long(0), float(7417.5), float(7.7), float(4597.5), float(0), float(0), float(0), float(0), 1800) + stcSvc.spawnObject('giant_canyon_krayt_dragon', 'tatooine', long(0), float(7300.0), float(23.3), float(4462.0), float(0), float(0), float(0), float(0), 1800) + stcSvc.spawnObject('giant_canyon_krayt_dragon', 'tatooine', long(0), float(7140.5), float(57.0), float(4322.5), float(0), float(0), float(0), float(0), 1800) + + # grand + + stcSvc.spawnObject('grand_krayt_dragon', 'tatooine', long(0), float(7555.5), float(15.2), float(4488.8), float(0), float(0), float(0), float(0), 1800) + stcSvc.spawnObject('grand_krayt_dragon', 'tatooine', long(0), float(7429.9), float(7.2), float(4477.3), float(0), float(0), float(0), float(0), 1800) + + # ancient + + stcSvc.spawnObject('krayt_dragon_ancient', 'tatooine', long(0), float(6836.5), float(25.2), float(4321.8), float(0), float(0), float(0), float(0), 1800) + stcSvc.spawnObject('krayt_dragon_ancient', 'tatooine', long(0), float(7491.3), float(8.2), float(4484.8), float(0), float(0), float(0), float(0), 1800) + + # adolescent + stcSvc.spawnObject('adolescent_krayt_dragon', 'tatooine', long(0), float(7525.1), float(28.2), float(4387.5), float(0), float(0), float(0), float(0), 1500) + stcSvc.spawnObject('adolescent_krayt_dragon', 'tatooine', long(0), float(7269.8), float(62.4), float(4352.8), float(0), float(0), float(0), float(0), 1500) + stcSvc.spawnObject('adolescent_krayt_dragon', 'tatooine', long(0), float(7077.5), float(20.0), float(4447.3), float(0), float(0), float(0), float(0), 1500) + stcSvc.spawnObject('adolescent_krayt_dragon', 'tatooine', long(0), float(7003.0), float(86.2), float(4200.4), float(0), float(0), float(0), float(0), 1500) + stcSvc.spawnObject('adolescent_krayt_dragon', 'tatooine', long(0), float(6726.8), float(19.5), float(4288.6), float(0), float(0), float(0), float(0), 1500) + + + return + diff --git a/scripts/static_spawns/tatooine/mos_eisley.py b/scripts/static_spawns/tatooine/mos_eisley.py index 0007f1f0..158dbc02 100644 --- a/scripts/static_spawns/tatooine/mos_eisley.py +++ b/scripts/static_spawns/tatooine/mos_eisley.py @@ -141,10 +141,10 @@ def addPlanetSpawns(core, planet): #City Hall Interior #Lucky Despot Interior TODO: Check Cell IDs for Spawned NPCS inside once Lucky Despot is spawning properly again. + building = core.objectService.getObject(long(-466404040703447347)) - hansolo1 = stcSvc.spawnObject('object/mobile/shared_han_solo.iff', 'tatooine', long(26949), float(32.3), float(7.0), float(1.6), float(0), float(0)) - #hansolo1.setCustomName2('Han Solo') - #hansolo1.setOptionsBitmask(256) + #Han solo + stcSvc.spawnObject('object/mobile/shared_han_solo.iff', 'tatooine', building.getCellByCellNumber(9), float(32.3), float(7.0), float(1.6), float(0), float(0), float(0), float(0)) #Medical Center Interior @@ -313,12 +313,7 @@ def addPlanetSpawns(core, planet): #Eisley Ship Controller stcSvc.spawnObject('object/mobile/shared_distant_ship_controller.iff', 'tatooine', long(0), float(3542.3), float(5.0), float(-4826.0), float(0.42), float(0.91)) - #recruiters - impRecruiter = stcSvc.spawnObject('object/mobile/shared_dressed_imperial_officer_f.iff', 'tatooine', long(1280132), float(-6), float(1), float(9.2), float(0.70), float(0.71)) - #impRecruiter.setOptionsBitmask(264) - - #Profession Counselor stcSvc.spawnObject('object/mobile/shared_respec_seller_f_1.iff', 'tatooine', long(0), float(3533.14), float(5), float(-4788.86), float(-0.3327), float(0.9288)) diff --git a/scripts/static_spawns/tatooine/mos_eisley_kreetles.py b/scripts/static_spawns/tatooine/mos_eisley_kreetles.py index eaf5bf99..ba3f62e0 100644 --- a/scripts/static_spawns/tatooine/mos_eisley_kreetles.py +++ b/scripts/static_spawns/tatooine/mos_eisley_kreetles.py @@ -19,23 +19,20 @@ def addPlanetSpawns(core, planet): carrion_kreetle12 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3540), float(4), float(-5050), float(0), float(0), float(0), float(0), 30) carrion_kreetle13 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3533), float(4), float(-5070), float(0), float(0), float(0), float(0), 30) carrion_kreetle14 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3555), float(4), float(-5072), float(0), float(0), float(0), float(0), 30) - carrion_kreetle15 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3559), float(4), float(-5061), float(0), float(0), float(0), float(0), 30) - carrion_kreetle16 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3562), float(4), float(-5064), float(0), float(0), float(0), float(0), 30) + carrion_kreetle2 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3233), float(8), float(-4457), float(0), float(0), float(0), float(0), 30) carrion_kreetle21 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3223), float(8), float(-4447), float(0), float(0), float(0), float(0), 30) carrion_kreetle22 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3213), float(8), float(-4455), float(0), float(0), float(0), float(0), 30) carrion_kreetle23 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3235), float(8), float(-4440), float(0), float(0), float(0), float(0), 30) carrion_kreetle24 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3245), float(8), float(-4460), float(0), float(0), float(0), float(0), 30) - carrion_kreetle25 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3250), float(8), float(-4461), float(0), float(0), float(0), float(0), 30) - carrion_kreetle26 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3238), float(8), float(-4464), float(0), float(0), float(0), float(0), 30) + carrion_kreetle3 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3147), float(4), float(-4846), float(0), float(0), float(0), float(0), 30) carrion_kreetle31 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3137), float(4), float(-4856), float(0), float(0), float(0), float(0), 30) carrion_kreetle32 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3127), float(4), float(-4836), float(0), float(0), float(0), float(0), 30) carrion_kreetle35 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3145), float(4), float(-4852), float(0), float(0), float(0), float(0), 30) carrion_kreetle36 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3135), float(4), float(-4838), float(0), float(0), float(0), float(0), 30) - carrion_kreetle37 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3150), float(4), float(-4856), float(0), float(0), float(0), float(0), 30) - carrion_kreetle39 = stcSvc.spawnObject('carrion_kreetle', 'tatooine', long(0), float(3140), float(4), float(-4860), float(0), float(0), float(0), float(0), 30) + return \ No newline at end of file diff --git a/scripts/static_spawns/tatooine/mos_eisley_mites.py b/scripts/static_spawns/tatooine/mos_eisley_mites.py index fae8bcb0..74e6d37c 100644 --- a/scripts/static_spawns/tatooine/mos_eisley_mites.py +++ b/scripts/static_spawns/tatooine/mos_eisley_mites.py @@ -56,14 +56,7 @@ def addPlanetSpawns(core, planet): rockmite29 = stcSvc.spawnObject('rockmite', 'tatooine', long(0), float(3752), float(5), float(-4659), float(0), float(0), float(0), float(0), 30) rockmite210 = stcSvc.spawnObject('rockmite', 'tatooine', long(0), float(3769), float(5), float(-4650), float(0), float(0), float(0), float(0), 30) rockmite211 = stcSvc.spawnObject('rockmite', 'tatooine', long(0), float(3778), float(5), float(-4647), float(0), float(0), float(0), float(0), 30) - rockmite212 = stcSvc.spawnObject('rockmite', 'tatooine', long(0), float(3727), float(5), float(-4647), float(0), float(0), float(0), float(0), 30) - rockmite213 = stcSvc.spawnObject('rockmite', 'tatooine', long(0), float(3742), float(5), float(-4637), float(0), float(0), float(0), float(0), 30) - rockmite214 = stcSvc.spawnObject('rockmite', 'tatooine', long(0), float(3755), float(5), float(-4635), float(0), float(0), float(0), float(0), 30) - rockmite215 = stcSvc.spawnObject('rockmite', 'tatooine', long(0), float(3771), float(5), float(-4660), float(0), float(0), float(0), float(0), 30) - rockmite216 = stcSvc.spawnObject('rockmite', 'tatooine', long(0), float(3785), float(5), float(-4657), float(0), float(0), float(0), float(0), 30) - rockmite217 = stcSvc.spawnObject('rockmite', 'tatooine', long(0), float(3774), float(5), float(-4663), float(0), float(0), float(0), float(0), 30) - rockmite218 = stcSvc.spawnObject('rockmite', 'tatooine', long(0), float(3767), float(5), float(-4672), float(0), float(0), float(0), float(0), 30) - rockmite219 = stcSvc.spawnObject('rockmite', 'tatooine', long(0), float(3754), float(5), float(-4666), float(0), float(0), float(0), float(0), 30) - rockmite220 = stcSvc.spawnObject('rockmite', 'tatooine', long(0), float(3717), float(5), float(-4633), float(0), float(0), float(0), float(0), 30) + + return \ No newline at end of file diff --git a/scripts/static_spawns/tatooine/mos_eisley_shinn_bunker.py b/scripts/static_spawns/tatooine/mos_eisley_shinn_bunker.py index fd5ab6e6..603a619b 100644 --- a/scripts/static_spawns/tatooine/mos_eisley_shinn_bunker.py +++ b/scripts/static_spawns/tatooine/mos_eisley_shinn_bunker.py @@ -13,6 +13,7 @@ def addPlanetSpawns(core, planet): stcSvc = core.staticService objSvc = core.objectService + building = core.objectService.getObject(long(-466404038086555772)) # Shinn Mugger outisde @@ -40,22 +41,27 @@ def addPlanetSpawns(core, planet): shinn_guard_o2 = stcSvc.spawnObject('shinn_guard', 'tatooine', long(0), float(3423), float(7), float(-5461), float(0), float(0), float(0), float(0), 30) # Shinn Guards in Bunker - shinn_guard = stcSvc.spawnObject('shinn_guard', 'tatooine', long(15124075), float(-3.3), float(0.3), float(3.6), float(0), float(0), float(0), float(0), 30) - shinn_guard1 = stcSvc.spawnObject('shinn_guard', 'tatooine', long(15124075), float(-3.3), float(0.3), float(-4.1), float(0), float(0), float(0), float(0), 30) - shinn_guard2 = stcSvc.spawnObject('shinn_guard', 'tatooine', long(15124085), float(3.7), float(-3.3), float(5.2), float(0), float(0), float(0), float(0), 30) - shinn_guard3 = stcSvc.spawnObject('shinn_guard', 'tatooine', long(15124093), float(-4.3), float(-10.3), float(-6.2), float(0), float(0), float(0), float(0), 30) - shinn_guard4 = stcSvc.spawnObject('shinn_guard', 'tatooine', long(15124123), float(4.3), float(-13.8), float(6.9), float(0), float(0), float(0), float(0), 30) - shinn_guard5 = stcSvc.spawnObject('shinn_guard', 'tatooine', long(15124123), float(-2.1), float(-13.8), float(6.8), float(0), float(0), float(0), float(0), 30) - shinn_guard6 = stcSvc.spawnObject('shinn_guard', 'tatooine', long(15124123), float(-6.8), float(-13.8), float(6.7), float(0), float(0), float(0), float(0), 30) - shinn_guard7 = stcSvc.spawnObject('shinn_guard', 'tatooine', long(15124141), float(1.5), float(-20.8), float(-3.5), float(0), float(0), float(0), float(0), 30) - shinn_guard8 = stcSvc.spawnObject('shinn_guard', 'tatooine', long(15124142), float(-1.0), float(-20.7), float(11.0), float(0), float(0), float(0), float(0), 30) - shinn_guard9 = stcSvc.spawnObject('shinn_guard', 'tatooine', long(15124142), float(3.6), float(-20.7), float(11.4), float(0), float(0), float(0), float(0), 30) - shinn_guard10 = stcSvc.spawnObject('shinn_guard', 'tatooine', long(15124142), float(1.6), float(-20.7), float(4.7), float(0), float(0), float(0), float(0), 30) - shinn_guard11 = stcSvc.spawnObject('shinn_guard', 'tatooine', long(15124152), float(-1.6), float(-20.8), float(23.4), float(0), float(0), float(0), float(0), 30) - shinn_guard12 = stcSvc.spawnObject('shinn_guard', 'tatooine', long(15124152), float(4.6), float(-20.8), float(23.4), float(0), float(0), float(0), float(0), 30) + shinn_guard = stcSvc.spawnObject('shinn_guard', 'tatooine', building.getCellByCellName("hall1"), float(-3.3), float(0.3), float(3.6), float(0), float(0), float(0), float(0), 30) + shinn_guard1 = stcSvc.spawnObject('shinn_guard', 'tatooine', building.getCellByCellNumber(long(3)), float(2.9), float(0.3), float(-4.0), float(0), float(0), float(0), float(0), 30) + shinn_guard2 = stcSvc.spawnObject('shinn_guard', 'tatooine', building.getCellByCellNumber(long(4)), float(3.8), float(-3.3), float(4.8), float(0), float(0), float(0), float(0), 30) + shinn_guard3 = stcSvc.spawnObject('shinn_guard', 'tatooine', building.getCellByCellNumber(long(5)), float(-4.4), float(-10.3), float(-6.1), float(0), float(0), float(0), float(0), 30) + shinn_guard4 = stcSvc.spawnObject('shinn_guard', 'tatooine', building.getCellByCellNumber(long(7)), float(5.3), float(-13.8), float(6.6), float(0), float(0), float(0), float(0), 30) + shinn_guard5 = stcSvc.spawnObject('shinn_guard', 'tatooine', building.getCellByCellNumber(long(7)), float(-2.1), float(-13.8), float(6.8), float(0), float(0), float(0), float(0), 30) + shinn_guard6 = stcSvc.spawnObject('shinn_guard', 'tatooine', building.getCellByCellNumber(long(7)), float(-6.8), float(-13.8), float(6.7), float(0), float(0), float(0), float(0), 30) + shinn_guard7 = stcSvc.spawnObject('shinn_guard', 'tatooine', building.getCellByCellNumber(long(8)), float(1.5), float(-20.8), float(-3.5), float(0), float(0), float(0), float(0), 30) + shinn_guard8 = stcSvc.spawnObject('shinn_guard', 'tatooine', building.getCellByCellNumber(long(9)), float(-1.0), float(-20.7), float(11.0), float(0), float(0), float(0), float(0), 30) + shinn_guard9 = stcSvc.spawnObject('shinn_guard', 'tatooine', building.getCellByCellNumber(long(9)), float(3.6), float(-20.7), float(11.4), float(0), float(0), float(0), float(0), 30) + shinn_guard10 = stcSvc.spawnObject('shinn_guard', 'tatooine', building.getCellByCellNumber(long(9)), float(1.6), float(-20.7), float(4.7), float(0), float(0), float(0), float(0), 30) + shinn_guard11 = stcSvc.spawnObject('shinn_guard', 'tatooine', building.getCellByCellNumber(long(10)), float(-1.6), float(-20.8), float(23.4), float(0), float(0), float(0), float(0), 30) + shinn_guard12 = stcSvc.spawnObject('shinn_guard', 'tatooine', building.getCellByCellNumber(long(10)), float(4.6), float(-20.8), float(23.4), float(0), float(0), float(0), float(0), 30) + + #temp until cellbycellname is fixed + + # Vaigonn Shinn - vaigonn_shinn = stcSvc.spawnObject('vaigon_shinn', 'tatooine', long(15124152), float(1.7), float(-20.8), float(29.7), float(-1), float(0), float(0), float(0), 30) + vaigonn_shinn = stcSvc.spawnObject('vaigon_shinn', 'tatooine', building.getCellByCellNumber(long(10)), float(1.7), float(-20.8), float(29.7), float(-1), float(0), float(0), float(0), 30) return + diff --git a/scripts/static_spawns/tatooine/mos_eisley_tempest_rills.py b/scripts/static_spawns/tatooine/mos_eisley_tempest_rills.py index e135dcb6..e44369e0 100644 --- a/scripts/static_spawns/tatooine/mos_eisley_tempest_rills.py +++ b/scripts/static_spawns/tatooine/mos_eisley_tempest_rills.py @@ -28,13 +28,7 @@ def addPlanetSpawns(core, planet): tempest_rill12 = stcSvc.spawnObject('tempest_rill', 'tatooine', long(0), float(3716), float(5), float(-4613), float(0), float(0), float(0), float(0), 30) tempest_rill13 = stcSvc.spawnObject('tempest_rill', 'tatooine', long(0), float(3704), float(5), float(-4624), float(0), float(0), float(0), float(0), 30) tempest_rill14 = stcSvc.spawnObject('tempest_rill', 'tatooine', long(0), float(3687), float(5), float(-4600), float(0), float(0), float(0), float(0), 30) - tempest_rill15 = stcSvc.spawnObject('tempest_rill', 'tatooine', long(0), float(3709), float(5), float(-4611), float(0), float(0), float(0), float(0), 30) - tempest_rill16 = stcSvc.spawnObject('tempest_rill', 'tatooine', long(0), float(3725), float(5), float(-4619), float(0), float(0), float(0), float(0), 30) - tempest_rill17 = stcSvc.spawnObject('tempest_rill', 'tatooine', long(0), float(3727), float(5), float(-4638), float(0), float(0), float(0), float(0), 30) - tempest_rill18 = stcSvc.spawnObject('tempest_rill', 'tatooine', long(0), float(3716), float(5), float(-4622), float(0), float(0), float(0), float(0), 30) - tempest_rill19 = stcSvc.spawnObject('tempest_rill', 'tatooine', long(0), float(3710), float(5), float(-4637), float(0), float(0), float(0), float(0), 30) - tempest_rill20 = stcSvc.spawnObject('tempest_rill', 'tatooine', long(0), float(3698), float(5), float(-4637), float(0), float(0), float(0), float(0), 30) - tempest_rill21 = stcSvc.spawnObject('tempest_rill', 'tatooine', long(0), float(3684), float(5), float(-4645), float(0), float(0), float(0), float(0), 30) + # Tempest rills @@ -44,9 +38,7 @@ def addPlanetSpawns(core, planet): tempest_rill43 = stcSvc.spawnObject('tempest_rill', 'tatooine', long(0), float(3885), float(56), float(-5088), float(0), float(0), float(0), float(0), 30) tempest_rill44 = stcSvc.spawnObject('tempest_rill', 'tatooine', long(0), float(3892), float(58), float(-5078), float(0), float(0), float(0), float(0), 30) tempest_rill45 = stcSvc.spawnObject('tempest_rill', 'tatooine', long(0), float(3860), float(44), float(-5043), float(0), float(0), float(0), float(0), 30) - tempest_rill46 = stcSvc.spawnObject('tempest_rill', 'tatooine', long(0), float(3870), float(44), float(-5053), float(0), float(0), float(0), float(0), 30) - tempest_rill47 = stcSvc.spawnObject('tempest_rill', 'tatooine', long(0), float(3877), float(53), float(-5082), float(0), float(0), float(0), float(0), 30) - tempest_rill48 = stcSvc.spawnObject('tempest_rill', 'tatooine', long(0), float(3890), float(54), float(-5073), float(0), float(0), float(0), float(0), 30) + return diff --git a/scripts/static_spawns/tatooine/mos_eisley_womprats.py b/scripts/static_spawns/tatooine/mos_eisley_womprats.py index ba10079a..a7bdb444 100644 --- a/scripts/static_spawns/tatooine/mos_eisley_womprats.py +++ b/scripts/static_spawns/tatooine/mos_eisley_womprats.py @@ -22,10 +22,7 @@ def addPlanetSpawns(core, planet): city_sewer4 = stcSvc.spawnObject('city_sewer_swamprat', 'tatooine', long(0), float(3220), float(8), float(-4462), float(0), float(0), float(0), float(0), 30) city_sewer5 = stcSvc.spawnObject('city_sewer_swamprat', 'tatooine', long(0), float(3224), float(8), float(-4469), float(0), float(0), float(0), float(0), 30) city_sewer6 = stcSvc.spawnObject('city_sewer_swamprat', 'tatooine', long(0), float(3218), float(8), float(-4467), float(0), float(0), float(0), float(0), 30) - city_sewer7 = stcSvc.spawnObject('city_sewer_swamprat', 'tatooine', long(0), float(3216), float(8), float(-4458), float(0), float(0), float(0), float(0), 30) - city_sewer8 = stcSvc.spawnObject('city_sewer_swamprat', 'tatooine', long(0), float(3207), float(8), float(-4457), float(0), float(0), float(0), float(0), 30) - city_sewer9 = stcSvc.spawnObject('city_sewer_swamprat', 'tatooine', long(0), float(3211), float(8), float(-4472), float(0), float(0), float(0), float(0), 30) - city_sewer10 = stcSvc.spawnObject('city_sewer_swamprat', 'tatooine', long(0), float(3208), float(8), float(-4474), float(0), float(0), float(0), float(0), 30) + # Sickly Womprats @@ -36,10 +33,6 @@ def addPlanetSpawns(core, planet): sickly_womprat4 = stcSvc.spawnObject('sickly_womprat', 'tatooine', long(0), float(3115), float(9), float(-4750), float(0), float(0), float(0), float(0), 30) sickly_womprat5 = stcSvc.spawnObject('sickly_womprat', 'tatooine', long(0), float(3117), float(9), float(-4760), float(0), float(0), float(0), float(0), 30) sickly_womprat6 = stcSvc.spawnObject('sickly_womprat', 'tatooine', long(0), float(3121), float(9), float(-4766), float(0), float(0), float(0), float(0), 30) - sickly_womprat7 = stcSvc.spawnObject('sickly_womprat', 'tatooine', long(0), float(3124), float(9), float(-4756), float(0), float(0), float(0), float(0), 30) - sickly_womprat8 = stcSvc.spawnObject('sickly_womprat', 'tatooine', long(0), float(3119), float(9), float(-4750), float(0), float(0), float(0), float(0), 30) - sickly_womprat9 = stcSvc.spawnObject('sickly_womprat', 'tatooine', long(0), float(3122), float(9), float(-4754), float(0), float(0), float(0), float(0), 30) - sickly_womprat10 = stcSvc.spawnObject('sickly_womprat', 'tatooine', long(0), float(3104), float(9), float(-4762), float(0), float(0), float(0), float(0), 30) # Normal Womprats womprat = stcSvc.spawnObject('womprat', 'tatooine', long(0), float(3587), float(56), float(-4354), float(0), float(0), float(0), float(0), 30) @@ -49,10 +42,7 @@ def addPlanetSpawns(core, planet): womprat4 = stcSvc.spawnObject('womprat', 'tatooine', long(0), float(3587), float(56), float(-4348), float(0), float(0), float(0), float(0), 30) womprat5 = stcSvc.spawnObject('womprat', 'tatooine', long(0), float(3587), float(56), float(-4358), float(0), float(0), float(0), float(0), 30) womprat6 = stcSvc.spawnObject('womprat', 'tatooine', long(0), float(3590), float(56), float(-4360), float(0), float(0), float(0), float(0), 30) - womprat7 = stcSvc.spawnObject('womprat', 'tatooine', long(0), float(3594), float(56), float(-4364), float(0), float(0), float(0), float(0), 30) - womprat8 = stcSvc.spawnObject('womprat', 'tatooine', long(0), float(3590), float(56), float(-4372), float(0), float(0), float(0), float(0), 30) - womprat9 = stcSvc.spawnObject('womprat', 'tatooine', long(0), float(3592), float(56), float(-4376), float(0), float(0), float(0), float(0), 30) - womprat10 = stcSvc.spawnObject('womprat', 'tatooine', long(0), float(3580), float(56), float(-4350), float(0), float(0), float(0), float(0), 30) + womprat2 = stcSvc.spawnObject('womprat', 'tatooine', long(0), float(3841), float(49), float(-5072), float(0), float(0), float(0), float(0), 30) womprat21 = stcSvc.spawnObject('womprat', 'tatooine', long(0), float(3832), float(49), float(-5072), float(0), float(0), float(0), float(0), 30) @@ -61,8 +51,5 @@ def addPlanetSpawns(core, planet): womprat24 = stcSvc.spawnObject('womprat', 'tatooine', long(0), float(3841), float(49), float(-5060), float(0), float(0), float(0), float(0), 30) womprat25 = stcSvc.spawnObject('womprat', 'tatooine', long(0), float(3841), float(49), float(-5056), float(0), float(0), float(0), float(0), 30) womprat26 = stcSvc.spawnObject('womprat', 'tatooine', long(0), float(3839), float(49), float(-5082), float(0), float(0), float(0), float(0), 30) - womprat23 = stcSvc.spawnObject('womprat', 'tatooine', long(0), float(3836), float(49), float(-5086), float(0), float(0), float(0), float(0), 30) - womprat24 = stcSvc.spawnObject('womprat', 'tatooine', long(0), float(3837), float(49), float(-5090), float(0), float(0), float(0), float(0), 30) - womprat25 = stcSvc.spawnObject('womprat', 'tatooine', long(0), float(3832), float(49), float(-5061), float(0), float(0), float(0), float(0), 30) - womprat26 = stcSvc.spawnObject('womprat', 'tatooine', long(0), float(3841), float(49), float(-5069), float(0), float(0), float(0), float(0), 30) + return diff --git a/scripts/static_spawns/tatooine/mos_eisley_worrts.py b/scripts/static_spawns/tatooine/mos_eisley_worrts.py index eff360a0..f6402cf8 100644 --- a/scripts/static_spawns/tatooine/mos_eisley_worrts.py +++ b/scripts/static_spawns/tatooine/mos_eisley_worrts.py @@ -20,10 +20,6 @@ def addPlanetSpawns(core, planet): tame_worrt13 = stcSvc.spawnObject('tame_worrt', 'tatooine', long(0), float(3163), float(4), float(-4955), float(0), float(0), float(0), float(0), 30) tame_worrt14 = stcSvc.spawnObject('tame_worrt', 'tatooine', long(0), float(3173), float(4), float(-4965), float(0), float(0), float(0), float(0), 30) tame_worrt15 = stcSvc.spawnObject('tame_worrt', 'tatooine', long(0), float(3145), float(4), float(-4950), float(0), float(0), float(0), float(0), 30) - tame_worrt16 = stcSvc.spawnObject('tame_worrt', 'tatooine', long(0), float(3135), float(4), float(-4960), float(0), float(0), float(0), float(0), 30) - tame_worrt17 = stcSvc.spawnObject('tame_worrt', 'tatooine', long(0), float(3165), float(4), float(-4950), float(0), float(0), float(0), float(0), 30) - tame_worrt18 = stcSvc.spawnObject('tame_worrt', 'tatooine', long(0), float(3170), float(4), float(-4930), float(0), float(0), float(0), float(0), 30) - tame_worrt19 = stcSvc.spawnObject('tame_worrt', 'tatooine', long(0), float(3160), float(4), float(-4940), float(0), float(0), float(0), float(0), 30) # Tame Worrts tame_worrt2 = stcSvc.spawnObject('tame_worrt', 'tatooine', long(0), float(3125), float(4), float(-4726), float(0), float(0), float(0), float(0), 30) @@ -32,9 +28,6 @@ def addPlanetSpawns(core, planet): tame_worrt23 = stcSvc.spawnObject('tame_worrt', 'tatooine', long(0), float(3135), float(4), float(-4736), float(0), float(0), float(0), float(0), 30) tame_worrt24 = stcSvc.spawnObject('tame_worrt', 'tatooine', long(0), float(3145), float(4), float(-4746), float(0), float(0), float(0), float(0), 30) tame_worrt25 = stcSvc.spawnObject('tame_worrt', 'tatooine', long(0), float(3120), float(4), float(-4721), float(0), float(0), float(0), float(0), 30) - tame_worrt26 = stcSvc.spawnObject('tame_worrt', 'tatooine', long(0), float(3110), float(4), float(-4731), float(0), float(0), float(0), float(0), 30) - tame_worrt27 = stcSvc.spawnObject('tame_worrt', 'tatooine', long(0), float(3130), float(4), float(-4741), float(0), float(0), float(0), float(0), 30) - tame_worrt28 = stcSvc.spawnObject('tame_worrt', 'tatooine', long(0), float(3140), float(4), float(-4711), float(0), float(0), float(0), float(0), 30) - tame_worrt29 = stcSvc.spawnObject('tame_worrt', 'tatooine', long(0), float(3130), float(4), float(-4726), float(0), float(0), float(0), float(0), 30) + return \ No newline at end of file diff --git a/scripts/static_spawns/tatooine/mos_entha.py b/scripts/static_spawns/tatooine/mos_entha.py index e99d36ea..4686d285 100644 --- a/scripts/static_spawns/tatooine/mos_entha.py +++ b/scripts/static_spawns/tatooine/mos_entha.py @@ -20,6 +20,11 @@ def addPlanetSpawns(core, planet): ankwee.setCustomName2('An\'kwee') ankwee.setOptionsBitmask(256) - + #Junkdealer + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'tatooine', long(0), float(1271), float(7.7), float(2919), float(0), float(0)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'tatooine', long(0), float(1271), float(7.7), float(2960), float(1), float(0)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'tatooine', long(0), float(1396), float(7), float(3026), float(0), float(0)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'tatooine', long(0), float(1471), float(7), float(3325), float(0), float(1)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'tatooine', long(0), float(1463), float(7), float(3126), float(0.71), float(-0.71)) return diff --git a/scripts/static_spawns/tatooine/mos_espa.py b/scripts/static_spawns/tatooine/mos_espa.py index f628b9be..666d8b1b 100644 --- a/scripts/static_spawns/tatooine/mos_espa.py +++ b/scripts/static_spawns/tatooine/mos_espa.py @@ -13,6 +13,10 @@ def addPlanetSpawns(core, planet): stcSvc = core.staticService objSvc = core.objectService + #Wattos shop + building = core.objectService.getObject(long(-466404040703268293)) + + # TODO Check all NPCs for personalized scripting, change format. # Cantina Interior @@ -22,7 +26,7 @@ def addPlanetSpawns(core, planet): #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', long(26670), float(4.7), float(-0.5), float(2.4), float(0.70), float(-0.71)) + 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)) #watto.setCustomName2('Watto') #watto.setOptionsBitmask(256) @@ -63,6 +67,9 @@ def addPlanetSpawns(core, planet): commoner23.setCustomName2('a Commoner') commoner23.setOptionsBitmask(256) + #Junkdealer will be added as soon as i can find coords + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_03.iff', 'tatooine', long(0), float(-3060.50), float(5), float(2181.71), float(0), float(1)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_03.iff', 'tatooine', long(0), float(-2924.53), float(5), float(2173.97), float(0), float(1)) return diff --git a/scripts/static_spawns/tatooine/mos_taike.py b/scripts/static_spawns/tatooine/mos_taike.py new file mode 100644 index 00000000..e3e78bf7 --- /dev/null +++ b/scripts/static_spawns/tatooine/mos_taike.py @@ -0,0 +1,22 @@ +import sys +# Project SWG: Mos Taike: Static Spawns +# (C)2014 ProjectSWG + + + +from resources.datatables import Options +from resources.datatables import State + +def addPlanetSpawns(core, planet): + + + stcSvc = core.staticService + objSvc = core.objectService + + # TODO Check all NPCs for personalized scripting, change format. + + + #Junkdealer + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'tatooine', long(0), float(3902), float(33), float(2362), float(0), float(0)) + return + diff --git a/scripts/static_spawns/tatooine/wayfar.py b/scripts/static_spawns/tatooine/wayfar.py new file mode 100644 index 00000000..4864ed87 --- /dev/null +++ b/scripts/static_spawns/tatooine/wayfar.py @@ -0,0 +1,23 @@ +import sys +# Project SWG: Wayfar: Static Spawns +# (C)2014 ProjectSWG + + + +from resources.datatables import Options +from resources.datatables import State + +def addPlanetSpawns(core, planet): + + + stcSvc = core.staticService + objSvc = core.objectService + + # TODO Check all NPCs for personalized scripting, change format. + + + #Junkdealer + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'tatooine', long(0), float(-5242), float(75), float(-6495), float(0), float(0)) + stcSvc.spawnObject('object/mobile/shared_junk_dealer_m_01.iff', 'tatooine', long(0), float(-5129), float(75), float(-6584), float(0), float(0)) + return + diff --git a/src/main/NGECore.java b/src/main/NGECore.java index 1da3308a..95a4ecb7 100644 --- a/src/main/NGECore.java +++ b/src/main/NGECore.java @@ -21,7 +21,10 @@ ******************************************************************************/ package main; +import java.io.BufferedReader; import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileReader; import java.io.IOException; import java.sql.PreparedStatement; import java.sql.SQLException; @@ -140,7 +143,7 @@ public class NGECore { private static NGECore instance; private Config config = null; - + private String motd = ""; private volatile boolean isShuttingDown = false; private long galacticTime = System.currentTimeMillis(); @@ -272,6 +275,12 @@ public class NGECore { System.out.println("Cleaned ODB Folders."); } + try(BufferedReader br = new BufferedReader(new FileReader("./motd.txt"))) { + for(String line; (line = br.readLine()) != null;) { + motd += line; + } + } catch (IOException e1) { e1.printStackTrace(); } + // Database databaseConnection = new DatabaseConnection(); databaseConnection.connect(config.getString("DB.URL"), config.getString("DB.NAME"), config.getString("DB.USER"), config.getString("DB.PASS"), "postgresql"); @@ -774,6 +783,12 @@ public class NGECore { auctionODB.close(); } - + public String getMotd() { + return motd; + } + + public void setMotd(String motd) { + this.motd = motd; + } } diff --git a/src/protocol/swg/UnknownAbilityPacket.java b/src/protocol/swg/UnknownAbilityPacket.java new file mode 100644 index 00000000..6c8047a8 --- /dev/null +++ b/src/protocol/swg/UnknownAbilityPacket.java @@ -0,0 +1,50 @@ +/******************************************************************************* + * Copyright (c) 2013 + * + * This File is part of NGECore2. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program. If not, see . + * + * Using NGEngine to work with NGECore2 is making a combined work based on NGEngine. + * Therefore all terms and conditions of the GNU Lesser General Public License cover the combination. + ******************************************************************************/ +package protocol.swg; + +import java.nio.ByteOrder; + +import org.apache.mina.core.buffer.IoBuffer; + +public class UnknownAbilityPacket extends SWGMessage { + + private String ability; + + public UnknownAbilityPacket(String ability) { + this.ability = ability; + } + + @Override + public void deserialize(IoBuffer data) { + // TODO Auto-generated method stub + } + + @Override + public IoBuffer serialize() { + IoBuffer buffer = IoBuffer.allocate(8 + ability.length()).order(ByteOrder.LITTLE_ENDIAN); + buffer.putShort((short) 2); + buffer.putInt(0xE67E3875); + buffer.put(getAsciiString(ability)); + return buffer.flip(); + } + +} diff --git a/src/protocol/swg/auctionManagerClientListener/AuctionQueryHeadersResponseMessage.java b/src/protocol/swg/auctionManagerClientListener/AuctionQueryHeadersResponseMessage.java index 3ea90dd0..fa025157 100644 --- a/src/protocol/swg/auctionManagerClientListener/AuctionQueryHeadersResponseMessage.java +++ b/src/protocol/swg/auctionManagerClientListener/AuctionQueryHeadersResponseMessage.java @@ -97,18 +97,20 @@ public class AuctionQueryHeadersResponseMessage extends SWGMessage { result.putInt(item.getPrice()); result.putInt((int) ((item.getExpireTime() - System.currentTimeMillis()) / 1000)); result.putInt(item.getPrice()); - result.putShort((short) 0); + result.putShort((short) getStringIndex(item.getVuid())); result.putLong(item.getOwnerId()); - result.put((byte) (item.isAuction() ? 0 : 1)); - result.putLong(0); + result.putShort((short) getStringIndex(item.getOwnerName())); + /*result.putInt(0); result.put((byte) 0); + result.putShort((short) getStringIndex(item.getOwnerName())); + result.put((byte) 0);*/ + result.putLong(0); result.putInt(2); // unk result.putInt(0); result.putShort((short) 0); - result.putInt(item.getItemType()); + result.putInt(item.getItemType()); // gameObjectType/category bitmask - //result.putInt(0x400C); // category bitmask? - result.putInt(0); + result.putInt(0); int options = 0; if(item.getOwnerId() == playerId && (item.getStatus() == AuctionItem.OFFERED || item.getStatus() == AuctionItem.FORSALE)) diff --git a/src/protocol/swg/auctionManagerClientListener/CommoditiesItemTypeListResponse.java b/src/protocol/swg/auctionManagerClientListener/CommoditiesItemTypeListResponse.java index d299a44e..cbf52fe3 100644 --- a/src/protocol/swg/auctionManagerClientListener/CommoditiesItemTypeListResponse.java +++ b/src/protocol/swg/auctionManagerClientListener/CommoditiesItemTypeListResponse.java @@ -22,31 +22,76 @@ package protocol.swg.auctionManagerClientListener; import java.nio.ByteOrder; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; import main.NGECore; import org.apache.mina.core.buffer.IoBuffer; +import org.apache.mina.core.buffer.SimpleBufferAllocator; +import engine.resources.objects.SWGObject; import protocol.swg.SWGMessage; +import services.bazaar.AuctionItem; public class CommoditiesItemTypeListResponse extends SWGMessage { + + private Map> itemList = new HashMap>(); + private static SimpleBufferAllocator bufferPool = new SimpleBufferAllocator(); + + public void addItem(AuctionItem item) { + if(itemList.get(item.getItemType()) == null) + itemList.put(item.getItemType(), new ArrayList()); + itemList.get(item.getItemType()).add(item); + } @Override public void deserialize(IoBuffer data) { // TODO Auto-generated method stub } + /** + * Struct of category lists: + * int numberofcategories + * + * int category + * number of items in category + * + * int server crc (w/o shared_) + * int category + * astring stf filename + * int spacer + * astring stf name + * + */ @Override public IoBuffer serialize() { - // TODO: research how categories work String galaxy = NGECore.getInstance().getGalaxyName(); - IoBuffer result = IoBuffer.allocate(14 + galaxy.length()).order(ByteOrder.LITTLE_ENDIAN); + IoBuffer result = bufferPool.allocate(14 + galaxy.length(), false).order(ByteOrder.LITTLE_ENDIAN); + result.setAutoExpand(true); result.putShort((short) 2); result.putInt(0xD4E937FC); - result.put(getAsciiString(galaxy + ".0")); - result.putInt(0); - return result.flip(); + result.put(getAsciiString(galaxy + "." + Integer.toString(itemList.size()))); + result.putInt(itemList.size()); + + for(Entry> e : itemList.entrySet()) { + result.putInt(e.getKey()); + result.putInt(e.getValue().size()); + for(AuctionItem item : e.getValue()) { + result.putInt(item.getItemTypeCRC()); + result.putInt(item.getItemType()); + result.put(item.getItem().getObjectName().getBytes()); + } + } + + int size = result.position(); + IoBuffer result2 = IoBuffer.allocate(size).put(result.array(), 0, size); + + return result2.flip(); } } diff --git a/src/protocol/swg/chat/ChatPersistentMessageToClient.java b/src/protocol/swg/chat/ChatPersistentMessageToClient.java index a5013ab8..f81227fc 100644 --- a/src/protocol/swg/chat/ChatPersistentMessageToClient.java +++ b/src/protocol/swg/chat/ChatPersistentMessageToClient.java @@ -91,6 +91,9 @@ public class ChatPersistentMessageToClient extends SWGMessage { for(WaypointAttachment attachment : attachments) { + result.putShort((short) 0); + result.put((byte) 4); + result.putInt(0xFFFFFFFD); result.putInt(0); result.putFloat(attachment.positionX); result.putFloat(attachment.positionY); @@ -101,6 +104,7 @@ public class ChatPersistentMessageToClient extends SWGMessage { result.putLong(attachment.cellID); result.put(attachment.color); result.put((byte) (attachment.active ? 1 : 0)); + result.put((byte) 0); } @@ -110,7 +114,7 @@ public class ChatPersistentMessageToClient extends SWGMessage { result.put(status); result.putInt(timestamp); - result.putInt(0); + //result.putInt(0); int size = result.position(); result = IoBuffer.allocate(size).put(result.array(), 0, size); diff --git a/src/protocol/swg/chat/ChatPersistentMessageToServer.java b/src/protocol/swg/chat/ChatPersistentMessageToServer.java index 84fa1e52..bed5888d 100644 --- a/src/protocol/swg/chat/ChatPersistentMessageToServer.java +++ b/src/protocol/swg/chat/ChatPersistentMessageToServer.java @@ -92,7 +92,7 @@ public class ChatPersistentMessageToServer extends SWGMessage { waypoint.active = false; waypointAttachments.add(waypoint); - System.out.println(waypoint.name); + //System.out.println(waypoint.name); if(appendByte > 0) buffer.get(); diff --git a/src/resources/datatables/LightsaberColors.java b/src/resources/datatables/LightsaberColors.java index cb2028c5..e8adbba9 100644 --- a/src/resources/datatables/LightsaberColors.java +++ b/src/resources/datatables/LightsaberColors.java @@ -62,8 +62,9 @@ public final class LightsaberColors { map.put("Kenobi's Legacy", 28); map.put("Sunrider's Destiny", 29); map.put("Kit's Ferocity", 30); + map.put("Cunning of Tyranus", 31); - // Special crystals that have seperate shaders - the 256 is for a hacky way to set blade type and color without more code + // Special crystals that have seperate shaders - the 256 is for a hacky way to set blade type and color without more code map.put("Lava", 256 + 1); map.put("Permafrost", 256 + 2); map.put("Blackwing Bezoar", 256 + 3); diff --git a/src/resources/guild/Guild.java b/src/resources/guild/Guild.java index 4c1f0201..4ea74669 100644 --- a/src/resources/guild/Guild.java +++ b/src/resources/guild/Guild.java @@ -21,24 +21,26 @@ ******************************************************************************/ package resources.guild; -import java.io.Serializable; -import java.util.ArrayList; -import java.util.List; +import java.util.Date; +import java.util.HashMap; +import java.util.Map; -import org.apache.mina.core.buffer.IoBuffer; +import main.NGECore; -import engine.resources.objects.Delta; +import services.chat.Mail; import engine.resources.objects.SWGObject; -public class Guild extends Delta implements Serializable, Comparable { +public class Guild { - private static final long serialVersionUID = 1L; private int id; + private int chatRoomId; private String abbreviation; private String name; private long leader; private String leaderName; - private List members = new ArrayList(); + private Map members = new HashMap(); + private Map sponsoredPlayers = new HashMap(); + private String motd = ""; public Guild(int id, String abbreviation, String name, SWGObject leader) { this.id = id; @@ -46,47 +48,66 @@ public class Guild extends Delta implements Serializable, Comparable { this.name = name; this.leader = leader.getObjectID(); this.leaderName = leader.getCustomName(); - this.members.add(leader.getObjectID()); } - public Guild() { - + public Guild() { } + + public GuildMember addMember(long objID) { + GuildMember member = new GuildMember(objID); + members.put(objID, member); + return member; + } + + public void sendGuildMail(String sender, String subject, String message) { + NGECore core = NGECore.getInstance(); + Date date = new Date(); + members.forEach((id, member) -> { + Mail guildMail = new Mail(); + guildMail.setMailId(core.chatService.generateMailId()); + guildMail.setTimeStamp((int) date.getTime()); + guildMail.setRecieverId(id); + guildMail.setStatus(Mail.NEW); + guildMail.setMessage(message); + guildMail.setSubject(subject); + guildMail.setSenderName(sender); + core.chatService.storePersistentMessage(guildMail); + + if (core.objectService.getObject(id) != null) { + core.chatService.sendPersistentMessageHeader(core.objectService.getObject(id).getClient(), guildMail); + } + }); } public int getId() { - synchronized(objectMutex) { - return id; - } + return id; } public void setId(int id) { - synchronized(objectMutex) { - this.id = id; - } + this.id = id; } + public int getChatRoomId() { + return chatRoomId; + } + + public void setChatRoomId(int chatRoomId) { + this.chatRoomId = chatRoomId; + } + public String getAbbreviation() { - synchronized(objectMutex) { - return abbreviation; - } + return abbreviation; } public void setAbbreviation(String abbreviation) { - synchronized(objectMutex) { - this.abbreviation = abbreviation; - } + this.abbreviation = abbreviation; } public String getName() { - synchronized(objectMutex) { - return name; - } + return name; } public void setName(String name) { - synchronized(objectMutex) { - this.name = name; - } + this.name = name; } public String getString() { @@ -94,44 +115,42 @@ public class Guild extends Delta implements Serializable, Comparable { } public long getLeader() { - synchronized(objectMutex) { - return leader; - } + return leader; } public void setLeader(long leader) { - synchronized(objectMutex) { - this.leader = leader; - } + this.leader = leader; } - public List getMembers() { + public String getMotd() { + return motd; + } + + public void setMotd(String motd) { + this.motd = motd; + } + + public Map getMembers() { return members; } public String getLeaderName() { - synchronized(objectMutex) { - return leaderName; - } + return leaderName; } public void setLeaderName(String leaderName) { - synchronized(objectMutex) { - this.leaderName = leaderName; - } + this.leaderName = leaderName; } - public byte[] getBytes() { - synchronized(objectMutex) { - IoBuffer buffer = createBuffer((getString().length() + 2)); - buffer.put(getAsciiString(getString())); - return buffer.array(); - } + public Map getSponsoredPlayers() { + return sponsoredPlayers; } - @Override - public int compareTo(Guild guild) { - return ((Integer) id).compareTo(guild.getId()); + public void setSponsoredPlayers(Map sponsoredPlayers) { + this.sponsoredPlayers = sponsoredPlayers; } + public GuildMember getMember(long objectID) { + return members.get(objectID); + } } diff --git a/src/resources/guild/GuildMember.java b/src/resources/guild/GuildMember.java new file mode 100644 index 00000000..c8188cd1 --- /dev/null +++ b/src/resources/guild/GuildMember.java @@ -0,0 +1,332 @@ +/******************************************************************************* + * Copyright (c) 2013 + * + * This File is part of NGECore2. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program. If not, see . + * + * Using NGEngine to work with NGECore2 is making a combined work based on NGEngine. + * Therefore all terms and conditions of the GNU Lesser General Public License cover the combination. + ******************************************************************************/ +package resources.guild; + +import java.util.HashMap; +import java.util.Map; +import java.util.Vector; + +public class GuildMember { + private long objectId; + private long joinTime; + private String profession = ""; + private short level; + private String rank = ""; + private String name = ""; + private String title = ""; + // TODO: These might have to be moved to a new GuildRank class depending on how permissions worked for NGE + //this works for now... Lack of NGE Guild Rank guides makes re-creation difficult (Ranks introduced Game Update 8: http://swg.wikia.com/wiki/Game_Update_8) + + private Vector permissions = new Vector(); + private boolean mailPermission = false; + private boolean sponsorPermission = false; + private boolean titlePermission = false; + private boolean kickPermission = false; + private boolean acceptPermission = false; + private boolean warPermission = false; + private boolean changeNamePermission = false; + private boolean disbandPermission = false; + private boolean rankPermission = false; + + private boolean warExcluded = false; + private boolean warExclusive = false; + + public GuildMember() { } + + public GuildMember(long objectId) { + this.objectId = objectId; + this.joinTime = System.currentTimeMillis(); + } + + public void removeAllPermissions() { + setMailPermission(false); + setSponsorPermission(false); + setTitlePermission(false); + setKickPermission(false); + setAcceptPermission(false); + setWarPermission(false); + setChangeNamePermission(false); + setDisbandPermission(false); + setRankPermission(false); + } + + public void giveAllPermissions() { + setMailPermission(true); + setSponsorPermission(true); + setTitlePermission(true); + setKickPermission(true); + setAcceptPermission(true); + setWarPermission(true); + setChangeNamePermission(true); + setDisbandPermission(true); + setRankPermission(true); + } + + public long getObjectId() { + return objectId; + } + public void setObjectId(long objectId) { + this.objectId = objectId; + } + public long getJoinTime() { + return joinTime; + } + + public void setJoinTime(long joinTime) { + this.joinTime = joinTime; + } + + public boolean hasMailPermission() { + return mailPermission; + } + public void setMailPermission(boolean mailPermission) { + if (mailPermission) + permissions.add("Mail"); + else + permissions.remove("Mail"); + + this.mailPermission = mailPermission; + } + + public boolean hasSponsorPermission() { + return sponsorPermission; + } + public void setSponsorPermission(boolean sponsorPermission) { + if (sponsorPermission) + permissions.add("Sponsor"); + else + permissions.remove("Sponsor"); + + this.sponsorPermission = sponsorPermission; + } + public boolean hasTitlePermission() { + return titlePermission; + } + public void setTitlePermission(boolean titlePermission) { + if (titlePermission) + permissions.add("Title"); + else + permissions.remove("Title"); + + this.titlePermission = titlePermission; + } + public boolean hasKickPermission() { + return kickPermission; + } + public void setKickPermission(boolean kickPermission) { + if (kickPermission) + permissions.add("Kick"); + else + permissions.remove("Kick"); + + this.kickPermission = kickPermission; + } + public boolean hasAcceptPermission() { + return acceptPermission; + } + public void setAcceptPermission(boolean acceptPermission) { + if (acceptPermission) + permissions.add("Accept"); + else + permissions.remove("Accept"); + + this.acceptPermission = acceptPermission; + } + public boolean hasWarPermission() { + return warPermission; + } + public void setWarPermission(boolean warPermission) { + if (warPermission) + permissions.add("War"); + else + permissions.remove("War"); + + this.warPermission = warPermission; + } + public boolean hasChangeNamePermission() { + return changeNamePermission; + } + public void setChangeNamePermission(boolean changeNamePermission) { + if (changeNamePermission) + permissions.add("Change Guild Name"); + else + permissions.remove("Change Guild Name"); + + this.changeNamePermission = changeNamePermission; + } + public boolean hasDisbandPermission() { + return disbandPermission; + } + public void setDisbandPermission(boolean disbandPermission) { + if (disbandPermission) + permissions.add("Disband"); + else + permissions.remove("Disband"); + + this.disbandPermission = disbandPermission; + } + + public boolean hasRankPermission() { + return rankPermission; + } + + public void setRankPermission(boolean rankPermission) { + if (rankPermission) + permissions.add("Rank"); + else + permissions.remove("Rank"); + this.rankPermission = rankPermission; + } + + public boolean isWarExcluded() { + return warExcluded; + } + + public void setWarExcluded(boolean warExcluded) { + if (warExcluded) + permissions.add("War Excluded"); + else + permissions.remove("War Excluded"); + this.warExcluded = warExcluded; + } + + public boolean isWarExclusive() { + return warExclusive; + } + + public void setWarExclusive(boolean warExclusive) { + if (warExclusive) + permissions.add("War Exclusive"); + else + permissions.remove("War Exclusive"); + this.warExclusive = warExclusive; + } + + public String getProfession() { + return profession; + } + + public void setProfession(String profession) { + this.profession = profession; + } + + public short getLevel() { + return level; + } + + public void setLevel(short level) { + this.level = level; + } + + public String getRank() { + return rank; + } + + public void setRank(String rank) { + this.rank = rank; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Map getAllPermissions(GuildMember requester) { + Map permissions = new HashMap(); + + // Only allows requester to change permissions that they have (Ex. Can't change sponsor permission on a member if they don't have that permission) + // War Excluded and War Exclusive did not follow that rule + if (requester.getObjectId() != getObjectId()) { + if (requester.hasMailPermission()) { + if (hasMailPermission()) permissions.put((long) 1, "@guild:permission_mail_yes"); + else permissions.put((long) 1, "@guild:permission_mail_no"); + } + + if (requester.hasSponsorPermission()) { + if (hasSponsorPermission()) permissions.put((long) 2, "@guild:permission_sponsor_yes"); + else permissions.put((long) 2, "@guild:permission_sponsor_no"); + } + + if (requester.hasTitlePermission()) { + if (hasTitlePermission()) permissions.put((long) 3, "@guild:permission_title_yes"); + else permissions.put((long) 3, "@guild:permission_title_no"); + } + + if (requester.hasAcceptPermission()) { + if (hasAcceptPermission()) permissions.put((long) 4, "@guild:permission_accept_yes"); + else permissions.put((long) 4, "@guild:permission_accept_no"); + } + + if (requester.hasKickPermission()) { + if (hasKickPermission()) permissions.put((long) 5, "@guild:permission_kick_yes"); + else permissions.put((long) 5, "@guild:permission_kick_no"); + } + + if (requester.hasWarPermission()) { + if (hasWarPermission()) permissions.put((long) 6, "@guild:permission_war_yes"); + else permissions.put((long) 6, "@guild:permission_war_no"); + } + + if (requester.hasChangeNamePermission()) { + if (hasChangeNamePermission()) permissions.put((long) 7, "@guild:permission_namechange_yes"); + else permissions.put((long) 7, "@guild:permission_namechange_no"); + } + + if (requester.hasDisbandPermission()) { + if (hasDisbandPermission()) permissions.put((long) 8, "@guild:permission_disband_yes"); + else permissions.put((long) 8, "@guild:permission_disband_no"); + } + + if (requester.hasRankPermission()) { + if (hasRankPermission()) permissions.put((long) 9, "@guild:permission_rank_yes"); + else permissions.put((long) 9, "@guild:permission_rank_no"); + } + } + if (requester.hasWarPermission() || (requester.getObjectId() == getObjectId())) { + if (isWarExcluded()) permissions.put((long) 10, "+ War Excluded"); + else permissions.put((long) 10, "- War Excluded"); + + if (isWarExclusive()) permissions.put((long) 11, "+ War Exclusive"); + else permissions.put((long) 11, "- War Exclusive"); + } + return permissions; + } + + public Vector getPermissions() { + return permissions; + } + + public void setPermissions(Vector permissions) { + this.permissions = permissions; + } +} diff --git a/src/resources/objectives/BountyMissionObjective.java b/src/resources/objectives/BountyMissionObjective.java index fa102f8f..a2d81812 100644 --- a/src/resources/objectives/BountyMissionObjective.java +++ b/src/resources/objectives/BountyMissionObjective.java @@ -134,8 +134,12 @@ public class BountyMissionObjective extends MissionObjective { clearActiveMissions(core, bounty); core.missionService.removeBounty(markObjId); + player.getPlayerObject().setBountyMissionId(0); player.updatePvpStatus(); + + cancelLocationUpdates(); + core.missionService.handleMissionAbort(player, getMissionObject(), true); // Do not call abort method } @Override diff --git a/src/resources/objects/SWGSet.java b/src/resources/objects/SWGSet.java index 40f688f3..fae6145c 100644 --- a/src/resources/objects/SWGSet.java +++ b/src/resources/objects/SWGSet.java @@ -117,6 +117,7 @@ public class SWGSet implements Set, Serializable { public void clear() { synchronized(objectMutex) { + set.clear(); queue(item(2, null, null, false, false)); } } @@ -248,11 +249,11 @@ public class SWGSet implements Set, Serializable { } private byte[] item(int type, Object index, byte[] data, boolean useIndex, boolean useData) { - if (useIndex && ((index instanceof IDelta) || !valid(index))) { + if (useIndex && !valid(index)) { throw new IllegalArgumentException(); } - int size = 1 + ((useIndex) ? (2 + Baseline.toBytes(index).length) : 0) + ((useData) ? data.length : 0); + int size = 1 + ((useIndex) ? Baseline.toBytes(index).length : 0) + ((useData) ? data.length : 0); IoBuffer buffer = Delta.createBuffer(size); buffer.put((byte) type); diff --git a/src/resources/objects/building/BuildingObject.java b/src/resources/objects/building/BuildingObject.java index 2c996e3c..1e217d34 100644 --- a/src/resources/objects/building/BuildingObject.java +++ b/src/resources/objects/building/BuildingObject.java @@ -41,6 +41,7 @@ import engine.clientdata.visitors.PortalVisitor; import engine.clients.Client; import engine.resources.objects.Baseline; import engine.resources.objects.IPersistent; +import engine.resources.objects.SWGObject; import engine.resources.scene.Planet; import engine.resources.scene.Point3D; import engine.resources.scene.Quaternion; @@ -212,6 +213,9 @@ public class BuildingObject extends TangibleObject implements IPersistent, Seria public void setBuildingName(String buildingName, CreatureObject owner) { setCustomName(buildingName); ((CreatureObject) owner).sendSystemMessage("Structure renamed.", DisplayType.Broadcast); + SWGObject sign = (SWGObject) getAttachment("sign"); + if(sign != null) + sign.setCustomName(buildingName); } public boolean getResidency(){ diff --git a/src/resources/objects/creature/CreatureObject.java b/src/resources/objects/creature/CreatureObject.java index 68eea2b3..316045c5 100644 --- a/src/resources/objects/creature/CreatureObject.java +++ b/src/resources/objects/creature/CreatureObject.java @@ -278,6 +278,15 @@ public class CreatureObject extends TangibleObject implements Serializable { } } + public void deductCashCredits(int amountToDeduct) { + synchronized(objectMutex) { + this.cashCredits -= amountToDeduct; + } + if(getClient() != null && getClient().getSession() != null) { + getClient().getSession().write(messageBuilder.buildCashCreditsDelta(cashCredits)); + } + } + public void setCashCredits(int cashCredits) { synchronized(objectMutex) { this.cashCredits = cashCredits; @@ -1805,5 +1814,4 @@ public class CreatureObject extends TangibleObject implements Serializable { } } } - } diff --git a/src/resources/objects/guild/GuildObject.java b/src/resources/objects/guild/GuildObject.java index e87d3210..e14e3fb9 100644 --- a/src/resources/objects/guild/GuildObject.java +++ b/src/resources/objects/guild/GuildObject.java @@ -70,13 +70,14 @@ public class GuildObject extends UniverseObject implements Serializable { baseline.put("nextInstanceId", (long) 0); baseline.put("zoneMap", new TreeMap>()); baseline.put("serverFirst", new HashMap()); + baseline.put("guilds", new TreeMap()); return baseline; } @Override public Baseline getBaseline3() { Baseline baseline = super.getBaseline3(); - baseline.put("guildList", new SWGSet(this, 3, 4, false)); + baseline.put("guildList", new SWGSet(this, 3, 4, false)); return baseline; } @@ -94,8 +95,8 @@ public class GuildObject extends UniverseObject implements Serializable { } @SuppressWarnings("unchecked") - public SWGSet getGuildList() { - return (SWGSet) getBaseline(3).get("guildList"); + public SWGSet getGuildList() { + return (SWGSet) getBaseline(3).get("guildList"); } @SuppressWarnings("unchecked") @@ -156,6 +157,13 @@ public class GuildObject extends UniverseObject implements Serializable { } } + @SuppressWarnings("unchecked") + public TreeMap getGuilds() { + synchronized(objectMutex) { + return (TreeMap) otherVariables.get("guilds"); + } + } + @Override public void notifyClients(IoBuffer buffer, boolean notifySelf) { notifyObservers(buffer, false); diff --git a/src/resources/objects/mission/MissionMessageBuilder.java b/src/resources/objects/mission/MissionMessageBuilder.java index c7b61268..22431c85 100644 --- a/src/resources/objects/mission/MissionMessageBuilder.java +++ b/src/resources/objects/mission/MissionMessageBuilder.java @@ -103,13 +103,13 @@ public class MissionMessageBuilder extends IntangibleMessageBuilder { buffer.putInt(mission.getMissionTemplateObject()); + buffer.put(getAsciiString(mission.getMissionStf())); + buffer.putInt(0); buffer.put(getAsciiString(mission.getMissionDescription())); - buffer.putInt(0); - buffer.put(getAsciiString("m" + mission.getMissionId() + "d")); - buffer.put(getAsciiString(mission.getMissionTitle())); + buffer.put(getAsciiString(mission.getMissionStf())); buffer.putInt(0); - buffer.put(getAsciiString("m" + mission.getMissionId() + "t")); + buffer.put(getAsciiString(mission.getMissionTitle())); buffer.putInt(0); // refresh counter @@ -308,13 +308,13 @@ public class MissionMessageBuilder extends IntangibleMessageBuilder { return buffer; } - public IoBuffer buildMissionDescriptionDelta(String desc, int id, String additionalParam) { + public IoBuffer buildMissionDescriptionDelta(String stfFile, String descId) { - IoBuffer buffer = IoBuffer.allocate(13 + desc.length() + additionalParam.length(), false).order(ByteOrder.LITTLE_ENDIAN); + IoBuffer buffer = IoBuffer.allocate(13 + stfFile.length() + descId.length(), false).order(ByteOrder.LITTLE_ENDIAN); - buffer.put(getAsciiString(desc)); + buffer.put(getAsciiString(stfFile)); buffer.putInt(0); - buffer.put(getAsciiString("m" + id + "d" + additionalParam)); + buffer.put(getAsciiString(descId)); int size = buffer.position(); buffer.flip(); @@ -323,13 +323,13 @@ public class MissionMessageBuilder extends IntangibleMessageBuilder { return buffer; } - public IoBuffer buildMissionTitleDelta(String title, int id, String additionalParam) { + public IoBuffer buildMissionTitleDelta(String stfFile, String titleId) { - IoBuffer buffer = IoBuffer.allocate(12 + title.length() + additionalParam.length(), false).order(ByteOrder.LITTLE_ENDIAN); + IoBuffer buffer = IoBuffer.allocate(12 + stfFile.length() + titleId.length(), false).order(ByteOrder.LITTLE_ENDIAN); - buffer.put(getAsciiString(title)); + buffer.put(getAsciiString(stfFile)); buffer.putInt(0); - buffer.put(getAsciiString("m" + id + "t" + additionalParam)); + buffer.put(getAsciiString(titleId)); int size = buffer.position(); buffer.flip(); diff --git a/src/resources/objects/mission/MissionObject.java b/src/resources/objects/mission/MissionObject.java index aa3f4ba2..e6640a05 100644 --- a/src/resources/objects/mission/MissionObject.java +++ b/src/resources/objects/mission/MissionObject.java @@ -51,6 +51,7 @@ public class MissionObject extends IntangibleObject implements Serializable { private String title = ""; private String missionTargetName = ""; // Target object I guess? private int missionId = 0; + private String missionStf = ""; private String type = ""; private int missionTemplateObject = 0; private WaypointObject attachedWaypoint; @@ -157,15 +158,11 @@ public class MissionObject extends IntangibleObject implements Serializable { } public void setMissionDescription(String missionDescription) { - setMissionDescription(missionDescription, ""); - } - - public void setMissionDescription(String missionDescription, String additionalParam) { synchronized(objectMutex) { this.description = missionDescription; } if (getGrandparent() != null && getGrandparent().getClient() != null && getGrandparent().getClient().getSession() != null) { - getGrandparent().getClient().getSession().write(messageBuilder.buildMissionDescriptionDelta(missionDescription, missionId, additionalParam)); + getGrandparent().getClient().getSession().write(messageBuilder.buildMissionDescriptionDelta(missionStf, missionDescription)); } } @@ -176,15 +173,11 @@ public class MissionObject extends IntangibleObject implements Serializable { } public void setMissionTitle(String missionTitle) { - setMissionTitle(missionTitle, ""); - } - - public void setMissionTitle(String missionTitle, String additionalParam) { synchronized(objectMutex) { this.title = missionTitle; } if (getGrandparent() != null && getGrandparent().getClient() != null && getGrandparent().getClient().getSession() != null) { - getGrandparent().getClient().getSession().write(messageBuilder.buildMissionTitleDelta(missionTitle, missionId, additionalParam)); + getGrandparent().getClient().getSession().write(messageBuilder.buildMissionTitleDelta(missionStf, missionTitle)); } } @@ -311,6 +304,14 @@ public class MissionObject extends IntangibleObject implements Serializable { this.bountyObjId = bountyObjId; } + public String getMissionStf() { + return missionStf; + } + + public void setMissionStf(String missionStf) { + this.missionStf = missionStf; + } + @Override public void sendBaselines(Client destination) { diff --git a/src/resources/objects/player/PlayerObject.java b/src/resources/objects/player/PlayerObject.java index 9988a5f8..99072b9a 100644 --- a/src/resources/objects/player/PlayerObject.java +++ b/src/resources/objects/player/PlayerObject.java @@ -113,13 +113,13 @@ public class PlayerObject extends IntangibleObject implements Serializable { baseline.put("bornDate", (int) (System.currentTimeMillis() / 1000L)); //Integer.parseInt(new SimpleDateFormat("yyyymmdd", Locale.ENGLISH).format(Calendar.getInstance().getTime()))); baseline.put("totalPlayTime", 0); baseline.put("professionIcon", 0); - baseline.put("profession", "trader_1a"); + baseline.put("profession", "trader_0a"); baseline.put("gcwPoints", 0); baseline.put("pvpKills", 0); baseline.put("lifetimeGcwPoints", (long) 0); baseline.put("lifetimePvpKills", 0); baseline.put("collections", new BitSet()); - baseline.put("17", new SWGList(this, 3, 17, false)); // Misc ints (2 ints in tutorial, 5 bytes other times...) + baseline.put("guildRanks", new BitSet()); //"17", new SWGList(this, 3, 17, false)); // Misc ints (2 ints in tutorial, 5 bytes other times...) baseline.put("showHelmet", true); baseline.put("showBackpack", true); return baseline; @@ -401,6 +401,22 @@ public class PlayerObject extends IntangibleObject implements Serializable { return ((BitSet) getBaseline(3).get("collections")).length(); } + public boolean getGuildRank(int slotIndex) { + return ((BitSet) getBaseline(3).get("guildRanks")).get(slotIndex); + } + + public void toggleGuildRank(int slotIndex) { + BitSet guildRanks = (BitSet) getBaseline(3).get("guildRanks"); + guildRanks.set(slotIndex, !guildRanks.get(slotIndex)); + getBaseline(3).set("guildRanks", guildRanks); + } + + public void clearGuildRanks() { + BitSet guildRanks = (BitSet) getBaseline(3).get("guildRanks"); + guildRanks.clear(); + getBaseline(3).set("guildRanks", guildRanks); + } + public boolean isShowingHelmet() { return (boolean) getBaseline(3).get("showHelmet"); } @@ -893,10 +909,10 @@ public class PlayerObject extends IntangibleObject implements Serializable { } public void addChannel(int roomId) { - getJoinedChatChannels().add(roomId); + getJoinedChatChannels().add((Integer) roomId); } - public void removeChannel(int roomId) { + public void removeChannel(Integer roomId) { if (getJoinedChatChannels().contains(roomId)) { getJoinedChatChannels().remove(roomId); } diff --git a/src/resources/objects/tangible/TangibleObject.java b/src/resources/objects/tangible/TangibleObject.java index 621e6c16..41d555ec 100644 --- a/src/resources/objects/tangible/TangibleObject.java +++ b/src/resources/objects/tangible/TangibleObject.java @@ -115,7 +115,7 @@ public class TangibleObject extends SWGObject implements Serializable { baseline.put("faction", 0); baseline.put("factionStatus", 0); baseline.put("customization", new byte[] { }); - baseline.put("componentCustomizations", new SWGList(this, 3, 7, false)); + baseline.put("componentCustomizations", new SWGSet(this, 3, 7, false)); baseline.put("optionsBitmask", 0); baseline.put("uses", 0); baseline.put("conditionDamage", 0); @@ -172,11 +172,12 @@ public class TangibleObject extends SWGObject implements Serializable { notifyClients(getBaseline(3).set("customization", customization), true); } - public SWGList getComponentCustomizations() { - return (SWGList) getBaseline(3).get("componentCustomizations"); + public SWGSet getComponentCustomizations() { + return (SWGSet) getBaseline(3).get("componentCustomizations"); } public void setComponentCustomizations(List componentCustomizations) { + getComponentCustomizations().clear(); getComponentCustomizations().addAll(componentCustomizations); } @@ -262,7 +263,7 @@ public class TangibleObject extends SWGObject implements Serializable { public void setUses(int uses) { notifyClients(getBaseline(3).set("uses", uses), true); - setIntAttribute("uses", uses); + setIntAttribute("count", uses); } public int getIncapTimer() { diff --git a/src/resources/objects/waypoint/WaypointObject.java b/src/resources/objects/waypoint/WaypointObject.java index d73c6b66..563ae32f 100644 --- a/src/resources/objects/waypoint/WaypointObject.java +++ b/src/resources/objects/waypoint/WaypointObject.java @@ -22,15 +22,21 @@ package resources.objects.waypoint; import java.io.Serializable; +import java.nio.ByteOrder; + +import org.apache.mina.core.buffer.IoBuffer; +import org.apache.mina.core.buffer.SimpleBufferAllocator; import resources.objects.intangible.IntangibleObject; - import engine.clients.Client; +import engine.resources.common.StringUtilities; +import engine.resources.objects.IDelta; +import engine.resources.objects.SWGObject; import engine.resources.scene.Planet; import engine.resources.scene.Point3D; import engine.resources.scene.Quaternion; -public class WaypointObject extends IntangibleObject implements Serializable { +public class WaypointObject extends IntangibleObject implements Serializable, IDelta { private static final long serialVersionUID = 1L; @@ -40,6 +46,7 @@ public class WaypointObject extends IntangibleObject implements Serializable { private String name; private byte color; private boolean isActive; + private transient static SimpleBufferAllocator bufferPool = new SimpleBufferAllocator(); public static final byte BLUE = 1; public static final byte GREEN = 2; @@ -148,5 +155,38 @@ public class WaypointObject extends IntangibleObject implements Serializable { // TODO Auto-generated method stub } + + @Override + public byte[] getBytes() { + IoBuffer buffer = bufferPool.allocate(42 + name.length() * 2, false).order(ByteOrder.LITTLE_ENDIAN); + + buffer.putInt(getCellId()); + + buffer.putFloat(getPosition().x); + buffer.putFloat(getPosition().y); + buffer.putFloat(getPosition().z); + + buffer.putLong(0); // networklocationId + buffer.putInt(getPlanetCRC()); + + buffer.put(StringUtilities.getUnicodeString(getName())); + buffer.putLong(getObjectID()); + + buffer.put((byte) getColor()); + + if (isActive()) + buffer.put((byte) 1); + else + buffer.put((byte) 0); + + return buffer.flip().array(); + + } + + @Override + public void init(SWGObject arg0) { + // TODO Auto-generated method stub + + } } diff --git a/src/services/BuffService.java b/src/services/BuffService.java index de08efd2..8d2d4038 100644 --- a/src/services/BuffService.java +++ b/src/services/BuffService.java @@ -91,11 +91,14 @@ public class BuffService implements INetworkDispatch { if(buff == null) return false; + // Here the necessary checks must be placed to prevent buffs from the same buff group (e.g. Buff D) being stacked! + if(buff.isGroupBuff()) { addGroupBuff(buffer, buffName, buffer); return true; } else { - doAddBuff(target, buffName, buffer); + if (! hasBuff(target,buffName)) // QA, prevent infinite "refreshing" of buff by repeated use + doAddBuff(target, buffName, buffer); return true; } } @@ -290,6 +293,14 @@ public class BuffService implements INetworkDispatch { } + public boolean hasBuff(final CreatureObject creature, String buffName) { + + for(final Buff buff : creature.getBuffList().get().toArray(new Buff[] { })) { + if (buff.getBuffName().contains(buffName)) { return true; } + } + return false; + } + public void addGroupBuff(CreatureObject buffer, String buffName) { try { throw new Exception(); diff --git a/src/services/CharacterService.java b/src/services/CharacterService.java index 25825e77..ec5a49c1 100644 --- a/src/services/CharacterService.java +++ b/src/services/CharacterService.java @@ -325,7 +325,7 @@ public class CharacterService implements INetworkDispatch { // TODO: Race abilities object.addAbility("startDance"); - object.addAbility("startDance+Basic"); + object.addAbility("startDance+basic"); object.addObjectToEquipList(datapad); object.addObjectToEquipList(inventory); diff --git a/src/services/ConnectionService.java b/src/services/ConnectionService.java index 9baa6d0b..ea22298d 100644 --- a/src/services/ConnectionService.java +++ b/src/services/ConnectionService.java @@ -83,7 +83,12 @@ public class ConnectionService implements INetworkDispatch { for(Client c : core.getActiveConnectionsMap().values()) { if(c.getParent() != null) { if ((System.currentTimeMillis() - c.getSession().getLastReadTime()) > 300000) { - disconnect(c); + try { + disconnect(c); + } catch (Exception e) { + System.err.println("ConnectionService:disconnect(): Error disconnecting client."); + e.printStackTrace(); + } } } } @@ -195,27 +200,43 @@ public class ConnectionService implements INetworkDispatch { CreatureObject object = (CreatureObject) client.getParent(); - object.setInviteCounter(0); - object.setInviteSenderId(0); - object.setInviteSenderName(""); - - if(object.getAttachment("inspireDuration") != null) - object.setAttachment("inspireDuration", null); - - if(object.getPerformanceListenee() != null) { - object.getPerformanceListenee().removeSpectator(object); - object.setPerformanceListenee(null); + try { + object.setInviteCounter(0); + object.setInviteSenderId(0); + object.setInviteSenderName(""); + } catch (Exception e) { + e.printStackTrace(); } - if(object.getPerformanceWatchee() != null) { - object.getPerformanceWatchee().removeSpectator(object); - object.setPerformanceWatchee(null); + try { + if(object.getAttachment("inspireDuration") != null) + object.setAttachment("inspireDuration", null); + + if(object.getPerformanceListenee() != null) { + object.getPerformanceListenee().removeSpectator(object); + object.setPerformanceListenee(null); + } + + if(object.getPerformanceWatchee() != null) { + object.getPerformanceWatchee().removeSpectator(object); + object.setPerformanceWatchee(null); + } + } catch (Exception e) { + e.printStackTrace(); } - core.groupService.handleGroupDisband(object, false); + try { + core.groupService.handleGroupDisband(object, false); + } catch (Exception e) { + e.printStackTrace(); + } - if (core.instanceService.isInInstance(object)) { - core.instanceService.remove(core.instanceService.getActiveInstance(object), object); + try { + if (core.instanceService.isInInstance(object)) { + core.instanceService.remove(core.instanceService.getActiveInstance(object), object); + } + } catch (Exception e) { + e.printStackTrace(); } object.setClient(null); @@ -227,27 +248,27 @@ public class ConnectionService implements INetworkDispatch { Point3D objectPos = object.getWorldPosition(); - List collidables = core.simulationService.getCollidables(object.getPlanet(), objectPos.x, objectPos.z, 512); - - collidables.forEach(c -> c.removeCollidedObject(object)); + try { + List collidables = core.simulationService.getCollidables(object.getPlanet(), objectPos.x, objectPos.z, 512); + + collidables.forEach(c -> c.removeCollidedObject(object)); + } catch (Exception e) { + e.printStackTrace(); + } - if (ghost != null) { - String objectShortName = object.getCustomName(); - - if (object.getCustomName().contains(" ")) { - String[] splitName = object.getCustomName().toLowerCase().split(" "); - objectShortName = splitName[0]; - } - - core.chatService.playerStatusChange(objectShortName, (byte) 0); - - for (Integer roomId : ghost.getJoinedChatChannels()) { - ChatRoom room = core.chatService.getChatRoom(roomId.intValue()); + try { + if (ghost != null) { + String objectShortName = object.getCustomName(); - if (room != null) { core.chatService.leaveChatRoom(object, roomId.intValue()); } - // work-around for any channels that may have been deleted, or only spawn on server startup, that were added to the joined channels - else { ghost.removeChannel(roomId); } + if (object.getCustomName().contains(" ")) { + String[] splitName = object.getCustomName().toLowerCase().split(" "); + objectShortName = splitName[0]; + } + + core.chatService.playerStatusChange(objectShortName, (byte) 0); } + } catch (Exception e) { + e.printStackTrace(); } long parentId = object.getParentId(); @@ -270,8 +291,12 @@ public class ConnectionService implements INetworkDispatch { } }*/ - if (core.getBountiesODB().contains(object.getObjectID())) { - core.missionService.getBountyMap().remove(core.getBountiesODB().get(object.getObjectID())); + try { + if (core.getBountiesODB().contains(object.getObjectID())) { + core.missionService.getBountyMap().remove(core.getBountiesODB().get(object.getObjectID())); + } + } catch (Exception e) { + e.printStackTrace(); } ghost.toggleFlag(PlayerFlags.LD); @@ -280,16 +305,23 @@ public class ConnectionService implements INetworkDispatch { object.setPerformanceWatchee(null); object.setAttachment("disconnectTask", null); - List> schedulers = core.playerService.getSchedulers().get(object.getObjectID()); - if(schedulers != null) { - schedulers.forEach(s -> s.cancel(true)); - schedulers.clear(); + try { + List> schedulers = core.playerService.getSchedulers().get(object.getObjectID()); + if(schedulers != null) { + schedulers.forEach(s -> s.cancel(true)); + schedulers.clear(); + } + core.playerService.getSchedulers().remove(object.getObjectID()); + } catch (Exception e) { + e.printStackTrace(); } - core.playerService.getSchedulers().remove(object.getObjectID()); - - core.getSWGObjectODB().put(object.getObjectID(), object); - core.objectService.destroyObject(object); + try { + core.getSWGObjectODB().put(object.getObjectID(), object); + core.objectService.destroyObject(object); + } catch (Exception e) { + e.printStackTrace(); + } } diff --git a/src/services/DevService.java b/src/services/DevService.java index 10887e91..18a090fa 100644 --- a/src/services/DevService.java +++ b/src/services/DevService.java @@ -92,8 +92,7 @@ public class DevService implements INetworkDispatch { suiOptions.put((long) 120, "House Deeds"); suiOptions.put((long) 125, "Crafting Tools"); suiOptions.put((long) 130, "Vehicle Deeds"); - suiOptions.put((long) 121, "Sandbox City"); - suiOptions.put((long) 140, "Guild Registry Device (PDA)"); + suiOptions.put((long) 121, "Sandbox City"); } break; @@ -108,6 +107,7 @@ public class DevService implements INetworkDispatch { suiOptions.put((long) 41, "Tusken Rucksack"); suiOptions.put((long) 42, "Heroism Jewlery Set"); suiOptions.put((long) 43, "Breath of Heaven"); + suiOptions.put((long) 140, "Guild Registry Device (PDA)"); break; case 5: // [Items] Armor suiOptions.put((long) 50, "Assault Armor"); @@ -142,6 +142,15 @@ public class DevService implements INetworkDispatch { case 11: // Locations suiOptions.put((long) 122, "Teleport to Jedi Ruins"); suiOptions.put((long) 124, "Teleport to Mos Eisley"); + if (creature.getClient().isGM()) { + suiOptions.put((long) 164, "Teleport to Mining Outpost"); + suiOptions.put((long) 165, "Teleport to Spawn Area #1"); + suiOptions.put((long) 166, "Teleport to Imperial Op"); + suiOptions.put((long) 167, "Teleport to Rebel Base "); + suiOptions.put((long) 168, "Teleport to NS vs SMC Battle"); + suiOptions.put((long) 153, "Teleport to Force Crystal Hunter's Cave"); + suiOptions.put((long) 121, "Teleport to Sandbox City"); + } break; } @@ -1245,14 +1254,36 @@ public class DevService implements INetworkDispatch { case 124: core.simulationService.transferToPlanet(player, core.terrainService.getPlanetByName("tatooine"), new Point3D(3521,4,-4800), player.getOrientation(), null); return; + + case 164: + core.simulationService.transferToPlanet(player, core.terrainService.getPlanetByName("dantooine"), new Point3D(-284,18,2853), player.getOrientation(), null); + return; + + case 165: + core.simulationService.transferToPlanet(player, core.terrainService.getPlanetByName("dantooine"), new Point3D(-1586,18,-7688), player.getOrientation(), null); + return; + + case 166: + core.simulationService.transferToPlanet(player, core.terrainService.getPlanetByName("dantooine"), new Point3D(-4211,18,-2349), player.getOrientation(), null); + return; + + case 167: + core.simulationService.transferToPlanet(player, core.terrainService.getPlanetByName("dantooine"), new Point3D(-4211,18,-2349), player.getOrientation(), null); + return; + + case 168: + core.simulationService.transferToPlanet(player, core.terrainService.getPlanetByName("dathomir"), new Point3D(-2450,18,1521), player.getOrientation(), null); + return; case 123: TangibleObject arakydDroids = (TangibleObject) core.objectService.createObject("object/tangible/mission/shared_mission_bounty_droid_probot.iff", planet); - //arakydDroids.setStackable(true); - //arakydDroids.setStackCount(10); + arakydDroids.setStackable(true); + arakydDroids.setUses(20); inventory.add(arakydDroids); TangibleObject seekerDroids = (TangibleObject) core.objectService.createObject("object/tangible/mission/shared_mission_bounty_droid_seeker.iff", planet); + seekerDroids.setStackable(true); + seekerDroids.setUses(20); inventory.add(seekerDroids); return; @@ -1272,6 +1303,10 @@ public class DevService implements INetworkDispatch { TangibleObject guildRegistry = (TangibleObject) core.objectService.createObject("object/tangible/furniture/technical/shared_guild_registry_initial.iff", planet); inventory.add(guildRegistry); return; + + case 153: + Point3D position = new Point3D(-6222,1,7380); + core.simulationService.transferToPlanet(player, core.terrainService.getPlanetByName("dantooine"), position, player.getOrientation(), null); } } }); diff --git a/src/services/GroupService.java b/src/services/GroupService.java index d9d55256..d427cec1 100644 --- a/src/services/GroupService.java +++ b/src/services/GroupService.java @@ -245,7 +245,7 @@ public class GroupService implements INetworkDispatch { creature.updateGroupInviteInfo(); creature.setGroupId(0); creature.makeUnaware(group); - core.chatService.leaveChatRoom(creature, group.getChatRoomId()); + core.chatService.leaveChatRoom(creature, group.getChatRoomId(), true); creature.sendSystemMessage("@group:removed", (byte) 0); for(SWGObject member : memberList) { @@ -272,7 +272,7 @@ public class GroupService implements INetworkDispatch { creature2.makeUnaware(group); - core.chatService.leaveChatRoom(creature2, group.getChatRoomId()); + core.chatService.leaveChatRoom(creature2, group.getChatRoomId(), true); creature.sendSystemMessage("@group:disbanded", (byte) 0); removeGroupBuffs((CreatureObject) member); @@ -300,7 +300,7 @@ public class GroupService implements INetworkDispatch { creature.updateGroupInviteInfo(); creature.setGroupId(0); creature.makeUnaware(group); - core.chatService.leaveChatRoom(creature, group.getChatRoomId()); + core.chatService.leaveChatRoom(creature, group.getChatRoomId(), true); creature.sendSystemMessage("@group:removed", (byte) 0); for(SWGObject member : group.getMemberList()) { diff --git a/src/services/GuildService.java b/src/services/GuildService.java index fed7c2c9..dfa0a23f 100644 --- a/src/services/GuildService.java +++ b/src/services/GuildService.java @@ -21,20 +21,49 @@ ******************************************************************************/ package services; +import java.util.Date; +import java.util.HashMap; import java.util.Map; +import java.util.Map.Entry; +import java.util.TreeMap; +import java.util.Vector; +import java.util.concurrent.ConcurrentHashMap; +import protocol.swg.chat.ChatRoomMessage; +import resources.common.OutOfBand; +import resources.datatables.DisplayType; import resources.guild.Guild; +import resources.guild.GuildMember; import resources.objects.SWGSet; +import resources.objects.creature.CreatureObject; import resources.objects.guild.GuildObject; +import resources.objects.intangible.IntangibleObject; +import resources.objects.player.PlayerObject; +import resources.objects.tangible.TangibleObject; +import services.chat.ChatRoom; +import services.chat.Mail; +import services.sui.SUIService.InputBoxType; +import services.sui.SUIService.ListBoxType; +import services.sui.SUIService.MessageBoxType; +import services.sui.SUITableItem; +import services.sui.SUIWindow; +import services.sui.SUIWindow.SUICallback; +import services.sui.SUIWindow.Trigger; import main.NGECore; +import engine.clientdata.ClientFileManager; +import engine.clientdata.StfTable; +import engine.clientdata.visitors.DatatableVisitor; import engine.resources.objects.SWGObject; import engine.resources.service.INetworkDispatch; import engine.resources.service.INetworkRemoteEvent; +import engine.resources.common.CRC; +import engine.resources.common.Stf; public class GuildService implements INetworkDispatch { private NGECore core; private GuildObject object; + private Map guildRanks = new ConcurrentHashMap(); public GuildService(NGECore core) { this.core = core; @@ -49,9 +78,24 @@ public class GuildService implements INetworkDispatch { object = (GuildObject) this.core.objectService.createObject("object/guild/shared_guild_object.iff", core.terrainService.getPlanetList().get(0)); } + try { + StfTable stf = new StfTable("clientdata/string/en/guild_rank_title.stf"); + + for (int s = 1; s < stf.getRowCount(); s++) { + String rank = stf.getStringById(s).getKey(); + + if (rank != null && rank != "") { + guildRanks.put((long) s, "@guild_rank_title:" + rank); + } + } + + } catch (Exception e) { + e.printStackTrace(); + } + } - public Guild createGuild(String abbreviation, String name, SWGObject leader) { + public Guild createGuild(String abbreviation, String name, CreatureObject leader) { if (leader == null) return null; @@ -59,49 +103,867 @@ public class GuildService implements INetworkDispatch { int listSize = object.getGuildList().size(); Guild guild = new Guild((listSize == 0 ? 1 : listSize + 1), abbreviation, name, leader); - object.getGuildList().add(guild); + core.chatService.createChatRoom("", "guild." + guild.getId(), leader.getCustomName(), false, true, false); + ChatRoom guildChat = core.chatService.createChatRoom("", "guild." + guild.getId() + ".GuildChat", leader.getCustomName(), false, true, false); + guild.setChatRoomId(guildChat.getRoomId()); + object.getGuilds().put(guild.getId(), guild); + object.getGuildList().add(guild.getString()); + + GuildMember member = joinGuild(guild, leader, null); + member.giveAllPermissions(); return guild; } + public GuildMember joinGuild(Guild guild, CreatureObject joinee, CreatureObject acceptor) { + GuildMember member = null; + PlayerObject ghost = joinee.getPlayerObject(); + if (ghost == null) + return member; + + member = guild.addMember(joinee.getObjectID()); + + joinee.setGuildId(guild.getId()); + + guild.getSponsoredPlayers().remove(joinee.getObjectID()); + + if (joinee.isInQuadtree()) + core.chatService.joinChatRoom(joinee.getCustomName(), guild.getChatRoomId()); + else + ghost.addChannel(guild.getChatRoomId()); + + // Notify guild & player + if (acceptor != null) { + guild.sendGuildMail(guild.getName(), "@guildmail:accept_subject", new Stf("@guildmail:accept_text").getStfValue().replace("%TU", acceptor.getCustomName()).replace("%TT", joinee.getCustomName())); + + Mail acceptedMail = new Mail(); + acceptedMail.setMailId(core.chatService.generateMailId()); + acceptedMail.setTimeStamp((int) new Date().getTime()); + acceptedMail.setRecieverId(joinee.getObjectID()); + acceptedMail.setStatus(Mail.NEW); + acceptedMail.setMessage(new Stf("@guildmail:accept_target_text").getStfValue().replace("%TU", acceptor.getCustomName()).replace("%TT", joinee.getCustomName())); + acceptedMail.setSubject("@guildmail:accept_subject"); + acceptedMail.setSenderName(guild.getName()); + core.chatService.storePersistentMessage(acceptedMail); + + if (joinee.isInQuadtree()) + core.chatService.sendPersistentMessageHeader(joinee.getClient(), acceptedMail); + } + + // Update association device to guild stats + TangibleObject datapad = (TangibleObject) joinee.getSlottedObject("datapad"); + + if (datapad != null) { + datapad.viewChildren(joinee, true, false, (obj) -> { + if (obj instanceof IntangibleObject && obj.getTemplate().equals("object/intangible/data_item/shared_guild_stone.iff")) { // shared_guild_stone + obj.setStringAttribute("guild_name", guild.getName()); + obj.setStringAttribute("guild_abbrev", guild.getAbbreviation()); + obj.setStringAttribute("guild_leader", guild.getLeaderName()); + } + }); + } + member.setName(joinee.getCustomName()); + member.setLevel(joinee.getLevel()); + if (joinee.getPlayerObject() != null) { + member.setProfession(core.playerService.getFormalProfessionName(joinee.getPlayerObject().getProfession())); + } + + return member; + } + + public void handleCreateGuildName(CreatureObject actor, SWGObject creationSource) { + if (actor.getGuildId() != 0) { actor.sendSystemMessage("@guild:create_fail_in_guild", DisplayType.Broadcast); return; } + + SUIWindow window = core.suiService.createInputBox(InputBoxType.INPUT_BOX_OK_CANCEL, "@guild:create_name_title", "@guild:create_name_prompt", actor, null, 0, + (owner, eventType, returnList) -> { + String guildName = returnList.get(0); // TODO: Character checks + + if (guildName.length() > 24) { actor.sendSystemMessage("@guild:create_fail_name_bad_length", DisplayType.Broadcast); handleCreateGuildName(actor, creationSource); return;} + if (getGuildByName(guildName) != null) { actor.sendSystemMessage("@guild:create_fail_name_in_use", DisplayType.Broadcast); handleCreateGuildName(actor, creationSource); return;} + + handleCreateGuildAbbrev(actor, guildName, creationSource); + }); + window.setProperty("txtInput:MaxLength", "24"); + window.setProperty("txtInput:NumericInteger", "False"); + + core.suiService.openSUIWindow(window); + } + + public void handleCreateGuildAbbrev(CreatureObject actor, String guildName, SWGObject creationSource) { + SUIWindow window = core.suiService.createInputBox(InputBoxType.INPUT_BOX_OK_CANCEL, "@guild:create_abbrev_title", "@guild:create_abbrev_prompt", actor, null, 0, + (owner, eventType, returnList) -> { + String abbrev = returnList.get(0); // TODO: Character checks + + if (abbrev.length() > 5) { actor.sendSystemMessage("@guild:create_fail_abbrev_bad_length", DisplayType.Broadcast); handleCreateGuildAbbrev(actor, guildName, creationSource); return;} + if (getGuildByAbbreviation(abbrev) != null) { actor.sendSystemMessage("@guild:create_fail_abbrev_in_use", DisplayType.Broadcast); handleCreateGuildAbbrev(actor, guildName, creationSource); return;} + + Guild guild = createGuild(abbrev, guildName, actor); + if (guild != null && creationSource != null && creationSource.getTemplate().equals("object/tangible/furniture/technical/shared_guild_registry_initial.iff")) { + core.objectService.destroyObject(creationSource); + } + }); + + window.setProperty("txtInput:MaxLength", "4"); + window.setProperty("txtInput:NumericInteger", "False"); + + core.suiService.openSUIWindow(window); + } + + public void handleViewPermissionsList(CreatureObject actor, Guild guild) { + final SUIWindow window = core.suiService.createSUIWindow("Script.tablePage", actor, null, (float) 0); + window.setProperty("bg.caption.lblTitle:Text", "Permissions List"); + window.setProperty("comp.Prompt:Visible", "False"); + window.setProperty("btnExport:Visible", "False"); + window.setProperty("tablePage:Size", "785,434"); + window.setProperty("comp.TablePage.header:ScrollExtent", "444,30"); + window.addTableColumn("Name", "text"); + window.addTableColumn("Mail", "text"); + window.addTableColumn("Sponsor", "text"); + window.addTableColumn("Title", "text"); + window.addTableColumn("Accept", "text"); + window.addTableColumn("Kick", "text"); + window.addTableColumn("War", "text"); + window.addTableColumn("Change Guild Name", "text"); + window.addTableColumn("Disband", "text"); + window.addTableColumn("Rank", "text"); + window.addTableColumn("War Excluded", "text"); + window.addTableColumn("War Exclusive", "text"); + + Map members = guild.getMembers(); + + members.entrySet().forEach(e -> { + GuildMember member = e.getValue(); + for (SUITableItem column : window.getTableItems()) { + if (column.getItemName().equals("Name")) { + window.addTableCell(member.getName(), e.getKey(), column.getIndex()); + continue; + } + else if (member.getPermissions().contains(column.getItemName())) { + window.addTableCell("X", e.getKey(), column.getIndex()); + continue; + } else + window.addTableCell("", e.getKey(), column.getIndex()); + } + }); + + Vector returnList = new Vector(); + returnList.add("comp.TablePage.table:SelectedRow"); + + window.addHandler(0, "", Trigger.TRIGGER_OK, returnList, (owner, eventType, resultList) -> { + + int selectedRow = Integer.parseInt(resultList.get(0)); + GuildMember selectedMember = guild.getMember(window.getTableObjIdByRow(selectedRow)); + + if (selectedMember == null) + return; + + handleChangeMemberPermissions((CreatureObject) owner, guild, selectedMember, "PermissionsList"); + }); + core.suiService.openSUIWindow(window); + } + + public void handleChangeMemberPermissions(CreatureObject actor, Guild guild, GuildMember target) { handleChangeMemberPermissions(actor, guild, target, ""); } + + public void handleChangeMemberPermissions(CreatureObject actor, Guild guild, GuildMember target, String source) { + GuildMember requester = guild.getMember(actor.getObjectID()); + + if (requester == null) + return; + + final SUIWindow window = core.suiService.createListBox(ListBoxType.LIST_BOX_OK_CANCEL, "\\#00FF00\\" + target.getName() + "\\#FFFFFF Guild Member Permissions", + new Stf("@guild:permissions_prompt").getStfValue().replace("%TU", "\\#00FF00\\" + target.getName() + "\\#.\\"), target.getAllPermissions(requester), actor, null, 0); + + window.setProperty("listBox:Size", "487,316"); + + Vector returnList = new Vector(); + returnList.add("List.lstList:SelectedRow"); + + SUICallback windowCallback = (owner, eventType, resultList) -> { + switch(eventType) { + case 0: + if (resultList.size() == 0) + return; + + int selectedPermission = (int) (window.getObjectIdByIndex(Integer.parseInt(resultList.get(0)))); + + switch (selectedPermission) { + case 1: // Mail + if (target.hasMailPermission()) target.setMailPermission(false); + else target.setMailPermission(true); + break; + case 2: // Sponsor + if (target.hasSponsorPermission()) target.setSponsorPermission(false); + else target.setSponsorPermission(true); + break; + case 3: // Title + if (target.hasTitlePermission()) target.setTitlePermission(false); + else target.setTitlePermission(true); + break; + case 4: // Accept + if (target.hasAcceptPermission()) target.setAcceptPermission(false); + else target.setAcceptPermission(true); + break; + case 5: // Kick + if (target.hasKickPermission()) target.setKickPermission(false); + else target.setKickPermission(true); + break; + case 6: // War + if (target.hasWarPermission()) target.setWarPermission(false); + else target.setWarPermission(true); + break; + case 7: // Change Guild Name + if (target.hasChangeNamePermission()) target.setChangeNamePermission(false); + else target.setChangeNamePermission(true); + break; + case 8: // Disband + if (target.hasDisbandPermission()) target.setDisbandPermission(false); + else target.setDisbandPermission(true); + break; + case 9: // Rank + if (target.hasRankPermission()) target.setRankPermission(false); + else target.setRankPermission(true); + break; + case 10: // War Excluded + if (target.isWarExcluded()) target.setWarExcluded(false); + else target.setWarExcluded(true); + break; + case 11: // War Exclusive + if (target.isWarExclusive()) target.setWarExclusive(false); + else target.setWarExclusive(true); + break; + + default: break; + } + handleChangeMemberPermissions(actor, guild, target, source); + break; + + case 1: // Cancel + break; + + case 2: // Back + switch(source) { + case "PermissionsList": + handleViewPermissionsList(actor, guild); + break; + case "MemberOptions": + handleMemberOptions(actor, guild, target); + break; + default: return; + } + break; + } + }; + window.addHandler(0, "", Trigger.TRIGGER_OK, returnList, windowCallback); + + if (!source.isEmpty() || !source.equals("")) { + window.setProperty("btnOther:Visible", "True"); + window.setProperty("btnOther:Text", "@guild:back_button"); + window.addHandler(1, "", Trigger.TRIGGER_CANCEL, returnList, windowCallback); + window.addHandler(2, "", Trigger.TRIGGER_UPDATE, returnList, windowCallback); + } + core.suiService.openSUIWindow(window); + } + + public void handleChangeGuildName(CreatureObject actor, Guild guild) { + SUIWindow window = core.suiService.createInputBox(InputBoxType.INPUT_BOX_OK_CANCEL, "@guild:namechange_name_title", "@guild:namechange_name_prompt", actor, null, 0, + (owner, eventType, returnList) -> { + String guildName = returnList.get(0); // TODO: Character checks + + if (guildName.length() > 24) { actor.sendSystemMessage("@guild:namechange_fail_name_bad_length", DisplayType.Broadcast); handleChangeGuildName(actor, guild); return;} + // Allows the guild to keep their old name if they want to + if (!guildName.equals(guild.getName()) && getGuildByName(guildName) != null) { actor.sendSystemMessage("@guild:create_fail_name_in_use", DisplayType.Broadcast); handleChangeGuildName(actor, guild); return;} + + handleChangeGuildAbbrev(actor, guild, guildName); + }); + window.setProperty("txtInput:MaxLength", "24"); + window.setProperty("txtInput:NumericInteger", "False"); + core.suiService.openSUIWindow(window); + } + + public void handleChangeGuildAbbrev(CreatureObject actor, Guild guild, String newName) { + SUIWindow window = core.suiService.createInputBox(InputBoxType.INPUT_BOX_OK_CANCEL, "@guild:namechange_abbrev_title", "@guild:namechange_abbrev_prompt", actor, null, 0, + (owner, eventType, returnList) -> { + String newAbbrev = returnList.get(0); // TODO: Character checks + + if (newAbbrev.length() > 5) { actor.sendSystemMessage("@guild:namechange_fail_abbrev_bad_length", DisplayType.Broadcast); handleChangeGuildAbbrev(actor, guild, newName); return;} + // Allows the guild to keep their old abbreviation if they want to + if (!guild.getAbbreviation().equals(newAbbrev) && getGuildByAbbreviation(newName) != null) { actor.sendSystemMessage("@guild:create_fail_name_in_use", DisplayType.Broadcast); handleChangeGuildAbbrev(actor, guild, newName); return;} + + changeGuildNameAbbrev(actor, guild, newName, newAbbrev); + }); + window.setProperty("txtInput:MaxLength", "4"); + window.setProperty("txtInput:NumericInteger", "False"); + core.suiService.openSUIWindow(window); + } + + public void changeGuildNameAbbrev(CreatureObject actor, Guild guild, String newName, String newAbbreviation) { + if (newName.equals(guild.getName()) && newAbbreviation.equals(guild.getAbbreviation())) + return; + + object.getGuildList().remove(guild.getString()); + + guild.setName(newName); + guild.setAbbreviation(newAbbreviation); + + object.getGuildList().add(guild.getString()); + + guild.sendGuildMail(newName, "@guildmail:namechange_subject", + new Stf("@guildmail:namechange_text").getStfValue().replace("%TO", actor.getCustomName()).replace("%TU", newName).replace("%TT", newAbbreviation)); + } + + public void handleChangeGuildMotd(CreatureObject actor, Guild guild) { + SUIWindow window = core.suiService.createInputBox(InputBoxType.INPUT_BOX_OK_CANCEL, "@guild:menu_member_motd", "@guild:prompt_member_motd_message", actor, null, 0, + (owner, eventType, resultList) -> { + String newMotd = resultList.get(0); + + guild.setMotd(newMotd); + + actor.sendSystemMessage("Guild Message of the Day set to: " + newMotd, DisplayType.Broadcast); + }); + + window.setProperty("inputBox:Size", "506,430"); + core.suiService.openSUIWindow(window); + } + + public void handleViewGuildMembers(CreatureObject actor, Guild guild) { + final SUIWindow window = core.suiService.createSUIWindow("Script.tablePage", actor, null, (float) 0); + window.setProperty("bg.caption.lblTitle:Text", "@guild:members_title"); + window.setProperty("comp.Prompt.lblPrompt:Text", "@guild:members_prompt"); + //if (actingMember.getAllPermissions(actingMember).size() > 2) window.setProperty("comp.Prompt.lblPrompt:Text", "@guild:members_show_prompt"); + window.setProperty("tablePage:Size", "785,634"); + // window.setProperty("comp.TablePage.table:columsizedatasource", "dsColSizes"); + window.setProperty("comp.TablePage.header:ScrollExtent", "444,30"); + window.addTableColumn("@guild:table_title_level", "text"); + window.addTableColumn("@guild:table_title_name", "text"); + window.addTableColumn("@guild:table_title_profession", "text"); + window.addTableColumn("@guild:table_title_rank", "text"); + window.addTableColumn("@guild:table_title_status", "text"); + window.addTableColumn("@guild:table_title_title", "text"); + window.addTableColumn("@guild:table_title_war_excluded", "text"); + window.addTableColumn("@guild:table_title_war_included", "text"); + + Map members = guild.getMembers(); + members.entrySet().forEach(e -> { + GuildMember member = e.getValue(); + for (SUITableItem column : window.getTableItems()) { + switch(column.getItemName()) { + case "@guild:table_title_level": + window.addTableCell(String.valueOf(member.getLevel()), e.getKey(), column.getIndex()); + continue; + case "@guild:table_title_name": + window.addTableCell(member.getName(), e.getKey(), column.getIndex()); + continue; + case "@guild:table_title_profession": + window.addTableCell(member.getProfession(), e.getKey(), column.getIndex()); + continue; + case "@guild:table_title_rank": + window.addTableCell(member.getRank(), e.getKey(), column.getIndex()); + continue; + case "@guild:table_title_status": + //window.addTableCell(member.getStatus(), e.getKey(), column.getIndex()); + continue; + case "@guild:table_title_title": + window.addTableCell(member.getTitle(), e.getKey(), column.getIndex()); + continue; + case "@guild:table_title_war_excluded": + if (member.isWarExcluded()) window.addTableCell("X", e.getKey(), column.getIndex()); + else window.addTableCell("", e.getKey(), column.getIndex()); + continue; + case "@guild:table_title_war_included": + if (member.isWarExclusive()) window.addTableCell("X", e.getKey(), column.getIndex()); + else window.addTableCell("", e.getKey(), column.getIndex()); + continue; + } + } + }); + + Vector returnList = new Vector(); + returnList.add("comp.TablePage.table:SelectedRow"); + + window.addHandler(0, "", Trigger.TRIGGER_OK, returnList, (owner, eventType, resultList) -> { + + long objectId = window.getTableObjIdByRow(Integer.parseInt(resultList.get(0))); + + if (objectId == 0) + return; + + GuildMember selectedMember = guild.getMember(objectId); + + if (selectedMember == null) + return; + + handleMemberOptions((CreatureObject) owner, guild, selectedMember); + }); + + core.suiService.openSUIWindow(window); + } + + public void handleMemberOptions(CreatureObject actor, Guild guild, GuildMember member) { + GuildMember actingMember = guild.getMember(actor.getObjectID()); + + Map options = new HashMap(); + if (actingMember.getPermissions().size() > 2) + options.put((long) 0, "@guild:permissions"); + if (actingMember.hasTitlePermission()) + options.put((long) 1, "@guild:title"); + //if (actingMember.hasRankPermission()) + //options.put((long) 2, "@guild:rank"); + if (actingMember.hasKickPermission()) + options.put((long) 3, "@guild:kick"); + + if (options.size() == 0) + return; + + SUIWindow window = core.suiService.createListBox(ListBoxType.LIST_BOX_OK_CANCEL, "@guild:member_options_title", + new Stf("@guild:member_options_prompt").getStfValue().replace("%TU", "\\#00FF00\\" + member.getName() + "\\#.\\"), options, actor, null, 0); + + Vector returnList = new Vector(); + returnList.add("List.lstList:SelectedRow"); + + SUICallback callBack = (owner, eventType, resultList) -> { + + if (eventType == 1) + return; + + if (resultList.size() == 0) + return; + + int selectedOption = (int) (window.getObjectIdByIndex(Integer.parseInt(resultList.get(0)))); + + switch(selectedOption) { + case 0: + core.suiService.closeSUIWindow(actor, window.getWindowId()); + handleChangeMemberPermissions(actor, guild, member, "MemberOptions"); + break; + case 1: + if (!actingMember.hasTitlePermission()) { + actor.sendSystemMessage("@guild:guild_no_permission_operation", DisplayType.Broadcast); + return; + } + handleMemberSetTitle(actor, guild, member); + break; + case 2: + break; + case 3: + SWGObject target = core.objectService.getObject(member.getObjectId()); + + if (target == null) + target = core.objectService.getCreatureFromDB(member.getObjectId()); + + if (target == null) { + actor.sendSystemMessage("@guild:could_not_find_member", DisplayType.Broadcast); + return; + } + + leaveGuild(actor, (CreatureObject) target, guild); + core.suiService.closeSUIWindow(actor, window.getWindowId()); + break; + default: break; + } + }; + window.addHandler(0, "", Trigger.TRIGGER_OK, returnList, callBack); + core.suiService.openSUIWindow(window); + } + + public void handleMemberSetTitle(CreatureObject actor, Guild guild, GuildMember target) { + GuildMember actingMember = guild.getMember(actor.getObjectID()); + + if (!actingMember.hasTitlePermission()) { + actor.sendSystemMessage("@guild:guild_no_permission_operation", DisplayType.Broadcast); + return; + } + + SUIWindow window = core.suiService.createInputBox(InputBoxType.INPUT_BOX_OK_CANCEL, "@guild:title_title", + new Stf("@guild:title_prompt").getStfValue().replace("%TU", target.getName()), actor, null, 0); + + Vector returnList = new Vector(); + returnList.add("txtInput:LocalText"); + + window.setProperty("txtInput:MaxLength", "24"); + window.setProperty("txtInput:NumericInteger", "False"); + + window.addHandler(0, "", Trigger.TRIGGER_OK, returnList, (owner, eventType, resultList) -> { + String title = resultList.get(0); + + if (title.length() > 25) { + actor.sendSystemMessage("@guild:title_fail_bad_length", DisplayType.Broadcast); + core.suiService.closeSUIWindow(actor, window.getWindowId()); + handleMemberSetTitle(actor, guild, target); + return; + } + + target.setTitle(title); + + actor.sendSystemMessage(OutOfBand.ProsePackage("@guild:title_self", "TU", target.getName(), "TT", title), DisplayType.Broadcast); + + core.suiService.closeSUIWindow(actor, window.getWindowId()); + + if (core.objectService.getObject(target.getObjectId()) != null) { + CreatureObject creoTarget = (CreatureObject) core.objectService.getObject(target.getObjectId()); + if (creoTarget.getClient() == null || creoTarget.getClient().getSession() == null) + return; + + creoTarget.sendSystemMessage(OutOfBand.ProsePackage("@guild:title_target", "TU", actor.getCustomName(), "TT", title), DisplayType.Broadcast); + } + }); + core.suiService.openSUIWindow(window); + } + + + + public void handleGuildSponsorWindow(CreatureObject actor) { + SUIWindow wndSponsorPlayer = core.suiService.createInputBox(InputBoxType.INPUT_BOX_OK_CANCEL, "@guild:sponsor_title", "@guild:sponsor_prompt", actor, null, (float) 10, (sponsor, eventType, returnList) -> { + + if (eventType != 0) + return; + + String input = returnList.get(0); + + if (input.isEmpty()) + return; + + SWGObject pSponsored = core.objectService.getObjectByFirstName(input); + + if (pSponsored == null || !pSponsored.isInQuadtree()) { + actor.sendSystemMessage("@guild:sponsor_not_found", DisplayType.Broadcast); + return; + } + + if (((CreatureObject)pSponsored).getGuildId() != 0) { + actor.sendSystemMessage(OutOfBand.ProsePackage("@guild:sponsor_already_in_guild", "TU", pSponsored.getCustomName()), DisplayType.Broadcast); + return; + } + + Guild invitingGuild = core.guildService.getGuildById(actor.getGuildId()); + + SUIWindow wndSponsoredConfirm = core.suiService.createMessageBox(MessageBoxType.MESSAGE_BOX_YES_NO, "@guild:sponsor_verify_title", + new Stf("@guild:sponsor_verify_prompt").getStfValue().replace("%TU", actor.getCustomName()).replace("%TT", invitingGuild.getName()), pSponsored, null, (float) 10); + + wndSponsoredConfirm.addHandler(0, "", Trigger.TRIGGER_OK, new Vector(), (cOwner, cEventType, cReturnList) -> { + + if (cEventType != 0) + return; + + Guild guild = core.guildService.getGuildById(actor.getGuildId()); + + if (guild == null) + return; + + guild.getSponsoredPlayers().put(cOwner.getObjectID(), cOwner.getCustomName()); + + ((CreatureObject)cOwner).sendSystemMessage(OutOfBand.ProsePackage("@guild:sponsor_target", "TT", guild.getName(), "TU", actor.getCustomName()), DisplayType.Broadcast); + + guild.sendGuildMail(guild.getName(), "@guildmail:sponsor_subject", new Stf("@guildmail:sponsor_text").getStfValue().replace("%TU", actor.getCustomName()).replace("%TT", cOwner.getCustomName())); + }); + core.suiService.openSUIWindow(wndSponsoredConfirm); + + actor.sendSystemMessage(OutOfBand.ProsePackage("@guild:sponsor_self", "TU", pSponsored.getCustomName(), "TT", invitingGuild.getName()), DisplayType.Broadcast); + + }); + core.suiService.openSUIWindow(wndSponsorPlayer); + } + + + public void handleGuildDisband(CreatureObject actor, Guild guild) { + + Map members = guild.getMembers(); + + members.entrySet().forEach(e -> { + CreatureObject target = (CreatureObject) core.objectService.getObject(e.getKey()); + + if (target == null) + target = (CreatureObject) core.objectService.getCreatureFromDB(e.getKey()); + + if (target != null) { + + target.setGuildId(0); + + // Update association device + TangibleObject datapad = (TangibleObject) target.getSlottedObject("datapad"); + + if (datapad != null) { + datapad.viewChildren(target, true, false, (obj) -> { + if (obj instanceof IntangibleObject && obj.getTemplate().equals("object/intangible/data_item/shared_guild_stone.iff")) { + //obj.removeAttribute("guild_name"); + //obj.removeAttribute("guild_abbrev"); + //obj.removeAttribute("guild_leader"); + } + }); + } + + if (target.getClient() != null && target.getClient().getSession() != null) + core.chatService.leaveChatRoom(target, guild.getChatRoomId(), true); + else + target.getPlayerObject().removeChannel(guild.getChatRoomId()); + } + }); + + guild.sendGuildMail(guild.getName(), "@guildmail:disband_subject", new Stf("@guildmail:disband_text").getStfValue().replace("%TU", actor.getCustomName())); + + removeGuild(guild.getId()); + } + + + public void handleManageSponsoredPlayers(CreatureObject actor) { + Guild guild = getGuildById(actor.getGuildId()); + + + if (guild == null) + return; + + Map sponsorships = guild.getSponsoredPlayers(); + + SUIWindow wndSponsoredPlayers = core.suiService.createListBox(ListBoxType.LIST_BOX_OK_CANCEL, "@guild:sponsored_title", "@guild:sponsored_prompt", sponsorships, actor, null, 0); + + Vector returnList = new Vector(); + returnList.add("List.lstList:SelectedRow"); + + wndSponsoredPlayers.addHandler(0, "", Trigger.TRIGGER_OK, returnList, (owner, eventType, resultList) -> { + int index = Integer.parseInt(resultList.get(0)); + long objectId = wndSponsoredPlayers.getObjectIdByIndex(index); + + if(objectId == 0) + return; + + SWGObject sponsoredPlayer = core.objectService.getObject(objectId); + + if (sponsoredPlayer == null) { + sponsoredPlayer = core.objectService.getCreatureFromDB(objectId); + + if (sponsoredPlayer == null) { + guild.getSponsoredPlayers().remove(objectId); + return; + } + } + final SWGObject finalSponseredPlayer = sponsoredPlayer; + + Map options = new HashMap(); + options.put((long) 0, "Accept"); + options.put((long) 1, "Decline"); + options.put((long) 2, "Cancel"); + SUIWindow sponsorOptions = core.suiService.createListBox(ListBoxType.LIST_BOX_OK_CANCEL, "@guild:sponsored_options_title", + new Stf("@guild:sponsored_options_prompt").getStfValue().replace("%TU", sponsoredPlayer.getCustomName()), options, owner, null, 0); + + Vector returnList2 = new Vector(); + returnList2.add("List.lstList:SelectedRow"); + + sponsorOptions.addHandler(0, "", Trigger.TRIGGER_OK, returnList2, (owner2, eventType2, resultList2) -> { + int selectedOption = Integer.parseInt(resultList2.get(0)); + + Guild gOwner = getGuildById(((CreatureObject)owner2).getGuildId()); + CreatureObject sponsoredCreo = (CreatureObject) finalSponseredPlayer; + + switch(selectedOption) { + case 0: // Accept + + if (sponsoredCreo.isInQuadtree()) + sponsoredCreo.sendSystemMessage(OutOfBand.ProsePackage("@guild:sponsor_accept", "TU", owner2.getCustomName()), DisplayType.Broadcast); + + joinGuild(gOwner, sponsoredCreo, (CreatureObject) owner2); + break; + case 1: // Decline + sponsoredCreo.sendSystemMessage(OutOfBand.ProsePackage("@guild:sponsor_decline", "TU", owner2.getCustomName()), DisplayType.Broadcast); + + handleGuildDeclineSponsorship(gOwner, (CreatureObject) owner2, sponsoredCreo); + break; + case 2: // Cancel + break; + default: + break; + } + }); + + core.suiService.openSUIWindow(sponsorOptions); + }); + core.suiService.openSUIWindow(wndSponsoredPlayers); + } + + public void handleGuildDeclineSponsorship(Guild guild, CreatureObject actor, CreatureObject sponsoree) { + guild.getSponsoredPlayers().remove(sponsoree.getObjectID()); + + guild.sendGuildMail(guild.getName(), "@guildmail:decline_subject", new Stf("@guildmail:decline_text").getStfValue().replace("%TU", actor.getCustomName()).replace("%TT", sponsoree.getCustomName())); + + Mail declinedMail = new Mail(); + declinedMail.setMailId(core.chatService.generateMailId()); + declinedMail.setTimeStamp((int) new Date().getTime()); + declinedMail.setRecieverId(sponsoree.getObjectID()); + declinedMail.setStatus(Mail.NEW); + declinedMail.setMessage(new Stf("@guildmail:decline_target_text").getStfValue().replace("%TU", actor.getCustomName()).replace("%TT", guild.getName())); + declinedMail.setSubject("@guildmail:decline_subject"); + declinedMail.setSenderName(guild.getName()); + core.chatService.storePersistentMessage(declinedMail); + + if (sponsoree.isInQuadtree()) + core.chatService.sendPersistentMessageHeader(sponsoree.getClient(), declinedMail); + } + + + public void showKickConfirmWindow(CreatureObject actor, CreatureObject target, Guild guild) { + + if (target.getObjectID() == guild.getLeader() && target.getObjectID() == actor.getObjectID()) { + actor.sendSystemMessage("@guild:leave_fail_leader_tried_to_leave", DisplayType.Broadcast); + return; + } else if (target.getObjectID() == guild.getLeader()) { + actor.sendSystemMessage("@guild:guild_no_permission_operation", DisplayType.Broadcast); + return; + } + + SUIWindow kickPrompt = core.suiService.createMessageBox(MessageBoxType.MESSAGE_BOX_YES_NO, "@guild:kick_title", + new Stf("@guild:kick_prompt").getStfValue().replace("%TU", target.getCustomName()), actor, null, 0); + + kickPrompt.addHandler(0, "", Trigger.TRIGGER_OK, new Vector(), (owner, eventType, resultList) -> { + leaveGuild(actor, target, guild); + }); + + core.suiService.openSUIWindow(kickPrompt); + } + + public void showDisbandConfirmWindow(CreatureObject actor, Guild guild) { + + if (!guild.getMember(actor.getObjectID()).hasDisbandPermission() && actor.getObjectID() != guild.getLeader()) { + actor.sendSystemMessage("@guild:guild_no_permission_operation", DisplayType.Broadcast); + return; + } + + SUIWindow disbandConfirm = core.suiService.createMessageBox(MessageBoxType.MESSAGE_BOX_YES_NO, "@guild:disband_title", "@guild:disband_prompt", actor, null, 0); + disbandConfirm.addHandler(0, "", Trigger.TRIGGER_OK, new Vector(), (owner, eventType, resultList) -> { + handleGuildDisband(actor, guild); + }); + core.suiService.openSUIWindow(disbandConfirm); + } + + public void showGuildInfoWindow(CreatureObject actor, Guild guild) { + String message = "Guild Name: " + guild.getName() + "\t (neutral)\n" + + "Guild Abbreviation: " + guild.getAbbreviation() + "\n" + + "Guild Leader: " + guild.getLeaderName() + "\n" + + "GCW Region Defender: None\n" + + "GCW Region Defender Bonus: 0%\n" + + "Guild Members: " + String.valueOf(guild.getMembers().size()); + + SUIWindow window = core.suiService.createMessageBox(MessageBoxType.MESSAGE_BOX_OK, "@guild:info_title", message, actor, null, 0); + window.setProperty("messageBox:Size", "290,170"); + core.suiService.openSUIWindow(window); + } + + public void leaveGuild(CreatureObject actor, CreatureObject target, Guild guild) { + GuildMember actingMember = guild.getMember(actor.getObjectID()); + + if (actingMember == null) + return; + + if ((!actingMember.hasKickPermission() && actor != target) || (target.getObjectID() == guild.getLeader() && target.getObjectID() != actor.getObjectID())) { + actor.sendSystemMessage("@guild:guild_no_permission_operation", DisplayType.Broadcast); + return; + } + + if (actor.getObjectID() != target.getObjectID()) { + + guild.sendGuildMail(guild.getName(), "@guildmail:kick_subject", new Stf("@guildmail:kick_text").getStfValue().replace("%TU", actor.getCustomName()).replace("%TT", target.getCustomName())); + + actor.sendSystemMessage(OutOfBand.ProsePackage("@guild:kick_self", "TU", target.getCustomName(), "TT", guild.getName()), DisplayType.Broadcast); + + if (target.isInQuadtree()) + target.sendSystemMessage(OutOfBand.ProsePackage("@guild:kick_target", "TU", actor.getCustomName(), "TT", guild.getName()), DisplayType.Broadcast); + + } else { + if (target.getObjectID() == guild.getLeader()) { + actor.sendSystemMessage("@guild:leave_fail_leader_tried_to_leave", DisplayType.Broadcast); + return; + } else { + guild.sendGuildMail(guild.getName(), "@guildmail:leave_subject", new Stf("@guildmail:leave_text").getStfValue().replace("%TU", actor.getCustomName())); + actor.sendSystemMessage(OutOfBand.ProsePackage("@guild:leave_self", "TU", guild.getName()), DisplayType.Broadcast); + } + } + guild.getMembers().remove(target.getObjectID()); + target.setGuildId(0); + core.chatService.leaveChatRoom(target, guild.getChatRoomId(), true); + + // Update association device + TangibleObject datapad = (TangibleObject) target.getSlottedObject("datapad"); + + if (datapad != null) { + datapad.viewChildren(target, true, false, (obj) -> { + if (obj instanceof IntangibleObject && obj.getTemplate().equals("object/intangible/data_item/shared_guild_stone.iff")) { + obj.setStringAttribute("guild_name", null); + obj.setStringAttribute("guild_abbrev", null); + obj.setStringAttribute("guild_leader", null); + } + }); + } + } + + + public void sendMailToGuild(String sender, String subject, String message, int guildId) { + Guild guild = getGuildById(guildId); + + if (guild == null) + return; + + guild.sendGuildMail(sender, subject, message); + } + + public void sendGuildMotd(CreatureObject target, Guild guild) { + if (guild == null || guild.getMotd().isEmpty()) + return; + + ChatRoom room = core.chatService.getChatRoom(guild.getChatRoomId()); + + if (room == null) + return; + + String message = guild.getMotd(); + + if (message.startsWith("\\#")) + message = " " + message; + + ChatRoomMessage roomMessage = new ChatRoomMessage(guild.getChatRoomId(), "Message of the Day", message); + target.getClient().getSession().write(roomMessage.serialize()); + } + + public GuildObject getGuildObject() { return object; } - public SWGSet getGuildList() { + + public SWGSet getGuildList() { return object.getGuildList(); } - public Guild getGuildById(int id) { - return object.getGuildList().stream().filter(g -> g.getId() == id).findFirst().get(); - } - public Guild getGuildByAbbreviation(String abbreviation) { - return object.getGuildList().stream().filter(g -> g.getAbbreviation().equals(abbreviation)).findFirst().get(); + TreeMap guildMap = object.getGuilds(); + + for (Entry e : guildMap.entrySet()) { + if (e.getValue().getAbbreviation().equals(abbreviation)) { + return e.getValue(); + } + } + return null; } public Guild getGuildByName(String name) { - return object.getGuildList().stream().filter(g -> g.getName().equals(name)).findFirst().get(); + TreeMap guildMap = object.getGuilds(); + + for (Entry e : guildMap.entrySet()) { + if (e.getValue().getName().equals(name)) { + return e.getValue(); + } + } + + return null; + } + + public Guild getGuildById(int id) { + TreeMap guildMap = object.getGuilds(); + + return guildMap.get(id); } public boolean removeGuild(int id) { Guild guild = getGuildById(id); - if (guild != null) { - object.getGuildList().add(guild); + if (guild != null) return true; - } - - return false; - } - - public boolean removeGuild(String abbreviation) { - Guild guild = getGuildByAbbreviation(abbreviation); - - if (guild != null) { - object.getGuildList().add(guild); - return true; - } return false; } diff --git a/src/services/LoginService.java b/src/services/LoginService.java index bad84964..49cbd1c8 100644 --- a/src/services/LoginService.java +++ b/src/services/LoginService.java @@ -193,6 +193,9 @@ public class LoginService implements INetworkDispatch{ if(!resultSet) { CreatureObject object = (CreatureObject) core.objectService.getObject(packet.getcharId()); + if (object == null) + object = (CreatureObject) core.objectService.getCreatureFromDB(packet.getcharId()); + if (object != null) { if (object.isInQuadtree() && object.getClient() != null) { core.connectionService.disconnect(object.getClient()); @@ -200,15 +203,27 @@ public class LoginService implements INetworkDispatch{ if (object.isInQuadtree()) { core.simulationService.remove(object, object.getPosition().x, object.getPosition().z, true); + if (core.missionService.getBountyListItem(object.getObjectID()) != null) { + core.missionService.removeBounty(object.getObjectID(), true); + } + } else { + if (core.getBountiesODB().contains(object.getObjectID())) + core.getBountiesODB().remove(object.getObjectID()); } + if (object.getGuildId() != 0) + core.guildService.getGuildById(object.getGuildId()).getMembers().remove(object.getObjectID()); + core.objectService.destroyObject(object); } try { core.getSWGObjectODB().remove(object.getObjectID()); } catch (Exception e) { - + DeleteCharacterReplyMessage reply = new DeleteCharacterReplyMessage(1); + session.write(reply.serialize()); + preparedStatement.close(); + return; } DeleteCharacterReplyMessage reply = new DeleteCharacterReplyMessage(0); diff --git a/src/services/LootService.java b/src/services/LootService.java index 3b680b74..8aeeef76 100644 --- a/src/services/LootService.java +++ b/src/services/LootService.java @@ -31,21 +31,37 @@ import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.SimpleFileVisitor; import java.util.ArrayList; +import java.util.HashMap; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Random; import java.util.Vector; - +import java.util.concurrent.atomic.AtomicInteger; import protocol.swg.PlayClientEffectObjectTransformMessage; +import protocol.swg.SceneCreateObjectByCrc; +import resources.objects.craft.DraftSchematic; +import resources.common.OutOfBand; +import resources.datatables.DisplayType; import resources.loot.LootGroup; import resources.loot.LootRollSession; import resources.objects.creature.CreatureObject; import resources.objects.group.GroupObject; +import resources.objects.intangible.IntangibleObject; import resources.objects.tangible.TangibleObject; import resources.objects.weapon.WeaponObject; +import services.sui.SUIService.ListBoxType; +import services.sui.SUIService.MessageBoxType; +import services.sui.SUIWindow; +import services.sui.SUIWindow.SUICallback; +import services.sui.SUIWindow.Trigger; import main.NGECore; +import engine.clientdata.ClientFileManager; +import engine.clientdata.visitors.SlotArrangementVisitor; +import engine.resources.container.AllPermissions; +import engine.resources.common.Stf; +import engine.resources.container.CreatureContainerPermissions; import engine.resources.container.Traverser; import engine.resources.objects.SWGObject; import engine.resources.scene.Planet; @@ -145,26 +161,34 @@ public class LootService implements INetworkDispatch { if (projectionCoefficientMatrixModulo!=0) lootGroupRoll=groupChance+1; if (lootGroupRoll <= groupChance){ - System.out.println("this lootGroup will drop something"); + //System.out.println("this lootGroup will drop something"); handleLootGroup(lootGroup,lootRollSession); //this lootGroup will drop something e.g. {kraytpearl_range,krayt_tissue_rare} - } - System.out.println("While Loop Stuck check"); + } } - System.out.println("Past while "); - // Rare Loot System Stage (Is in place for all looted creatures) -//if (lootRollSession.isAllowRareLoot()){ -// int randomRareLoot = new Random().nextInt(100); -// int chanceRequirement = 1; -// if (lootRollSession.isIncreasedRLSChance()) -// chanceRequirement+=3; // RLS chance is at 4% for groupsize >= 4 -// if (randomRareLoot <= chanceRequirement){ -// handleRareLootChest(lootRollSession); -// } -//} + + // Rare Loot System Stage (Is in place for all looted creatures with 6 CL difference) + //if (lootRollSession.isAllowRareLoot()){ + if (true){ + int randomRareLoot = new Random().nextInt(100); + int chanceRequirement = 1; + chanceRequirement = 10; // This is for a test period to lift chest drop chance a bit + if (lootRollSession.getLootedObjectDifficulty()==1) + chanceRequirement+=2; + if (lootRollSession.getLootedObjectDifficulty()==2) + chanceRequirement+=3; + if (lootRollSession.isIncreasedRLSChance()) + chanceRequirement+=3; + if (randomRareLoot <= chanceRequirement){ + handleRareLootChest(lootRollSession); + } + + // to test: + //handleRareLootChest(lootRollSession); + } // set info above corpse - System.out.println("lootedObject instanceof CreatureObject " + (lootedObject instanceof CreatureObject)); + //System.out.println("lootedObject instanceof CreatureObject " + (lootedObject instanceof CreatureObject)); if (lootedObject instanceof CreatureObject){ float y = 0.5F; // 1.3356977F float qz= 1.06535322E9F; @@ -195,6 +219,7 @@ public class LootService implements INetworkDispatch { for (TangibleObject droppedItem : lootRollSession.getDroppedItems()){ //droppedItem.setAttachment("radial_filename", "lootitem"); + //if (! droppedItem.getTemplate().contains("shared_rare_loot_chest")) lootedObjectInventory.add(droppedItem); // RLS chest effect @@ -210,6 +235,252 @@ public class LootService implements INetworkDispatch { // ToDo: Group loot settings etc. actual loot chance was lootgroupchance*lootchance } + public void handleJunkDealerSellWindow(CreatureObject actor, SWGObject junkDealer, Vector sellableItems) { + + if (sellableItems.size() == 0) { + SUIWindow notInterestedWindow = core.suiService.createMessageBox(MessageBoxType.MESSAGE_BOX_OK, "@loot_dealer:sell_title", "@loot_dealer:no_items", actor, junkDealer, (float) 10); + core.suiService.openSUIWindow(notInterestedWindow); + return; + } + + Map itemsToSell = new HashMap(); + sellableItems.forEach(obj -> { + if (!((TangibleObject)obj).isNoSell()) { + int price = ((TangibleObject) obj).getJunkDealerPrice(); + if (((TangibleObject) obj).getUses() > 0) { price = price * ((TangibleObject) obj).getUses(); } + + itemsToSell.put(obj.getObjectID(), "[" + price + "] " + obj.getCustomName()); + } + }); + + if (itemsToSell.size() == 0) { // Every item is in the sellable's vector, however only items the player is offering gets put in list. + SUIWindow notInterestedWindow = core.suiService.createMessageBox(MessageBoxType.MESSAGE_BOX_OK, "@loot_dealer:sell_title", "@loot_dealer:no_items", actor, junkDealer, (float) 10); + core.suiService.openSUIWindow(notInterestedWindow); + return; + } + + final SUIWindow window = core.suiService.createListBox(ListBoxType.LIST_BOX_OK_CANCEL, "@loot_dealer:sell_title", "@loot_dealer:sell_prompt", itemsToSell, actor, junkDealer, (float) 10); + + window.setProperty("btnOther:Visible", "True"); + window.setProperty("btnOther:Text", "@loot_dealer:examine"); + window.setProperty("btnOk:Text", "@loot_dealer:btn_sell"); + + Vector returnList = new Vector(); + returnList.add("List.lstList:SelectedRow"); + + SUICallback windowCallback = ((owner, eventType, resultList) -> { + switch(eventType) { + case 0: // Sell + TangibleObject itemToSell = null; + int index = Integer.parseInt(resultList.get(0)); + long sellItemId = window.getObjectIdByIndex(index); + + if(sellItemId == 0 || core.objectService.getObject(sellItemId) == null) + return; + + itemToSell = (TangibleObject) core.objectService.getObject(sellItemId); + + int price = itemToSell.getJunkDealerPrice(); + + if (price == 0) + price = 20; + + if (itemToSell.getUses() > 0) + price *= itemToSell.getUses(); + + TangibleObject inventory = (TangibleObject) actor.getSlottedObject("inventory"); + + if (inventory == null) + return; + + addToBuyBack(actor, itemToSell); + + actor.addCashCredits(price); + actor.sendSystemMessage(OutOfBand.ProsePackage("@junk_dealer:prose_sold_junk", "TT", itemToSell.getCustomName(), "DI", price), DisplayType.Broadcast); + + inventory.remove(itemToSell); + + core.suiService.closeSUIWindow(actor, window.getWindowId()); + handleJunkDealerSellWindow(actor, junkDealer, getSellableInventoryItems(actor)); + break; + case 1: // Cancel + core.suiService.closeSUIWindow(actor, window.getWindowId()); + break; + case 2: // TODO: Show Examine Window for objects - Junk Dealer (/examine command?) + break; + } + }); + + window.addHandler(0, "", Trigger.TRIGGER_OK, returnList, windowCallback); + window.addHandler(1, "", Trigger.TRIGGER_CANCEL, returnList, windowCallback); + window.addHandler(2, "", Trigger.TRIGGER_UPDATE, returnList, windowCallback); + + core.suiService.openSUIWindow(window); + + } + + public void handleJunkDealerBuyBackWindow(CreatureObject actor, SWGObject junkDealer) { + + TangibleObject bbContainer = (TangibleObject) core.objectService.getObject((long) actor.getAttachment("buy_back")); + Map soldItems = new HashMap(); + bbContainer.viewChildren(actor, false, false, (obj) -> { + int price = ((TangibleObject) obj).getJunkDealerPrice(); + if (((TangibleObject) obj).getUses() > 0) { price = price * ((TangibleObject) obj).getUses(); } + + soldItems.put(obj.getObjectID(), "[" + price + "] " + obj.getCustomName()); + }); + + final SUIWindow window = core.suiService.createListBox(ListBoxType.LIST_BOX_OK_CANCEL, "@loot_dealer:buy_back_title", "@loot_dealer:buy_back_prompt", soldItems, actor, junkDealer, (float) 10); + window.setProperty("btnOther:Visible", "True"); + window.setProperty("btnOther:Text", "@loot_dealer:examine"); + window.setProperty("btnOk:Text", "@loot_dealer:btn_buy_back"); + + Vector returnList = new Vector(); + returnList.add("List.lstList:SelectedRow"); + + SUICallback windowCallback = ((owner, eventType, resultList) -> { + switch(eventType) { + case 0: // Buy Back + TangibleObject retrieveItem = null; + int index = Integer.parseInt(resultList.get(0)); + long retrieveItemId = window.getObjectIdByIndex(index); + + if(retrieveItemId == 0 || core.objectService.getObject(retrieveItemId) == null) { + actor.sendSystemMessage("@loot_dealer:no_buy_back_items_found", DisplayType.Broadcast); + return; + } + + retrieveItem = (TangibleObject) core.objectService.getObject(retrieveItemId); + + if (actor.getInventoryItemCount() >= 80) { + actor.sendSystemMessage("@loot_dealer:no_space_in_inventory", DisplayType.Broadcast); + return; + } + + TangibleObject inventory = (TangibleObject) actor.getSlottedObject("inventory"); + + if (inventory == null) + return; + + int value = retrieveItem.getJunkDealerPrice(); + + if (retrieveItem.getUses() > 0) + value *= retrieveItem.getUses(); + + if (actor.getCashCredits() < value) { + actor.sendSystemMessage(OutOfBand.ProsePackage("@loot_dealer:prose_no_buy_back", "TT", retrieveItem.getCustomName()), DisplayType.Broadcast); + return; + } + + actor.deductCashCredits(value); + + actor.sendSystemMessage(OutOfBand.ProsePackage("@base_player:prose_pay_success", "DI", value, "TT", "a Junk Dealer"), DisplayType.Broadcast); + + bbContainer.transferTo(actor, inventory, retrieveItem); + actor.sendSystemMessage(OutOfBand.ProsePackage("@loot_dealer:prose_buy_back_junk", "DI", value, "TT", retrieveItem.getCustomName()), DisplayType.Broadcast); + + core.suiService.closeSUIWindow(actor, window.getWindowId()); + + handleJunkDealerBuyBackWindow(actor, junkDealer); + break; + case 1: // Cancel + break; + case 2: // TODO: Show Examine Window for objects - Junk Dealer (/examine command?) + break; + } + }); + + window.addHandler(0, "", Trigger.TRIGGER_OK, returnList, windowCallback); + window.addHandler(1, "", Trigger.TRIGGER_CANCEL, returnList, windowCallback); + window.addHandler(2, "", Trigger.TRIGGER_UPDATE, returnList, windowCallback); + core.suiService.openSUIWindow(window); + } + + public void handleJunkDealerMarkItems(CreatureObject actor, SWGObject junkDealer) { + + Vector sellableItems = getSellableInventoryItems(actor); + + if (sellableItems.size() == 0) { + SUIWindow notFoundWindow = core.suiService.createMessageBox(MessageBoxType.MESSAGE_BOX_OK, + "@loot_dealer:junk_not_found_title", "@loot_dealer:junk_not_found_description", actor, junkDealer, (float) 10); + core.suiService.openSUIWindow(notFoundWindow); + return; + } + + Map markableItems = new HashMap(); + sellableItems.forEach(obj -> { + if (((TangibleObject) obj).isNoSell()) markableItems.put(obj.getObjectID(), "[ *No Sell* ] " + obj.getCustomName()); + else markableItems.put(obj.getObjectID(), "[ Sellable ] " + obj.getCustomName()); + }); + + final SUIWindow window = core.suiService.createListBox(ListBoxType.LIST_BOX_OK_CANCEL, "@loot_dealer:junk_no_sell_title", "@loot_dealer:junk_no_sell_description", + markableItems, actor, junkDealer, (float) 10); + + window.setProperty("btnOther:visible", "True"); + window.setProperty("btnOther:Text", "@loot_dealer:examine"); + window.setProperty("btnOk:Text", "@loot_dealer:junk_no_sell_button"); + + Vector returnList = new Vector(); + returnList.add("List.lstList:SelectedRow"); + + SUICallback windowCallback = ((owner, eventType, resultList) -> { + switch(eventType) { + case 0: + TangibleObject markItem = null; + int index = Integer.parseInt(resultList.get(0)); + long markItemId = window.getObjectIdByIndex(index); + + if(markItemId == 0 || core.objectService.getObject(markItemId) == null) + return; + + markItem = (TangibleObject) core.objectService.getObject(markItemId); + + if (markItem.isNoSell()) markItem.setNoSell(false); + else markItem.setNoSell(true); + + core.suiService.closeSUIWindow(actor, window.getWindowId()); + handleJunkDealerMarkItems(actor, junkDealer); + break; + case 1: // Cancel + break; + case 2: // TODO: Show Examine Window for objects - Junk Dealer (/examine command?) + break; + } + }); + + window.addHandler(0, "", Trigger.TRIGGER_OK, returnList, windowCallback); + window.addHandler(1, "", Trigger.TRIGGER_CANCEL, returnList, windowCallback); + window.addHandler(2, "", Trigger.TRIGGER_UPDATE, returnList, windowCallback); + + core.suiService.openSUIWindow(window); + } + + public void addToBuyBack(CreatureObject actor, TangibleObject item) { + if (actor.getAttachment("buy_back") == null) + createBuyBackDevice(actor); + + TangibleObject buyBackContainer = (TangibleObject) core.objectService.getObject((long) actor.getAttachment("buy_back")); + + if (buyBackContainer == null) { + createBuyBackDevice(actor); + addToBuyBack(actor, item); + return; + } + + buyBackContainer.transferTo(actor, buyBackContainer, item); + + final AtomicInteger count = new AtomicInteger(); + + buyBackContainer.viewChildren(actor, false, true, new Traverser() { + + @Override + public void process(SWGObject child) { + if (count.incrementAndGet() >= 11) { + core.objectService.destroyObject(child); // This obj should be the last added object (top-down), so it's safe to remove it. + } + } + }); + } private void handleLootGroup(LootGroup lootGroup,LootRollSession lootRollSession){ @@ -423,6 +694,10 @@ public class LootService implements INetworkDispatch { droppedItem.setJunkType(junkType); } + if (biolink>0){ + droppedItem.setStringAttribute("bio_link", "bio_link_pending"); + } + if (itemStats!=null){ if (itemStats.size()%3!=0){ String errorMessage = "Loot item '" + itemName + "' has a wrong number of itemstats. Please contact Charon about this issue."; @@ -462,7 +737,6 @@ public class LootService implements INetworkDispatch { lootRollSession.addDroppedItem(droppedItem); - System.out.println("END REACHED"); } private void handleCustomDropName(TangibleObject droppedItem,String customName) { @@ -481,6 +755,12 @@ public class LootService implements INetworkDispatch { return droppedItem; } + private DraftSchematic createDroppedSchematic(String template,Planet planet){ + DraftSchematic droppedItem = (DraftSchematic) core.objectService.createObject(template, planet); + System.out.println("droppedItem " + droppedItem); + return droppedItem; + } + private void handleRareLootChest(LootRollSession lootRollSession){ TangibleObject droppedItem = null; @@ -491,6 +771,10 @@ public class LootService implements INetworkDispatch { if (lootRollSession.isIncreasedRLSChance()) chancemodifier += 15; + //legendaryRoll=500; // For TEST + //legendaryRoll=1; // For TEST + //exceptionalRoll = 5; + if (legendaryRoll<2+chancemodifier){ String itemTemplate="object/tangible/item/shared_rare_loot_chest_3.iff"; droppedItem = createDroppedItem(itemTemplate,lootRollSession.getSessionPlanet()); @@ -501,7 +785,7 @@ public class LootService implements INetworkDispatch { droppedItem.setDetailName("rare_loot_chest_3_d"); droppedItem.setAttachment("LootItemName", itemName); droppedItem.getAttributes().put("@obj_attr_n:rare_loot_category", "\\#D1F56F Rare Item \\#FFFFFF "); - fillLegendaryChest(droppedItem); + //fillLegendaryChest(droppedItem, lootRollSession); } else if (exceptionalRoll<10+chancemodifier){ String itemTemplate="object/tangible/item/shared_rare_loot_chest_2.iff"; @@ -513,7 +797,7 @@ public class LootService implements INetworkDispatch { droppedItem.setDetailName("rare_loot_chest_2_d"); droppedItem.setAttachment("LootItemName", itemName); droppedItem.getAttributes().put("@obj_attr_n:rare_loot_category", "\\#D1F56F Rare Item \\#FFFFFF "); - fillExceptionalChest(droppedItem); + //fillExceptionalChest(droppedItem, lootRollSession); } else { String itemTemplate="object/tangible/item/shared_rare_loot_chest_1.iff"; droppedItem = createDroppedItem(itemTemplate,lootRollSession.getSessionPlanet()); @@ -524,21 +808,374 @@ public class LootService implements INetworkDispatch { droppedItem.setDetailName("rare_loot_chest_1_d"); droppedItem.setAttachment("LootItemName", itemName); droppedItem.getAttributes().put("@obj_attr_n:rare_loot_category", "\\#D1F56F Rare Item \\#FFFFFF "); - fillRareChest(droppedItem); + //fillRareChest(droppedItem, lootRollSession); } lootRollSession.addDroppedItem(droppedItem); } - private void fillLegendaryChest(TangibleObject droppedItem){ + public void fillrarelootchest(CreatureObject owner, TangibleObject chest){ + SWGObject inventory = owner.getSlottedObject("inventory"); + inventory.remove(chest); + + if (chest.getTemplate().contains("object/tangible/item/shared_rare_loot_chest_1.iff")){ + fillRareChest(owner, chest); + } + if (chest.getTemplate().contains("object/tangible/item/shared_rare_loot_chest_2.iff")){ + fillExceptionalChest(owner, chest); + } + if (chest.getTemplate().contains("object/tangible/item/shared_rare_loot_chest_3.iff")){ + fillLegendaryChest(owner, chest); + } + core.objectService.destroyObject(chest.getObjectID()); } - private void fillExceptionalChest(TangibleObject droppedItem){ + private void fillLegendaryChest(CreatureObject owner, TangibleObject chest){ + int itemNumber = 2; + int quantityModifierChance = new Random().nextInt(100); + if (quantityModifierChance>25 && quantityModifierChance<50) + itemNumber = 1; + if (quantityModifierChance<25) + itemNumber = 3; + List lootGroups = new ArrayList(); + for (int i=0;i iterator = lootGroups.iterator(); + + while (iterator.hasNext()){ + LootGroup lootGroup = iterator.next(); + fillChest2(lootGroup, owner, chest); + } + } + + private void fillExceptionalChest(CreatureObject owner, TangibleObject chest){ + int itemNumber = 2; + int quantityModifierChance = new Random().nextInt(100); + if (quantityModifierChance>25 && quantityModifierChance<50) + itemNumber = 1; + if (quantityModifierChance<25) + itemNumber = 3; + + List lootGroups = new ArrayList(); + for (int i=0;i iterator = lootGroups.iterator(); + + while (iterator.hasNext()){ + LootGroup lootGroup = iterator.next(); + fillChest2(lootGroup, owner, chest); + } } - private void fillRareChest(TangibleObject droppedItem){ + private void fillRareChest(CreatureObject owner, TangibleObject chest){ + + int itemNumber = 1; + int quantityModifierChance = new Random().nextInt(100); + if (quantityModifierChance>15 && quantityModifierChance<50) + itemNumber = 2; + if (quantityModifierChance<15) + itemNumber = 3; + + List lootGroups = new ArrayList(); + for (int i=0;i iterator = lootGroups.iterator(); + + while (iterator.hasNext()){ + LootGroup lootGroup = iterator.next(); + fillChest2(lootGroup, owner, chest); + } + } + + private void fillChest2(LootGroup lootGroup, CreatureObject owner, TangibleObject chest){ + + double[] lootPoolChances = lootGroup.getLootPoolChances(); + String[] lootPoolNames = lootGroup.getLootPoolNames(); + if (lootPoolChances==null || lootPoolNames==null){ + System.err.println("Lootpools are null!"); + return; + } + if (lootPoolChances.length==0 || lootPoolNames.length==0){ + System.err.println("No Lootpools in Lootgroup!"); + return; + } + + double randomItemFromGroup = new Random().nextDouble()*100; + double remainder = 0; // [10,20,30,34,5,1] + double span = 100/lootPoolNames.length; + + boolean test = false; + + for(int i=0;i itemNames = (Vector)core.scriptService.fetchStringVector(path,"itemNames"); + + Vector itemChances = (Vector)core.scriptService.fetchDoubleVector(path,"itemChances"); + + double randomItemFromPool = new Random().nextDouble()*100; + double remainder = 0.0; // [10,20,30,34,5,1] + double span = 100.0/(double)itemNames.size(); + + for (int i=0;i foundPath = new Vector(); + Path p = Paths.get("scripts/loot/lootItems/"); + FileVisitor fv = new SimpleFileVisitor() { + @Override + public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException { + String actualFileName = file.getFileName().toString(); + actualFileName = actualFileName.substring(0, actualFileName.length()-3); + if (actualFileName.equals(itemName.toLowerCase())){ + foundPath.add(file.toString()); + } + return FileVisitResult.CONTINUE; + } + }; + try { + Files.walkFileTree(p, fv); + } catch (IOException e) { + e.printStackTrace(); + } + + + if (foundPath.size()==0){ + String errorMessage = "Loot item '" + itemName + "' not found in file system. Please contact Charon about this issue."; + return; + + } + String itemPath = foundPath.get(0); + + itemPath = itemPath.substring(0, itemPath.length()-3); // remove the file type + + String customName = ""; + String itemTemplate = ""; + Vector itemTemplates = null; + int stackCount = 1; + int biolink = 0; + int requiredCL = 1; + int requiredLevelForEffect = 1; + int stackable = -1; + int junkDealerPrice = 0; + byte junkType = -1; + String requiredProfession = ""; + String requiredFaction = ""; + Vector customizationAttributes = null; + Vector customizationValues = null; + int customColor1 = 0; + String lootDescriptor = ""; + Vector itemStats = null; + Vector itemSkillMods = null; + + if(core.scriptService.getMethod(itemPath,"","itemTemplate")==null){ + String errorMessage = "Loot item '" + itemName + "' has no template function assigned in its script. Please contact Charon about this issue."; + return; + } + + itemTemplates = (Vector)core.scriptService.fetchStringVector(itemPath,"itemTemplate"); + if (itemTemplates.size()==1) + itemTemplate = itemTemplates.get(0); + if (itemTemplates.size()>1){ + itemTemplate = itemTemplates.get(new Random().nextInt(itemTemplates.size()-1)); + } + + // only consider the following variables, if they are in the python-script file + if(core.scriptService.getMethod(itemPath,"","customItemName")!=null) + customName = (String)core.scriptService.fetchString(itemPath,"customItemName"); + + if(core.scriptService.getMethod(itemPath,"","customItemStackCount")!=null) + stackCount = (Integer)core.scriptService.fetchInteger(itemPath,"customItemStackCount"); + + if(core.scriptService.getMethod(itemPath,"","customizationAttributes")!=null) + customizationAttributes = (Vector)core.scriptService.fetchStringVector(itemPath,"customizationAttributes"); + + if(core.scriptService.getMethod(itemPath,"","customizationValues")!=null) + customizationValues = (Vector)core.scriptService.fetchIntegerVector(itemPath,"customizationValues"); + + if(core.scriptService.getMethod(itemPath,"","customColor1")!=null) + customColor1 = (Integer)core.scriptService.fetchInteger(itemPath,"customColor1"); + + if(core.scriptService.getMethod(itemPath,"","lootDescriptor")!=null) + lootDescriptor = (String)core.scriptService.fetchString(itemPath,"lootDescriptor"); + + if(core.scriptService.getMethod(itemPath,"","itemStats")!=null) + itemStats = (Vector)core.scriptService.fetchStringVector(itemPath,"itemStats"); + + if(core.scriptService.getMethod(itemPath,"","itemSkillMods")!=null) + itemSkillMods = (Vector)core.scriptService.fetchStringVector(itemPath,"itemSkillMods"); + + if(core.scriptService.getMethod(itemPath,"","biolink")!=null) + biolink = (Integer)core.scriptService.fetchInteger(itemPath,"biolink"); + + if(core.scriptService.getMethod(itemPath,"","requiredCL")!=null) + requiredCL = (Integer)core.scriptService.fetchInteger(itemPath,"requiredCL"); + + if(core.scriptService.getMethod(itemPath,"","requiredLevelForEffect")!=null) + requiredLevelForEffect = (Integer)core.scriptService.fetchInteger(itemPath,"requiredLevelForEffect"); + + if(core.scriptService.getMethod(itemPath,"","requiredProfession")!=null) + requiredProfession = (String)core.scriptService.fetchString(itemPath,"requiredProfession"); + + if(core.scriptService.getMethod(itemPath,"","requiredFaction")!=null) + requiredFaction = (String)core.scriptService.fetchString(itemPath,"requiredFaction"); + + if(core.scriptService.getMethod(itemPath,"","stackable")!=null) + stackable = (Integer)core.scriptService.fetchInteger(itemPath,"stackable"); + + if(core.scriptService.getMethod(itemPath,"","junkDealerPrice")!=null) + junkDealerPrice = (Integer)core.scriptService.fetchInteger(itemPath,"junkDealerPrice"); + + if(core.scriptService.getMethod(itemPath,"","junkType")!=null) + junkType = (byte)core.scriptService.fetchInteger(itemPath,"junkType"); + + + System.out.println("itemTemplate " + itemTemplate); + + TangibleObject droppedItem = null; + + if (! itemTemplate.contains("schematic")){ + + droppedItem = createDroppedItem(itemTemplate,owner.getPlanet()); + + droppedItem.setLootItem(true); + droppedItem.setAttachment("LootItemName", itemName); + droppedItem.setAttachment("customColor1", customColor1); + droppedItem.setAttachment("lootDescriptor", lootDescriptor); + droppedItem.setAttachment("customName", customName); + + + + if (!customName.isEmpty()) + handleCustomDropName(droppedItem, customName); + + if (stackable!=-1){ + if(stackable==1) + droppedItem.setStackable(true); + else + droppedItem.setStackable(false); + } + + if (junkDealerPrice!=0){ + droppedItem.setJunkDealerPrice(junkDealerPrice); + } + + if (junkType!=-1){ + droppedItem.setJunkType(junkType); + } + + if (itemStats!=null){ + if (itemStats.size()%3!=0){ + String errorMessage = "Loot item '" + itemName + "' has a wrong number of itemstats. Please contact Charon about this issue."; + return; + } + handleStats(droppedItem, itemStats); + } + + if (itemSkillMods!=null){ + handleSkillMods(droppedItem, itemSkillMods); + } + + setCustomization(droppedItem, itemName); // for now + + handleSpecialItems(droppedItem, itemName); + + if (requiredCL>1){ + droppedItem.setIntAttribute("required_combat_level", requiredCL); + } + + if (requiredLevelForEffect>1) { + droppedItem.getAttributes().put("@proc/proc:effect_level", ""+requiredLevelForEffect); + } + + if (requiredProfession.length()>0){ + droppedItem.setStringAttribute("class_required", requiredProfession); + } + + if (requiredFaction.length()>0){ + droppedItem.setStringAttribute("required_faction", requiredFaction); + } + + if (biolink>0){ + droppedItem.setStringAttribute("bio_link", "@obj_attr_n:bio_link_pending"); + } + + if(core.scriptService.getMethod(itemPath,"","customSetup") != null) + core.scriptService.callScript(itemPath, "", "customSetup", droppedItem); + + + droppedItem.getAttributes().put("@obj_attr_n:rare_loot_category", "\\#D1F56F Rare Item \\#FFFFFF "); + SWGObject inventory = owner.getSlottedObject("inventory"); + inventory.add(droppedItem); + System.out.println("ACTUAL DROP " + droppedItem.getTemplate()); + } else + { + DraftSchematic droppedSchematic = createDroppedSchematic(itemTemplate,owner.getPlanet()); + if (droppedSchematic!=null){ + droppedItem.getAttributes().put("@obj_attr_n:rare_loot_category", "\\#D1F56F Rare Item \\#FFFFFF "); + SWGObject inventory = owner.getSlottedObject("inventory"); + inventory.add(droppedItem); + System.out.println("ACTUAL DROP " + droppedItem.getTemplate()); + } + } + + } + + public void handleChestItem(String itemName, TangibleObject chest){ } @@ -565,6 +1202,23 @@ public class LootService implements INetworkDispatch { droppedItem.setCustomizationVariable("/private/index_color_1", (byte) 0x21); // 0x1F } + String lootDescriptor = (String)droppedItem.getAttachment("lootDescriptor"); + if (lootDescriptor==null) + lootDescriptor=""; + if (lootDescriptor.contains("rarecolorcrystal")) { + System.out.println("rarecolorcrystal"); + + int saberColor = (Integer)droppedItem.getAttachment("customColor1"); + if (saberColor==31) // Cunning of Tyranus, which is not in @jedi_spam + saberColor=0; + + droppedItem.setCustomizationVariable("/private/index_color_1", (byte) saberColor); + droppedItem.getAttributes().put("@obj_attr_n:condition", "100/100"); + droppedItem.getAttributes().put("@obj_attr_n:crystal_owner", "\\#D1F56F UNTUNED \\#FFFFFF "); + droppedItem.getAttributes().put("@obj_attr_n:color", resources.datatables.LightsaberColors.get((Integer)droppedItem.getAttachment("customColor1"))); + droppedItem.setAttachment("radial_filename", "item/tunable"); + } + // More general // String path = "scripts/loot/lootItems/"+droppedItem.getCustomName().toLowerCase(); // Vector customizationPaths = (Vector)core.scriptService.fetchStringVector(path,"itemCustomizationPaths"); @@ -587,7 +1241,7 @@ public class LootService implements INetworkDispatch { private void handleStats(TangibleObject droppedItem, Vector itemStats) { - if (droppedItem.getTemplate().contains("/weapon")){ + if (droppedItem.getTemplate().contains("object/weapon")){ WeaponObject weaponObject = (WeaponObject) droppedItem; for (int i=0;i skillMods) { @@ -931,7 +1607,9 @@ public class LootService implements INetworkDispatch { if (statName.equals("elemdamage")){ int minimalValue = (int) Integer.parseInt(minValue); int maximalValue = (int) Integer.parseInt(maxValue); - int randomValue = minimalValue + new Random().nextInt(maximalValue-minimalValue); + int randomValue = minimalValue; + if (minimalValue0) + result = minValue; + if (maxValue.length()>0) + result = maxValue; + crystal.setAttachment("ElementalType", result); + } + + if (statName.equals("elemdamage")){ + int minimalValue = (int) Integer.parseInt(minValue); + int value = minimalValue; + crystal.setAttachment("ElementalDamage", value); + } + } + + private void setBuffItemStat(TangibleObject buffItem, String statName, String minValue, String maxValue){ + + if (statName.equals("buffeffect")){ + String result = ""; + if (minValue.length()==0) + if (maxValue.length()==0) + result = "Error"; + + if (minValue.length()>0) + result = minValue; + if (maxValue.length()>0) + result = maxValue; + buffItem.setAttachment("BuffEffect", minValue); + buffItem.setAttachment("BuffEffectMagnitude", maxValue); + } + + if (statName.equals("effectname")){ + String result = minValue; + if (minValue.length()==0) + if (maxValue.length()==0) + result = "Error"; + buffItem.setAttachment("BuffEffectName", result); + buffItem.getAttributes().put("@obj_attr_n:proc_name", result); + } + + if (statName.equals("duration")){ + int minimalValue = (int) Integer.parseInt(minValue); + buffItem.setAttachment("BuffEffectDuration", minimalValue); + } + + if (statName.equals("cooldown")){ + /* + String displayString = ""; + String[] cooldownArr = minValue.split(":"); // 24:00:00 -> HH:MM:SS + if (cooldownArr.length==3){ + String hours = cooldownArr[0]; + String minutes = cooldownArr[1]; + String seconds = cooldownArr[2]; + if (hours.equals("00") || hours.equals("0")){ + displayString=minutes + " minutes"; + } else + { + displayString=hours + " hours, " + minutes + " minutes"; + } + } else + { + displayString= "Format Error!"; + } + */ + String displayString = minValue + " sec"; + int minimalValue = (int) Integer.parseInt(minValue); + buffItem.setAttachment("BuffEffectCoolDown", minimalValue); + buffItem.getAttributes().put("@obj_attr_n:reuse_time", displayString); + buffItem.getAttributes().put("@ui_attrib_mod:timeleft", "0"); + } + + // Deal with buff items that have colorcrystal templates or not unique templates , because no py script can be used for them to set the radials + + // Shard of the Serpent + if (buffItem.getCustomName().contains("Serpent")){ + buffItem.setAttachment("Post_BL_radial_filename", "item/shard_of_the_serpent"); + buffItem.setAttachment("radial_filename", "item/biolink"); + buffItem.setStfFilename("static_item_n"); + buffItem.setStfName("item_tow_buff_crystal_02_03"); + buffItem.setDetailFilename("static_item_d"); + buffItem.setDetailName("item_tow_buff_crystal_02_03"); + buffItem.setCustomizationVariable("/private/index_color_1", (byte) 3); + } + // Shard of Ferocity + if (buffItem.getCustomName().contains("Ferocity")){ + buffItem.setAttachment("Post_BL_radial_filename", "item/shard_of_ferocity"); + buffItem.setAttachment("radial_filename", "item/biolink"); + buffItem.setStfFilename("static_item_n"); + buffItem.setStfName("item_tow_crystal_uber_01_05"); + buffItem.setDetailFilename("static_item_d"); + buffItem.setDetailName("item_tow_crystal_uber_01_05"); + buffItem.setCustomizationVariable("/private/index_color_1", (byte) 9); + + } + // Shard of Retaliation + if (buffItem.getCustomName().contains("Retaliation")){ + buffItem.setAttachment("Post_BL_radial_filename", "item/shard_of_retaliation"); + buffItem.setAttachment("radial_filename", "item/biolink"); + buffItem.setStfFilename("static_item_n"); + buffItem.setStfName("item_tow_crystal_uber_02_05"); + buffItem.setDetailFilename("static_item_d"); + buffItem.setDetailName("item_tow_crystal_uber_02_05"); + } + // Sith Buff Holocron + if (buffItem.getCustomName().contains("Sith")){ + buffItem.setAttachment("Post_BL_radial_filename", "item/sith_buff_holocron"); + buffItem.setAttachment("radial_filename", "item/biolink"); + buffItem.setStfFilename("static_item_n"); + buffItem.setStfName("item_tow_holocron_ab_immune_01_02"); + buffItem.setDetailFilename("static_item_d"); + buffItem.setDetailName("item_tow_holocron_ab_immune_01_02"); + } + } + private void setArmorStat(SWGObject armor, String statName, String minValue, String maxValue){ // Armor is not represented with its own class, // so we gotta create the attributes here @@ -1308,6 +2107,273 @@ public class LootService implements INetworkDispatch { } + public void handleContainer(int containerID, String lootPool, String planetName){ + + long objectId = containerID + 0xFFFFFFFF; + TangibleObject containerObject = (TangibleObject) core.objectService.getObject(objectId); + LootRollSession lootRollSession = new LootRollSession(); + Planet planet = core.terrainService.getPlanetByName(planetName); + lootRollSession.setSessionPlanet(planet); + lootRollSession.setLootedObjectLevel(70); + lootRollSession.setLootedObjectDifficulty(0); + + if (containerObject==null) + System.out.println("containerObject is NULL " ); + + handleContainerDrops(containerObject, lootRollSession); + } + + private void handleContainerDrops(TangibleObject containerObject, LootRollSession lootRollSession){ + List lootGroups = containerObject.getLootGroups(); + Iterator iterator = lootGroups.iterator(); + + while (iterator.hasNext()){ + LootGroup lootGroup = iterator.next(); + double groupChance = lootGroup.getLootGroupChance(); + double lootGroupRoll = new Random().nextDouble()*100; + + if (lootGroupRoll <= groupChance){ + System.out.println("this lootGroup will drop something"); + handleContainerLootGroup(lootGroup,lootRollSession, containerObject); //this lootGroup will drop something e.g. {kraytpearl_range,krayt_tissue_rare} + } + System.out.println("While Loop Stuck check"); + } + } + + private void handleContainerLootGroup(LootGroup lootGroup,LootRollSession lootRollSession, TangibleObject containerObject){ + + double[] lootPoolChances = lootGroup.getLootPoolChances(); + String[] lootPoolNames = lootGroup.getLootPoolNames(); + if (lootPoolChances==null || lootPoolNames==null){ + System.err.println("Lootpools are null!"); + return; + } + if (lootPoolChances.length==0 || lootPoolNames.length==0){ + System.err.println("No Lootpools in Lootgroup!"); + return; + } + + double randomItemFromGroup = new Random().nextDouble()*100; + double remainder = 0; // [10,20,30,34,5,1] + double span = 100/lootPoolNames.length; + + boolean test = false; + + for(int i=0;i itemNames = (Vector)core.scriptService.fetchStringVector(path,"itemNames"); + + Vector itemChances = (Vector)core.scriptService.fetchDoubleVector(path,"itemChances"); + + double randomItemFromPool = new Random().nextDouble()*100; + double remainder = 0.0; // [10,20,30,34,5,1] + double span = 100.0/(double)itemNames.size(); + + for (int i=0;i foundPath = new Vector(); + Path p = Paths.get("scripts/loot/lootItems/"); + FileVisitor fv = new SimpleFileVisitor() { + @Override + public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException { + String actualFileName = file.getFileName().toString(); + actualFileName = actualFileName.substring(0, actualFileName.length()-3); + if (actualFileName.equals(itemName.toLowerCase())){ + foundPath.add(file.toString()); + } + return FileVisitResult.CONTINUE; + } + }; + try { + Files.walkFileTree(p, fv); + } catch (IOException e) { + e.printStackTrace(); + } + + + if (foundPath.size()==0){ + String errorMessage = "Loot item '" + itemName + "' not found in file system. Please contact Charon about this issue."; + System.err.println(errorMessage); + return; + + } + String itemPath = foundPath.get(0); + + itemPath = itemPath.substring(0, itemPath.length()-3); // remove the file type + + String customName = ""; + String itemTemplate = ""; + Vector itemTemplates = null; + int stackCount = 1; + int biolink = 0; + int requiredCL = 1; + int stackable = -1; + int junkDealerPrice = 0; + byte junkType = -1; + String requiredProfession = ""; + String requiredFaction = ""; + Vector customizationAttributes = null; + Vector customizationValues = null; + Vector itemStats = null; + Vector itemSkillMods = null; + + if(core.scriptService.getMethod(itemPath,"","itemTemplate")==null){ + String errorMessage = "Loot item '" + itemName + "' has no template function assigned in its script. Please contact Charon about this issue."; + System.err.println(errorMessage); + return; + } + + itemTemplates = (Vector)core.scriptService.fetchStringVector(itemPath,"itemTemplate"); + if (itemTemplates.size()==1) + itemTemplate = itemTemplates.get(0); + if (itemTemplates.size()>1){ + itemTemplate = itemTemplates.get(new Random().nextInt(itemTemplates.size()-1)); + } + + // only consider the following variables, if they are in the python-script file + if(core.scriptService.getMethod(itemPath,"","customItemName")!=null) + customName = (String)core.scriptService.fetchString(itemPath,"customItemName"); + + if(core.scriptService.getMethod(itemPath,"","customItemStackCount")!=null) + stackCount = (Integer)core.scriptService.fetchInteger(itemPath,"customItemStackCount"); + + if(core.scriptService.getMethod(itemPath,"","customizationAttributes")!=null) + customizationAttributes = (Vector)core.scriptService.fetchStringVector(itemPath,"customizationAttributes"); + + if(core.scriptService.getMethod(itemPath,"","customizationValues")!=null) + customizationValues = (Vector)core.scriptService.fetchIntegerVector(itemPath,"customizationValues"); + + if(core.scriptService.getMethod(itemPath,"","itemStats")!=null) + itemStats = (Vector)core.scriptService.fetchStringVector(itemPath,"itemStats"); + + if(core.scriptService.getMethod(itemPath,"","itemSkillMods")!=null) + itemSkillMods = (Vector)core.scriptService.fetchStringVector(itemPath,"itemSkillMods"); + + if(core.scriptService.getMethod(itemPath,"","biolink")!=null) + biolink = (Integer)core.scriptService.fetchInteger(itemPath,"biolink"); + + if(core.scriptService.getMethod(itemPath,"","requiredCL")!=null) + requiredCL = (Integer)core.scriptService.fetchInteger(itemPath,"requiredCL"); + + if(core.scriptService.getMethod(itemPath,"","requiredProfession")!=null) + requiredProfession = (String)core.scriptService.fetchString(itemPath,"requiredProfession"); + + if(core.scriptService.getMethod(itemPath,"","requiredFaction")!=null) + requiredFaction = (String)core.scriptService.fetchString(itemPath,"requiredFaction"); + + if(core.scriptService.getMethod(itemPath,"","stackable")!=null) + stackable = (Integer)core.scriptService.fetchInteger(itemPath,"stackable"); + + if(core.scriptService.getMethod(itemPath,"","junkDealerPrice")!=null) + junkDealerPrice = (Integer)core.scriptService.fetchInteger(itemPath,"junkDealerPrice"); + + if(core.scriptService.getMethod(itemPath,"","junkType")!=null) + junkType = (byte)core.scriptService.fetchInteger(itemPath,"junkType"); + + + System.out.println("itemTemplate " + itemTemplate); + + TangibleObject droppedItem = createDroppedItem(itemTemplate,lootRollSession.getSessionPlanet()); + + droppedItem.setLootItem(true); + droppedItem.setAttachment("LootItemName", itemName); + + if(core.scriptService.getMethod(itemPath,"","randomStatJewelry")!=null){ + customName = setRandomStatsJewelry(droppedItem, lootRollSession); + } + + if (customName!=null) + handleCustomDropName(droppedItem, customName); + + if (stackable!=-1){ + if(stackable==1) + droppedItem.setStackable(true); + else + droppedItem.setStackable(false); + } + + if (junkDealerPrice!=0){ + droppedItem.setJunkDealerPrice(junkDealerPrice); + } + + if (junkType!=-1){ + droppedItem.setJunkType(junkType); + } + + if (itemStats!=null){ + if (itemStats.size()%3!=0){ + String errorMessage = "Loot item '" + itemName + "' has a wrong number of itemstats. Please contact Charon about this issue."; + System.err.println(errorMessage); + return; + } + handleStats(droppedItem, itemStats); + } + + if (itemSkillMods!=null){ + handleSkillMods(droppedItem, itemSkillMods); + } + + setCustomization(droppedItem, itemName); // for now + + handleSpecialItems(droppedItem, itemName); + + if (requiredCL>1){ + droppedItem.setIntAttribute("required_combat_level", requiredCL); + } + + if (requiredProfession.length()>0){ + droppedItem.setStringAttribute("class_required", requiredProfession); + } + + if (requiredFaction.length()>0){ + droppedItem.setStringAttribute("required_faction", requiredFaction); + } + +// TangibleObject inventory = (TangibleObject) core.objectService.createObject("object/tangible/inventory/shared_character_inventory.iff", containerObject.getPlanet()); +// inventory.setContainerPermissions(CreatureContainerPermissions.CREATURE_CONTAINER_PERMISSIONS); +// containerObject._add(inventory); + + //SWGObject containerObjectInventory = containerObject.getSlottedObject("inventory"); //placable_loot_crate_trashpile + containerObject.add(droppedItem); + //containerObjectInventory.add(droppedItem); + System.out.println("Added to container " + containerObject.getTemplate()); + + } + + // ********* Junk-dealer related ********* public Vector getSellableInventoryItems(CreatureObject actor){ @@ -1336,59 +2402,21 @@ public class LootService implements INetworkDispatch { return true; } - @SuppressWarnings("unchecked") - public Vector getBuyHistory(CreatureObject actor, CreatureObject dealer){ - LinkedHashMap businessHistory = (LinkedHashMap )dealer.getAttachment("BusinessHistory"); - if (businessHistory==null){ - businessHistory = new LinkedHashMap(); - dealer.setAttachment("BusinessHistory",businessHistory); - } + public void createBuyBackDevice(CreatureObject actor) { + TangibleObject datapad = (TangibleObject) actor.getSlottedObject("datapad"); + if (datapad == null) + return; - TangibleObject[] actorsBuyHistory = businessHistory.get(actor.getObjectID()); - if (actorsBuyHistory==null) - return new Vector(); + IntangibleObject device = (IntangibleObject) core.objectService.createObject("object/intangible/buy_back/shared_buy_back_control_device.iff", actor.getPlanet()); + datapad.add(device); - Vector actorHistory = new Vector(); - for (TangibleObject item : actorsBuyHistory){ - if (item!=null) - actorHistory.add(item); - } - return actorHistory; - } - - @SuppressWarnings("unchecked") - public boolean addToBuyHistory(CreatureObject actor, CreatureObject dealer, TangibleObject item){ - LinkedHashMap businessHistory = (LinkedHashMap )dealer.getAttachment("BusinessHistory"); - if (businessHistory==null){ - businessHistory = new LinkedHashMap(); - dealer.setAttachment("BusinessHistory",businessHistory); - } + TangibleObject container = (TangibleObject) core.objectService.createObject("object/intangible/buy_back/shared_buy_back_container.iff", actor.getPlanet()); + container.setStaticObject(false); + container.setContainerPermissions(CreatureContainerPermissions.CREATURE_CONTAINER_PERMISSIONS); - TangibleObject[] actorsBuyHistory = businessHistory.get(actor.getObjectID()); - if (actorsBuyHistory==null){ - actorsBuyHistory = new TangibleObject[10]; - actorsBuyHistory[0] = item; - } else { - // Check Array for zeros - int lastObject=0; - for (int i=0;i>shift right and add - for (int i = 8; i >= 0; i--) { - actorsBuyHistory[i+1] = actorsBuyHistory[i]; - } - actorsBuyHistory[0] = item; - } else { - actorsBuyHistory[lastObject+1] = item; - } - } - businessHistory.put(actor.getObjectID(),actorsBuyHistory); - dealer.setAttachment("BusinessHistory",businessHistory); - //printArrayElements(actorsBuyHistory); - return true; + device.add(container); + + actor.setAttachment("buy_back", container.getObjectID()); // We can use device.getSlottedObject("inventory"), but this way we won't have to traverse.. } @SuppressWarnings("unchecked") diff --git a/src/services/PlayerService.java b/src/services/PlayerService.java index db2d7e53..a6f9d8b5 100644 --- a/src/services/PlayerService.java +++ b/src/services/PlayerService.java @@ -625,6 +625,14 @@ public class PlayerService implements INetworkDispatch { grantLevel(creature, level); player.setProfessionIcon(Professions.get(profession)); + + if (creature.getGuildId() != 0) { + Guild guild = core.guildService.getGuildById(creature.getGuildId()); + + if (guild != null && guild.getMembers().containsKey(creature.getObjectID())) { + guild.getMember(creature.getObjectID()).setProfession(getFormalProfessionName(profession)); + } + } } /* @@ -713,6 +721,14 @@ public class PlayerService implements INetworkDispatch { creature.setGrantedHealth(0); creature.setLevel((short) 1); + + if (creature.getGuildId() != 0) { + Guild guild = core.guildService.getGuildById(creature.getGuildId()); + + if (guild != null && guild.getMembers().containsKey(creature.getObjectID())) { + guild.getMember(creature.getObjectID()).setLevel((short) 1); + } + } } /* @@ -883,6 +899,14 @@ public class PlayerService implements INetworkDispatch { creature.showFlyText(OutOfBand.ProsePackage("@cbt_spam:skill_up"), 2.5f, new RGB(154, 205, 50), 0, true); creature.playEffectObject("clienteffect/skill_granted.cef", ""); creature.playMusic("sound/music_acq_bountyhunter.snd"); + + if (creature.getGuildId() != 0) { + Guild guild = core.guildService.getGuildById(creature.getGuildId()); + + if (guild != null && guild.getMembers().containsKey(creature.getObjectID())) { + guild.getMember(creature.getObjectID()).setLevel((short) level); + } + } } catch (InstantiationException | IllegalAccessException e) { e.printStackTrace(); } diff --git a/src/services/SimulationService.java b/src/services/SimulationService.java index 53a0ddb5..040a905c 100644 --- a/src/services/SimulationService.java +++ b/src/services/SimulationService.java @@ -339,6 +339,8 @@ public class SimulationService implements INetworkDispatch { return; } + CreatureObject creature = (CreatureObject) client.getParent(); + CreatureObject object = (CreatureObject) client.getParent(); if (core.mountService.isMounted(object)) { @@ -358,8 +360,11 @@ public class SimulationService implements INetworkDispatch { move(object, oldPos.x, oldPos.z, newPos.x, newPos.z); Quaternion newOrientation = new Quaternion(dataTransform.getWOrientation(), dataTransform.getXOrientation(), dataTransform.getYOrientation(), dataTransform.getZOrientation()); object.setPosition(newPos); + creature.setPosition(newPos); object.setOrientation(newOrientation); + creature.setOrientation(newOrientation); object.setMovementCounter(dataTransform.getMovementCounter()); + creature.setMovementCounter(dataTransform.getMovementCounter()); } if(object.getContainer() != null) { object.getContainer()._remove(object); @@ -400,9 +405,25 @@ public class SimulationService implements INetworkDispatch { if(!updateAwareObjects.contains(obj) && obj != object && !object.getAwareObjects().contains(obj) && obj.getContainer() != object && obj.isInQuadtree()) { if(obj.getAttachment("bigSpawnRange") == null && obj.getWorldPosition().getDistance2D(newPos) > 200) continue; - object.makeAware(obj); - if(obj.getClient() != null) - obj.makeAware(object); + //object.makeAware(obj); + + if (object.getOption(Options.MOUNT)){ + CreatureObject owner = (CreatureObject) core.objectService.getObject(object.getOwnerId()); + owner.makeAware(obj); + } + else { + object.makeAware(obj); + } + + if(obj.getClient() != null){ + if (object.getOption(Options.MOUNT)){ + CreatureObject owner = (CreatureObject) core.objectService.getObject(object.getOwnerId()); + obj.makeAware(owner); + } + else { + obj.makeAware(object); + } + } } } @@ -463,8 +484,8 @@ public class SimulationService implements INetworkDispatch { remove(object, oldPos.x, oldPos.z); if(object.getContainer() != null) object.getContainer()._remove(object); - else if (object.getClient().isGM() && parent.getContainer() != null) - object.sendSystemMessage("BuildingId: Dec: " + parent.getContainer().getObjectID() + " / Hex: " + Long.toHexString(parent.getContainer().getObjectID()), DisplayType.Broadcast); + if (object.getClient().isGM() && parent != null && parent instanceof CellObject && parent.getContainer() != null) + object.sendSystemMessage("BuildingId Hex: " + Long.toHexString(parent.getContainer().getObjectID()) + " CellNumber: " + ((CellObject) parent).getCellNumber(), DisplayType.Broadcast); parent._add(object); } object.setPosition(newPos); @@ -772,23 +793,45 @@ public class SimulationService implements INetworkDispatch { if(object.getAttachment("proposer") != null) object.setAttachment("proposer", null); - //session.suspendWrite(); final long objectId = object.getObjectID(); if(!ghost.isSet(PlayerFlags.LD)) ghost.toggleFlag(PlayerFlags.LD); - for (CreatureObject opponent : new ArrayList(object.getDuelList())) { - if (opponent != null) { - core.combatService.handleEndDuel(object, opponent, true); + try { + for (CreatureObject opponent : new ArrayList(object.getDuelList())) { + if (opponent != null) { + core.combatService.handleEndDuel(object, opponent, true); + } } + } catch (Exception e) { + e.printStackTrace(); } - if (core.mountService.isMounted(object)) { - core.mountService.dismount(object, (CreatureObject) container); + try { + if (core.mountService.isMounted(object)) { + core.mountService.dismount(object, (CreatureObject) container); + } + + core.mountService.storeAll(object); + } catch (Exception e) { + e.printStackTrace(); } - core.mountService.storeAll(object); + try { + for (Integer roomId : ghost.getJoinedChatChannels()) { + ChatRoom room = core.chatService.getChatRoom(roomId.intValue()); + + if (room != null) { + core.chatService.leaveChatRoom(object, roomId.intValue(), false); + } else { + // work-around for any channels that may have been deleted, or only spawn on server startup, that were added to the joined channels + ghost.removeChannel(roomId); + } + } + } catch (Exception e) { + e.printStackTrace(); + } /* object.createTransaction(core.getCreatureODB().getEnvironment()); @@ -801,15 +844,40 @@ public class SimulationService implements INetworkDispatch { SWGObject object = core.objectService.getObject(objectId); if (object.getAttachment("disconnectTask") != null) { - //core.connectionService.disconnect(client); + try { + core.combatService.endCombat((CreatureObject) object); + } catch (Exception e) { + e.printStackTrace(); + } + core.simulationService.remove(object, object.getPosition().x, object.getPosition().z, true); + + /* + try { + Thread.sleep(900000) + } catch (Exception e) { + e.printStackTrace(); + } + + // If connectionService fails for some reason, this will call disconnect again after 15 mins. + // This should never actually be needed though: + + try { + if (object != null && object.getAttachment("disconnectTask") != null && client != null) { + core.connectionService.disconnect(client); + } + } catch (Exception e) { + System.err.println("ConnectionService:disconnect(): Error disconnecting client."); + e.printStackTrace(); + } + */ } } }, 120, TimeUnit.SECONDS); + core.removeClient(session); object.setAttachment("disconnectTask", disconnectTask); - core.combatService.endCombat(object); // temp fix for ending combat on disconnect } diff --git a/src/services/StaticService.java b/src/services/StaticService.java index edefd3f2..bd8679d7 100644 --- a/src/services/StaticService.java +++ b/src/services/StaticService.java @@ -41,6 +41,7 @@ import services.spawn.MobileTemplate; import main.NGECore; import engine.clientdata.ClientFileManager; import engine.clientdata.visitors.PortalVisitor; +import engine.resources.config.Config; import engine.resources.objects.SWGObject; import engine.resources.scene.Planet; import engine.resources.scene.Point3D; @@ -57,6 +58,10 @@ public class StaticService implements INetworkDispatch { } public void spawnStatics() { + Config options = new Config(); + options.setFilePath("options.cfg"); + final boolean buildoutsDisabled = ((options.loadConfigFile() && options.getInt("LOAD.BUILDOUT_OBJECTS") == 0) ? true : false); + for (Planet planet : core.terrainService.getPlanetList()) { if (FileUtilities.doesFileExist("scripts/static_spawns/" + planet.getName())) { Path p = Paths.get("scripts/static_spawns/" + planet.getName()); @@ -65,7 +70,13 @@ public class StaticService implements INetworkDispatch { @Override public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException { if (file.getFileName().toString().endsWith(".py")) { - core.scriptService.callScript("scripts/static_spawns/" + planet.getName() + "/", file.getFileName().toString().replace(".py", ""), "addPlanetSpawns", core, planet); + try { + core.scriptService.callScript("scripts/static_spawns/" + planet.getName() + "/", file.getFileName().toString().replace(".py", ""), "addPlanetSpawns", core, planet); + } catch (Exception e) { + if (!buildoutsDisabled) { + e.printStackTrace(); + } + } } return FileVisitResult.CONTINUE; diff --git a/src/services/TerrainService.java b/src/services/TerrainService.java index c8b3aaf5..e930ddd3 100644 --- a/src/services/TerrainService.java +++ b/src/services/TerrainService.java @@ -200,10 +200,20 @@ public class TerrainService { } if (loaded && config.getInt("LOAD.BUILDOUT_OBJECTS") > 0) { - try { - core.objectService.loadBuildoutObjects(planet); - } catch (InstantiationException | IllegalAccessException e) { - e.printStackTrace(); + if (! config.keyExists("LOAD.BUILDOUT_ONLY_FOR")){ + try { + core.objectService.loadBuildoutObjects(planet); + } catch (InstantiationException | IllegalAccessException e) { + e.printStackTrace(); + } + } else { + if (planet.getName().equals(config.getString("LOAD.BUILDOUT_ONLY_FOR"))){ + try { + core.objectService.loadBuildoutObjects(planet); + } catch (InstantiationException | IllegalAccessException e) { + e.printStackTrace(); + } + } } } diff --git a/src/services/ai/AIActor.java b/src/services/ai/AIActor.java index 81db67c8..d6648e48 100644 --- a/src/services/ai/AIActor.java +++ b/src/services/ai/AIActor.java @@ -122,7 +122,7 @@ public class AIActor { setFollowObject(defender); setCurrentState(new AttackState()); if(!isAssisting) { - NGECore.getInstance().simulationService.get(creature.getPlanet(), creature.getWorldPosition().x, creature.getWorldPosition().z, 30).stream().filter((obj) -> + NGECore.getInstance().simulationService.get(creature.getPlanet(), creature.getWorldPosition().x, creature.getWorldPosition().z, 38).stream().filter((obj) -> obj instanceof CreatureObject && obj.getAttachment("AI") != null && ((AIActor) obj.getAttachment("AI")).getMobileTemplate().getSocialGroup().equals(getMobileTemplate().getSocialGroup()) && diff --git a/src/services/ai/LairActor.java b/src/services/ai/LairActor.java index 80472ef9..69016ef0 100644 --- a/src/services/ai/LairActor.java +++ b/src/services/ai/LairActor.java @@ -38,6 +38,7 @@ public class LairActor { private TangibleObject lairObject; private int maxSpawns; private String creatureTemplate; + private Vector creatureTemplates; private volatile int spawnWave = 0; private short level; @@ -54,6 +55,14 @@ public class LairActor { this.level = level; lairObject.getEventBus().subscribe(this); } + + public LairActor(TangibleObject lairObject, Vector creatureTemplates, int maxSpawns, short level) { + this.lairObject = lairObject; + this.creatureTemplates = creatureTemplates; + this.maxSpawns = maxSpawns; + this.level = level; + lairObject.getEventBus().subscribe(this); + } public Vector getCreatures() { @@ -125,6 +134,8 @@ public class LairActor { for(int i = 0; i < creatureAmount; i++) { Point3D position = SpawnPoint.getRandomPosition(lairObject.getPosition(), 5, 30, lairObject.getPlanetId()); + if (creatureTemplates!=null) + creatureTemplate = creatureTemplates.get(new Random().nextInt(creatureTemplates.size())); CreatureObject creature = NGECore.getInstance().spawnService.spawnCreature(creatureTemplate, lairObject.getPlanet().getName(), 0, position.x, position.y, position.z, level); if(creature == null || !creature.isInQuadtree()) { System.out.println("NULL Creature"); diff --git a/src/services/bazaar/AuctionItem.java b/src/services/bazaar/AuctionItem.java index 4e0d2fca..0c8d23be 100644 --- a/src/services/bazaar/AuctionItem.java +++ b/src/services/bazaar/AuctionItem.java @@ -41,6 +41,7 @@ public class AuctionItem implements Comparable, Serializable { private long buyerId; private long offerToId; private int itemType; + private int itemTypeCRC; private String ownerName; private String bidderName = ""; private String itemName; @@ -51,7 +52,7 @@ public class AuctionItem implements Comparable, Serializable { private boolean auction; private String vuid; private int status; - private boolean onBazaar; + private boolean onBazaar = false; private long expireTime; private int auctionOptions; @@ -278,5 +279,13 @@ public class AuctionItem implements Comparable, Serializable { else return 0; } + + public int getItemTypeCRC() { + return itemTypeCRC; + } + + public void setItemTypeCRC(int itemTypeCRC) { + this.itemTypeCRC = itemTypeCRC; + } } diff --git a/src/services/bazaar/BazaarService.java b/src/services/bazaar/BazaarService.java index 7e1bef59..98a85288 100644 --- a/src/services/bazaar/BazaarService.java +++ b/src/services/bazaar/BazaarService.java @@ -22,14 +22,22 @@ package services.bazaar; import java.nio.ByteOrder; +import java.util.ArrayList; import java.util.Iterator; +import java.util.List; import java.util.Map; import java.util.Set; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentSkipListSet; +import java.util.concurrent.Executors; +import java.util.concurrent.ScheduledExecutorService; +import java.util.concurrent.TimeUnit; + + import main.NGECore; import engine.clients.Client; +import engine.resources.common.CRC; import engine.resources.database.ODBCursor; import engine.resources.objects.SWGObject; import engine.resources.scene.Planet; @@ -65,6 +73,7 @@ public class BazaarService implements INetworkDispatch { private NGECore core; private Set auctionItems = new ConcurrentSkipListSet(); private ConcurrentHashMap commodityLimit = new ConcurrentHashMap(); + private final ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1); private final static int COMMODITY_LIMIT = 25; private final static int MAX_BAZAAR_SALE_PRICE = 10000000; private final static int SALES_FEE = 20; @@ -88,8 +97,9 @@ public class BazaarService implements INetworkDispatch { addAuctionItem((AuctionItem) cursor.next()); } auctionItems.stream().map(AuctionItem::getItem).forEach(obj -> { + obj.initializeBaselines(); obj.initAfterDBLoad(); - obj.viewChildren(obj, true, true, obj2 -> obj2.initAfterDBLoad()); + obj.viewChildren(obj, true, true, obj2 -> { obj2.initializeBaselines(); obj2.initAfterDBLoad(); }); }); cursor.close(); } @@ -108,7 +118,16 @@ public class BazaarService implements INetworkDispatch { if (player == null) return; - + + CommoditiesItemTypeListResponse response = new CommoditiesItemTypeListResponse(); + + List insertedItems = new ArrayList(); + auctionItems.stream().filter(i -> !insertedItems.contains(i.getItem().getObjectName().getStfValue())).forEach(i -> { + response.addItem(i); + insertedItems.add(i.getItem().getObjectName().getString()); + System.out.println(i.getItem().getObjectName().getString()); + }); + session.write(new CommoditiesItemTypeListResponse().serialize()); }); @@ -135,8 +154,11 @@ public class BazaarService implements INetworkDispatch { if(terminal == null) return; int permission = 2; - if(terminal.getAttachment("isVendor") != null && (Boolean) terminal.getAttachment("isVendor")) + if(terminal.getAttachment("isVendor") != null && (Boolean) terminal.getAttachment("isVendor")) { + if(!((Boolean) terminal.getAttachment("initialized"))) + return; permission = (long) terminal.getAttachment("vendorOwner") == player.getObjectID() ? 0 : 1; + } Point3D pos = terminal.getWorldPosition(); session.write(new IsVendorOwnerResponseMessage(permission, 0, terminalId, getVendorUID((TangibleObject) terminal)).serialize()); @@ -352,7 +374,7 @@ public class BazaarService implements INetworkDispatch { if(vendor == null) return; - getItemData(player, vendor, queryHeaders.getRange(), queryHeaders.getScreen(), queryHeaders.getCounter(), queryHeaders.getOffset(), queryHeaders.getItemTypeCRC(), queryHeaders.getMinPrice(), queryHeaders.getMaxPrice()); + getItemData(player, vendor, queryHeaders.getRange(), queryHeaders.getScreen(), queryHeaders.getCounter(), queryHeaders.getOffset(), queryHeaders.getCategory(), queryHeaders.getMinPrice(), queryHeaders.getMaxPrice()); }); @@ -524,7 +546,6 @@ public class BazaarService implements INetworkDispatch { int displayedItems = 0; AuctionQueryHeadersResponseMessage response = new AuctionQueryHeadersResponseMessage(player.getObjectID(), screen, counter, offset, false); - while(it.hasNext() && displayedItems < offset + 100) { AuctionItem item = it.next(); @@ -536,11 +557,13 @@ public class BazaarService implements INetworkDispatch { // Auctions case 2: - if(item.getStatus() == AuctionItem.FORSALE) { - if((category & 255) != 0 && item.getItemType() == category) { - if(displayedItems >= offset) - response.addItem(item); - displayedItems++; + if(item.getStatus() == AuctionItem.FORSALE && item.isOnBazaar()) { + if((category & 255) != 0) { + if(item.getItemType() == category) { + if(displayedItems >= offset) + response.addItem(item); + displayedItems++; + } } else if((item.getItemType() & category) != 0) { if(displayedItems >= offset) response.addItem(item); @@ -578,8 +601,29 @@ public class BazaarService implements INetworkDispatch { if(item.getStatus() == AuctionItem.OFFERED && player.getObjectID() == item.getOfferToId()) response.addItem(item); break; - // Vendor search TODO later + // Vendor search case 7: + if(item.getStatus() == AuctionItem.FORSALE && !item.isOnBazaar()) { + if(vendor.getObjectID() != item.getVendorId() && (core.objectService.getObject(item.getVendorId()) == null || (Boolean) core.objectService.getObject(item.getVendorId()).getAttachment("vendorSearchEnabled"))) + break; + if((category & 255) != 0 && item.getItemType() == category) { + if(displayedItems >= offset) + response.addItem(item); + displayedItems++; + } else if((item.getItemType() & category) != 0) { + if(displayedItems >= offset) + response.addItem(item); + displayedItems++; + } else if(item.getItemType() < 256 && category == 8192) { + if(displayedItems >= offset) + response.addItem(item); + displayedItems++; + } else if(category == 0) { + if(displayedItems >= offset) + response.addItem(item); + displayedItems++; + } + } break; // Stock case 8: @@ -698,18 +742,24 @@ public class BazaarService implements INetworkDispatch { auctionItem.setItemDescription(description); auctionItem.setPrice(price); auctionItem.setItemType(item.getTemplateData().getAttribute("gameObjectType")); + auctionItem.setItemTypeCRC(CRC.StringtoCRC(item.getTemplate().replace("shared_", ""))); auctionItem.setStatus(AuctionItem.FORSALE); //auctionItem.setItemName("@" + item.getStfFilename() + ":" + item.getStfName()); - String name = item.getCustomName() == null ? "@" + item.getStfFilename() + ":" + item.getStfName() : item.getCustomName(); + String name = item.getCustomName() == null ? item.getObjectName().getStfValue() : item.getCustomName(); auctionItem.setItemName(name); auctionItem.setVendorId(vendor.getObjectID()); auctionItem.setPlanet(vendor.getPlanet().getName()); auctionItem.setVuid(getVendorUID((TangibleObject) vendor)); auctionItem.setOwnerName(player.getCustomName()); - if(vendor.getTemplate().contains("terminal_bazaar")) + if(vendor.getAttachment("isVendor") == null) auctionItem.setOnBazaar(true); - + else { + if(!((long) vendor.getAttachment("vendorOwner") == player.getObjectID())) { + auctionItem.setOfferToId((long) vendor.getAttachment("owner")); + auctionItem.setStatus(AuctionItem.OFFERED); + } + } addAuctionItem(auctionItem); return auctionItem; @@ -747,6 +797,8 @@ public class BazaarService implements INetworkDispatch { } public void addAuctionItem(AuctionItem auctionItem) { + if(auctionItem == null) + return; auctionItems.add(auctionItem); int commodityNumber = 0; if(commodityLimit.get(auctionItem.getOwnerId()) != null) @@ -766,4 +818,23 @@ public class BazaarService implements INetworkDispatch { core.objectService.deletePersistentObject(auctionItem.getObjectId(), core.getAuctionODB()); } + public void startVendorUpdateTask(CreatureObject owner, SWGObject vendor) { + + scheduler.scheduleAtFixedRate(() -> { + if(vendor == null || !((Boolean) vendor.getAttachment("initialized"))) + return; + + float maintenanceRate = 15; + if((Boolean) vendor.getAttachment("onMap")) + maintenanceRate += 6; + vendor.setAttachment("maintenanceAmount", (Integer) vendor.getAttachment("maintenanceAmount") - maintenanceRate); + // TODO add vendor delete after x days + }, 1, 1, TimeUnit.HOURS); + + } + + public int getNumberOfItemsForSale(long vendorId) { + return (int) auctionItems.parallelStream().filter(i -> i.getVendorId() == vendorId).count(); + } + } diff --git a/src/services/chat/ChatService.java b/src/services/chat/ChatService.java index 251d125e..d6436570 100644 --- a/src/services/chat/ChatService.java +++ b/src/services/chat/ChatService.java @@ -48,6 +48,7 @@ import engine.resources.service.INetworkDispatch; import engine.resources.service.INetworkRemoteEvent; import resources.common.*; import resources.datatables.DisplayType; +import resources.guild.Guild; import resources.objects.creature.CreatureObject; import resources.objects.player.PlayerObject; import protocol.swg.AddIgnoreMessage; @@ -221,6 +222,9 @@ public class ChatService implements INetworkDispatch { SWGObject recipient = getObjectByFirstName(firstName); + if (recipient == null) + return; + PlayerObject recipientGhost = (PlayerObject) recipient.getSlottedObject("ghost"); if (recipientGhost.getIgnoreList().contains(sender.getCustomName().toLowerCase())) @@ -262,9 +266,31 @@ public class ChatService implements INetworkDispatch { if(sender == null) return; - - SWGObject recipient = getObjectByFirstName(packet.getRecipient()); + // TODO: Recipient handling for values: citizens, group, guild ranks (ace, boot, admiral, etc.) + if (packet.getRecipient().equals("guild")) { + Guild guild = core.guildService.getGuildById(((CreatureObject) sender).getGuildId()); + if (guild == null || !guild.getMembers().containsKey(sender.getObjectID())) { + ChatOnSendPersistentMessage response = new ChatOnSendPersistentMessage(4, packet.getCounter()); + session.write(response.serialize()); + return; + } + + if (!guild.getMember(sender.getObjectID()).hasMailPermission()) { + ((CreatureObject) sender).sendSystemMessage("@guild:generic_fail_no_permission", (byte) 0); + ChatOnSendPersistentMessage response = new ChatOnSendPersistentMessage(4, packet.getCounter()); + session.write(response.serialize()); + return; + } + guild.sendGuildMail(sender.getCustomName(), packet.getSubject(), packet.getMessage()); + + ChatOnSendPersistentMessage response = new ChatOnSendPersistentMessage(0, packet.getCounter()); + session.write(response.serialize()); + return; + } + + SWGObject recipient = getObjectByFirstName(packet.getRecipient()); + PlayerObject recipientGhost = (PlayerObject) recipient.getSlottedObject("ghost"); if (recipientGhost.getIgnoreList().contains(sender.getCustomName().toLowerCase())) @@ -507,7 +533,7 @@ public class ChatService implements INetworkDispatch { ChatRoom room = getChatRoomByAddress(sentPacket.getChannelAddress()); - leaveChatRoom((CreatureObject) obj, room.getRoomId()); + leaveChatRoom((CreatureObject) obj, room.getRoomId(), true); }); } @@ -941,7 +967,9 @@ public class ChatService implements INetworkDispatch { } room.addUser(user.toLowerCase()); - ((CreatureObject) player).getPlayerObject().addChannel(roomId); + if (!((CreatureObject) player).getPlayerObject().isMemberOfChannel(roomId)) { + ((CreatureObject) player).getPlayerObject().addChannel(roomId); + } return true; } return false; @@ -951,7 +979,7 @@ public class ChatService implements INetworkDispatch { return joinChatRoom(user, roomId, false); } - public void leaveChatRoom(CreatureObject player, int roomId) { + public void leaveChatRoom(CreatureObject player, int roomId, boolean removeFromList) { ChatRoom room = getChatRoom(roomId); if (room == null) @@ -975,7 +1003,8 @@ public class ChatService implements INetworkDispatch { } }); - ((PlayerObject) player.getSlottedObject("ghost")).removeChannel(roomId); + if (removeFromList) + ((PlayerObject) player.getSlottedObject("ghost")).removeChannel((Integer) roomId); } public void sendChatRoomMessage(CreatureObject sender, int roomId, int msgId, String message) { @@ -989,6 +1018,9 @@ public class ChatService implements INetworkDispatch { if (senderName.contains(" ")) senderName = senderName.split(" ")[0]; + if (message.startsWith("\\#")) + message = " " + message; + ChatOnSendRoomMessage onSend = new ChatOnSendRoomMessage(0, msgId); sender.getClient().getSession().write(onSend.serialize()); diff --git a/src/services/collections/CollectionService.java b/src/services/collections/CollectionService.java index 8c5a4eaa..608dfb9d 100644 --- a/src/services/collections/CollectionService.java +++ b/src/services/collections/CollectionService.java @@ -311,16 +311,16 @@ public class CollectionService implements INetworkDispatch { } if (hidden && !(getCollection(creature, collectionName) > 0)) { - creature.sendSystemMessage(OutOfBand.ProsePackage("@collection:player_hidden_slot_added", "TO", new Stf("@collection_n:" + collectionName).getStfValue()), DisplayType.Broadcast); + creature.sendSystemMessage(OutOfBand.ProsePackage("@collection:player_hidden_slot_added", "TO", new Stf("@collection_n:" + collectionName).getStfValue().replace(":", " -")), DisplayType.Broadcast); } player.setCollections(collections.toByteArray()); if (!noMessage) { if (!bookName.equals("crafting_book")) { - creature.sendSystemMessage(OutOfBand.ProsePackage("@collection:player_slot_added", "TU", new Stf("@collection_n:" + slotName).getStfValue(), "TO", new Stf("@collection_n:" + collectionName).getStfValue()), DisplayType.Broadcast); + creature.sendSystemMessage(OutOfBand.ProsePackage("@collection:player_slot_added", "TU", new Stf("@collection_n:" + slotName).getStfValue().replace(":", " -"), "TO", new Stf("@collection_n:" + collectionName).getStfValue()), DisplayType.Broadcast); } else { - creature.sendSystemMessage(OutOfBand.ProsePackage("@collection:player_slot_increment", "TU", new Stf("@collection_n:" + slotName).getStfValue(), "TO", new Stf("@collection_n:" + collectionName).getStfValue()), DisplayType.Broadcast); + creature.sendSystemMessage(OutOfBand.ProsePackage("@collection:player_slot_increment", "TU", new Stf("@collection_n:" + slotName).getStfValue().replace(":", " -"), "TO", new Stf("@collection_n:" + collectionName).getStfValue()), DisplayType.Broadcast); } } @@ -357,7 +357,7 @@ public class CollectionService implements INetworkDispatch { } if (isComplete(creature, collectionName)) { - creature.sendSystemMessage(OutOfBand.ProsePackage("@collection:player_collection_complete", "TO", new Stf("@collection_n:" + collectionName).getStfValue()), DisplayType.Broadcast); + creature.sendSystemMessage(OutOfBand.ProsePackage("@collection:player_collection_complete", "TO", new Stf("@collection_n:" + collectionName).getStfValue().replace(":", " -")), DisplayType.Broadcast); if (!noReward) { try { @@ -446,7 +446,7 @@ public class CollectionService implements INetworkDispatch { if (trackServerFirst) { if (core.guildService.getGuildObject().addServerFirst(collectionName, new ServerFirst(creature.getCustomName(), creature.getObjectId(), collectionName, System.currentTimeMillis()))) { addCollection(creature, "bdg_server_first_01"); - creature.sendSystemMessage(OutOfBand.ProsePackage("@collection:player_server_first", "TT", core.getGalaxyName(), "TO", new Stf("@collection_n:" + collectionName).getStfValue()), DisplayType.Broadcast); + creature.sendSystemMessage(OutOfBand.ProsePackage("@collection:player_server_first", "TT", core.getGalaxyName(), "TO", new Stf("@collection_n:" + collectionName).getStfValue().replace(":", " -")), DisplayType.Broadcast); } } @@ -819,7 +819,7 @@ public class CollectionService implements INetworkDispatch { } if (collection.equals(collectionName)) { - creature.sendSystemMessage(OutOfBand.ProsePackage("@collection:player_collection_reset", "TO", new Stf("@collection_n:" + collectionName).getStfValue()), DisplayType.Broadcast); + creature.sendSystemMessage(OutOfBand.ProsePackage("@collection:player_collection_reset", "TO", new Stf("@collection_n:" + collectionName).getStfValue().replace(":", " -")), DisplayType.Broadcast); } continue; diff --git a/src/services/combat/CombatService.java b/src/services/combat/CombatService.java index 713152b7..8385c765 100644 --- a/src/services/combat/CombatService.java +++ b/src/services/combat/CombatService.java @@ -1027,7 +1027,7 @@ public class CombatService implements INetworkDispatch { attacker.sendSystemMessage(OutOfBand.ProsePackage("@bounty_hunter:bounty_success_hunter", mission.getCreditReward(), "TT", target.getCustomName(), "TO", target.getObjectID()), DisplayType.Broadcast); - target.sendSystemMessage(OutOfBand.ProsePackage("@bounty_hunter:bounty_success_hunter", mission.getCreditReward(), "TT", attacker.getCustomName()), DisplayType.Broadcast); + target.sendSystemMessage(OutOfBand.ProsePackage("@bounty_hunter:bounty_success_target", mission.getCreditReward(), "TT", attacker.getCustomName()), DisplayType.Broadcast); core.missionService.handleMissionComplete(attacker, mission); } diff --git a/src/services/gcw/FactionService.java b/src/services/gcw/FactionService.java index 5e9a1ce3..a844c5e4 100644 --- a/src/services/gcw/FactionService.java +++ b/src/services/gcw/FactionService.java @@ -397,7 +397,7 @@ public class FactionService implements INetworkDispatch { scheduler.schedule(() -> { actor.setFaction(faction); - actor.setFactionStatus(FactionStatus.Combatant); + actor.setFactionStatus(FactionStatus.OnLeave); actor.setPvpBitmask(0); PlayerObject player = ((PlayerObject) actor.getSlottedObject("ghost")); if (player != null) { diff --git a/src/services/housing/HousingService.java b/src/services/housing/HousingService.java index ce6d289e..20a097ea 100644 --- a/src/services/housing/HousingService.java +++ b/src/services/housing/HousingService.java @@ -139,6 +139,7 @@ public class HousingService implements INetworkDispatch { Vector admins = new Vector<>(); admins.add(actor.getObjectID()); + building.setAttachment("sign", sign); // meh workaround building.setAttachment("structureOwner", actor.getObjectID()); building.setAttachment("structureAdmins", admins); building.setDeedTemplate(deed.getTemplate()); diff --git a/src/services/mission/MissionService.java b/src/services/mission/MissionService.java index 967b01f3..60af71ec 100644 --- a/src/services/mission/MissionService.java +++ b/src/services/mission/MissionService.java @@ -216,6 +216,12 @@ public class MissionService implements INetworkDispatch { handleMissionAbort(creature, mission, false); } + /** + * Aborts the target mission for the specified player. If silent is true then MissionObjective.abort is not called. + * @param creature Target player used in MissionObjective.abort + * @param mission Mission to abort + * @param silent If true, called the MissionObjective.abort() method, otherwise it simply destroys the mission (false) + */ public void handleMissionAbort(CreatureObject creature, MissionObject mission, boolean silent) { MissionObjective objective = mission.getObjective(); @@ -263,7 +269,8 @@ public class MissionService implements INetworkDispatch { if (entryCounts.get(missionStf) != null) { ranEntryNum = ran.nextInt(entryCounts.get(missionStf)); } //else { System.out.println(missionStf + " was not found in entryCount and is using entry #1"); } - + if (missionStf.equals("mission/mission_deliver_neutral_hard") && ranEntryNum == 1) // m1s value is "mission_success_mail", so dont even use the mission + return 2; if (ranEntryNum == 0) return 1; else @@ -468,10 +475,10 @@ public class MissionService implements INetworkDispatch { mission.setMissionType("survey"); String missionStf = "mission/mission_npc_survey_neutral_easy"; - + mission.setMissionStf(missionStf); mission.setMissionId(getRandomStringEntry(missionStf)); - mission.setMissionDescription(missionStf); - mission.setMissionTitle(missionStf); + mission.setMissionDescription("m" + mission.getMissionId() + "d"); + mission.setMissionTitle("m" + mission.getMissionId() + "t"); mission.setCreator(nameGenerator.compose(2) + " " + nameGenerator.compose(3)); @@ -492,10 +499,10 @@ public class MissionService implements INetworkDispatch { String[] difficulties = { "easy", "medium", "hard" }; String missionStf = "mission/mission_deliver_neutral_" + difficulties[ran.nextInt(difficulties.length)]; - + mission.setMissionStf(missionStf); mission.setMissionId(getRandomStringEntry(missionStf)); - mission.setMissionDescription(missionStf, "o"); - mission.setMissionTitle(missionStf); + mission.setMissionDescription("m" + mission.getMissionId() + "d"); + mission.setMissionTitle("m" + mission.getMissionId() + "t"); mission.setCreator(nameGenerator.compose(2) + " " + nameGenerator.compose(3)); @@ -533,29 +540,26 @@ public class MissionService implements INetworkDispatch { if (attempts >= 5 && !gotBounty) return; } - + if (bountyTarget == null) + return; + mission.setMissionType("bounty"); String missionStf = "mission/mission_bounty_jedi"; + mission.setMissionStf(missionStf); if (!bountyTarget.getProfession().equals("")) { // TODO: Smuggler mission checks. - if (bountyTarget.getFaction().equals("neutral")) { // There were no neutral bounty missions. Remove this when done testing. - mission.setMissionTargetName("@mission/mission_bounty_jedi:neutral_jedi"); - mission.setMissionId(3); - mission.setCreator("Corporate Sector Authority"); - } - else if (bountyTarget.getFaction().equals("rebel")) { + if (bountyTarget.getFaction().equals("rebel")) { mission.setMissionTargetName("Rebel Bounty"); mission.setMissionId(2); mission.setCreator("The Galactic Empire"); - } - else if (bountyTarget.getFaction().equals("imperial")) { + } else if (bountyTarget.getFaction().equals("imperial")) { mission.setMissionTargetName("Imperial Bounty"); mission.setMissionId(1); mission.setCreator("The Alliance"); } - mission.setMissionTitle(missionStf); - mission.setMissionDescription(missionStf); + mission.setMissionTitle("m" + mission.getMissionId() + "t"); + mission.setMissionDescription("m" + mission.getMissionId() + "d"); } else { // TODO: Dead code, but place-holder for implementation of smuggler missions. if (bountyTarget.getFaction().equals("neutral")) { @@ -567,8 +571,8 @@ public class MissionService implements INetworkDispatch { else if (bountyTarget.getFaction().equals("imperial")) { mission.setMissionId(1); } - mission.setMissionTitle(missionStf, "s"); - mission.setMissionDescription(missionStf, "s"); + mission.setMissionTitle("m" + mission.getMissionId() + "ts"); + mission.setMissionDescription("m" + mission.getMissionId() + "ds"); } mission.setMissionLevel(95 + bountyTarget.getFailedAttempts()); @@ -646,7 +650,7 @@ public class MissionService implements INetworkDispatch { public boolean removeBounty(long bountyTarget, boolean listRemove) { if (listRemove) - bountyMap.remove(bountiesODB.get(bountyTarget)); + bountyMap.remove(bountyTarget); bountiesODB.remove(bountyTarget); return true; } diff --git a/src/services/object/ObjectService.java b/src/services/object/ObjectService.java index 5fecc24d..7031eb88 100644 --- a/src/services/object/ObjectService.java +++ b/src/services/object/ObjectService.java @@ -46,8 +46,10 @@ import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicLong; import resources.common.*; +import resources.datatables.DisplayType; import resources.datatables.Options; import resources.datatables.PlayerFlags; +import resources.guild.Guild; import resources.harvest.SurveyTool; import org.apache.mina.core.buffer.IoBuffer; @@ -194,6 +196,12 @@ public class ObjectService implements INetworkDispatch { object.setParent(building); object.getContainerInfo(object.getTemplate()); }); + SWGObject sign = (SWGObject) building.getAttachment("sign"); + if(sign != null) { + sign.initializeBaselines(); + sign.initAfterDBLoad(); + objectList.put(sign.getObjectID(), sign); + } } cursor.close(); @@ -247,9 +255,11 @@ public class ObjectService implements INetworkDispatch { object = new TangibleObject(objectID, planet, position, orientation, Template); } else if(Template.startsWith("object/intangible")) { + if (Template.equals("object/intangible/buy_back/shared_buy_back_container.iff")) // Container sends TANO baselines but is in intangible folder.. lolsoe. + object = new TangibleObject(objectID, planet, position, orientation, Template); + else + object = new IntangibleObject(objectID, planet, position, orientation,Template); - object = new IntangibleObject(objectID, planet, position, orientation,Template); - } else if(Template.startsWith("object/weapon")) { object = new WeaponObject(objectID, planet, position, orientation, Template); @@ -677,6 +687,8 @@ public class ObjectService implements INetworkDispatch { try { DatatableVisitor visitor = ClientFileManager.loadFile("datatables/timer/template_command_mapping.iff", DatatableVisitor.class); + boolean foundTemplate = false; + for (int i = 0; i < visitor.getRowCount(); i++) { if (visitor.getObject(i, 0) != null && ((String) (visitor.getObject(i, 0))).equalsIgnoreCase(object.getTemplate())) { String commandName = (String) visitor.getObject(i, 1); @@ -699,12 +711,22 @@ public class ObjectService implements INetworkDispatch { return; } - creature.addCooldown(cooldownGroup, object.getIntAttribute("reuse_time")); + creature.addCooldown(cooldownGroup, reuse_time); } + foundTemplate = true; + break; } } + + if (!foundTemplate && reuse_time > 0) { + if (creature.hasCooldown(object.getTemplate())) { + return; + } + + creature.addCooldown(object.getTemplate(), reuse_time); + } } catch (Exception e) { e.printStackTrace(); } @@ -893,7 +915,8 @@ public class ObjectService implements INetworkDispatch { } } - for (Integer roomId : ghost.getJoinedChatChannels()) { + List joinedChannels = ghost.getJoinedChatChannels(); + for (Integer roomId : joinedChannels) { ChatRoom room = core.chatService.getChatRoom(roomId); if (room != null) { core.chatService.joinChatRoom(objectShortName, roomId); } @@ -902,8 +925,15 @@ public class ObjectService implements INetworkDispatch { } } - if(!core.getConfig().getString("MOTD").equals("")) - creature.sendSystemMessage(core.getConfig().getString("MOTD"), (byte) 2); + creature.sendSystemMessage(core.getMotd(), DisplayType.Chat); + + if (creature.getGuildId() != 0) { + Guild guild = core.guildService.getGuildById(creature.getGuildId()); + + if (guild != null && guild.getMembers().containsKey(creature.getObjectID())) { + core.guildService.sendGuildMotd(creature, guild); + } + } if (core.getBountiesODB().contains(creature.getObjectID())) core.missionService.getBountyMap().put(creature.getObjectID(), (BountyListItem) core.getBountiesODB().get(creature.getObjectID())); diff --git a/src/services/spawn/DynamicSpawnArea.java b/src/services/spawn/DynamicSpawnArea.java index f45e7196..81635232 100644 --- a/src/services/spawn/DynamicSpawnArea.java +++ b/src/services/spawn/DynamicSpawnArea.java @@ -25,6 +25,7 @@ import java.util.Collections; import java.util.Random; import java.util.Vector; +import resources.datatables.Options; import resources.datatables.Posture; import main.NGECore; import net.engio.mbassy.listener.Handler; @@ -59,13 +60,15 @@ public class DynamicSpawnArea extends SpawnArea { public void onEnter(EnterEvent event) { SWGObject object = event.object; - + // ToDo: Mounted players must be handled too + //System.out.println("Entering object " + object.getClass().getName()); if(object == null || !(object instanceof CreatureObject)) return; + CreatureObject creature = (CreatureObject) object; - if(creature.getSlottedObject("ghost") == null) + if(creature.getSlottedObject("ghost") == null && !creature.getOption(Options.MOUNT)) return; creature.getEventBus().subscribe(this); @@ -91,8 +94,14 @@ public class DynamicSpawnArea extends SpawnArea { Vector groupMembers = new Vector(); Point3D randomGroupPosition = getRandomPosition(creature.getWorldPosition(), 32, 100); int spawnCount = spawnGroup.getGroupMembersNumber(); - if (spawnCount<0) - spawnCount = Math.abs(spawnCount) + new Random().nextInt(spawnGroup.getMobiles().size()-Math.abs(spawnCount)); + if (spawnCount<0){ + int spawnCount2 = 1; + if (Math.abs(spawnCount) many NPC groups int index = new Random().nextInt(spawnGroups.size()); this.spawnGroup = spawnGroups.get(index); + Vector groupMembers = new Vector(); - Point3D randomGroupPosition = getRandomPosition(creature.getWorldPosition(), 32, 100); + //Point3D randomGroupPosition = getRandomPosition(creature.getWorldPosition(), 32, 100); + Point3D randomGroupPosition = getRandomPosition(creature.getWorldPosition(), 32, spawnGroup.getMinSpawnDistance()+10); int spawnCount = spawnGroup.getGroupMembersNumber(); - if (spawnCount<0) - spawnCount = Math.abs(spawnCount) + new Random().nextInt(spawnGroup.getMobiles().size()-Math.abs(spawnCount)); + if (spawnCount<0){ + int spawnCount2 = 1; + if (Math.abs(spawnCount) mobiles; private String name; diff --git a/src/services/spawn/LairGroupTemplate.java b/src/services/spawn/LairGroupTemplate.java index 4cca3ea2..49e816ba 100644 --- a/src/services/spawn/LairGroupTemplate.java +++ b/src/services/spawn/LairGroupTemplate.java @@ -2,7 +2,7 @@ package services.spawn; import java.util.Vector; -public class LairGroupTemplate { +public class LairGroupTemplate extends SpawnGroup{ private Vector lairSpawnTemplates; private String name; diff --git a/src/services/spawn/LairSpawnArea.java b/src/services/spawn/LairSpawnArea.java index a4f29896..165c53b8 100644 --- a/src/services/spawn/LairSpawnArea.java +++ b/src/services/spawn/LairSpawnArea.java @@ -29,6 +29,7 @@ import net.engio.mbassy.listener.Handler; import resources.common.collidables.AbstractCollidable; import resources.common.collidables.AbstractCollidable.EnterEvent; import resources.common.collidables.AbstractCollidable.ExitEvent; +import resources.datatables.Options; import resources.objects.creature.CreatureObject; import services.SimulationService.MoveEvent; import services.TerrainService; @@ -90,7 +91,11 @@ public class LairSpawnArea extends SpawnArea { LairSpawnTemplate lairSpawn = lairTemplates.get(random.nextInt(lairTemplates.size())); - int level = random.nextInt((int) (lairSpawn.getMaxLevel() - lairSpawn.getMinLevel()) + 1) + lairSpawn.getMinLevel(); + int level = -1; // If level equals -1 then the mobile template CL will be used! + if (lairSpawn.getMinLevel() != -1 && lairSpawn.getMaxLevel()!=-1) + level = random.nextInt((int) (lairSpawn.getMaxLevel() - lairSpawn.getMinLevel()) + 1) + lairSpawn.getMinLevel(); + + LairActor lairActor = core.spawnService.spawnLair(lairSpawn.getLairTemplate(), getPlanet(), randomPosition, (short) level); if(lairActor == null) @@ -111,7 +116,7 @@ public class LairSpawnArea extends SpawnArea { CreatureObject creature = (CreatureObject) object; - if(creature.getSlottedObject("ghost") == null) + if(creature.getSlottedObject("ghost") == null && !creature.getOption(Options.MOUNT)) return; spawnLair(creature); @@ -130,7 +135,7 @@ public class LairSpawnArea extends SpawnArea { CreatureObject creature = (CreatureObject) object; - if(creature.getSlottedObject("ghost") == null) + if(creature.getSlottedObject("ghost") == null && !creature.getOption(Options.MOUNT)) return; creature.getEventBus().unsubscribe(this); @@ -142,12 +147,15 @@ public class LairSpawnArea extends SpawnArea { SWGObject object = event.object; - if(object == null || !(object instanceof CreatureObject) || object.getContainer() != null) + //if(object == null || !(object instanceof CreatureObject) || object.getContainer() != null) + // return; + + if(object == null || !(object instanceof CreatureObject)) return; CreatureObject creature = (CreatureObject) object; - if(creature.getSlottedObject("ghost") == null) + if(creature.getSlottedObject("ghost") == null && !creature.getOption(Options.MOUNT)) return; if(new Random().nextFloat() <= 0.05) diff --git a/src/services/spawn/LairTemplate.java b/src/services/spawn/LairTemplate.java index 2a97bfcc..04741351 100644 --- a/src/services/spawn/LairTemplate.java +++ b/src/services/spawn/LairTemplate.java @@ -21,11 +21,14 @@ ******************************************************************************/ package services.spawn; +import java.util.Vector; + public class LairTemplate { private String name; private String lairCRC; private String mobileName; + private Vector mobiles; private int mobileLimit; public LairTemplate(String name, String mobile, int mobileLimit, String lairCRC) { @@ -34,7 +37,14 @@ public class LairTemplate { this.mobileLimit = mobileLimit; this.lairCRC = lairCRC; } - + + public LairTemplate(String name, Vector mobiles, int mobileLimit, String lairCRC) { + this.name = name; + this.mobiles = mobiles; + this.mobileLimit = mobileLimit; + this.lairCRC = lairCRC; + } + public String getLairCRC() { return lairCRC; } @@ -67,4 +77,12 @@ public class LairTemplate { this.name = name; } + public Vector getMobiles() { + return mobiles; + } + + public void setMobiles(Vector mobiles) { + this.mobiles = mobiles; + } + } diff --git a/src/services/spawn/MixedSpawnArea.java b/src/services/spawn/MixedSpawnArea.java new file mode 100644 index 00000000..e0b0a68b --- /dev/null +++ b/src/services/spawn/MixedSpawnArea.java @@ -0,0 +1,430 @@ +/******************************************************************************* + * Copyright (c) 2013 + * + * This File is part of NGECore2. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program. If not, see . + * + * Using NGEngine to work with NGECore2 is making a combined work based on NGEngine. + * Therefore all terms and conditions of the GNU Lesser General Public License cover the combination. + ******************************************************************************/ +package services.spawn; + +import java.util.Collections; +import java.util.Random; +import java.util.Vector; + +import resources.datatables.Options; +import resources.datatables.Posture; +import main.NGECore; +import net.engio.mbassy.listener.Handler; +import resources.common.collidables.AbstractCollidable; +import resources.common.collidables.AbstractCollidable.EnterEvent; +import resources.common.collidables.AbstractCollidable.ExitEvent; +import resources.objects.creature.CreatureObject; +import services.TerrainService; +import services.SimulationService.MoveEvent; +import services.ai.LairActor; +import engine.resources.objects.SWGObject; +import engine.resources.scene.Planet; +import engine.resources.scene.Point3D; + +public class MixedSpawnArea extends SpawnArea { + + private SpawnGroup spawnGroup; + private Vector spawnGroups; + private Vector mobiles = new Vector(); + private Vector lairs = new Vector(); + private long lastSpawnTime = 0; + + public MixedSpawnArea(Planet planet, AbstractCollidable area, SpawnGroup spawnGroup) { + super(planet, area); + this.spawnGroup = spawnGroup; + } + + public MixedSpawnArea(Planet planet, AbstractCollidable area, Vector spawnGroups) { + super(planet, area); + this.spawnGroups = spawnGroups; + } + + @Override + @Handler + public void onEnter(EnterEvent event) { + + SWGObject object = event.object; + // ToDo: Mounted players must be handled too + //System.out.println("Entering object " + object.getClass().getName()); + if(object == null || !(object instanceof CreatureObject)) + return; + + + CreatureObject creature = (CreatureObject) object; + + if(creature.getSlottedObject("ghost") == null && !creature.getOption(Options.MOUNT)) + return; + + creature.getEventBus().subscribe(this); + // spawn some creatures + if (spawnGroups==null){ + if (spawnGroup.getGroupMembersNumber()==-1){ + for(int i = 0; i < 5; i++) + spawnCreature(creature); + } else { + Vector groupMembers = new Vector(); + Point3D randomGroupPosition = getRandomPosition(creature.getWorldPosition(), 32, 100); + for(int i = 0; i < spawnGroup.getGroupMembersNumber(); i++) {// A group with a specified number of members + CreatureObject spawnedCreature = spawnCreatureMember(creature, groupMembers, randomGroupPosition, i); + if (spawnedCreature!=null) + groupMembers.add(spawnedCreature); + } + } + } else { + // select randomly one of the spawngroups -> minimizes number of collidables for areas with multiple different NPC groups + // One spawnarea -> many NPC groups + + + int index = new Random().nextInt(spawnGroups.size()); + this.spawnGroup = spawnGroups.get(index); + if (this.spawnGroup instanceof DynamicSpawnGroup){ + Vector groupMembers = new Vector(); + Point3D randomGroupPosition = getRandomPosition(creature.getWorldPosition(), 32, 100); + int spawnCount = spawnGroup.getGroupMembersNumber(); + if (spawnCount<0){ + int spawnCount2 = 1; + if (Math.abs(spawnCount) groupMembers = new Vector(); + Point3D randomGroupPosition = getRandomPosition(creature.getWorldPosition(), 32, 100); + for(int i = 0; i < spawnGroup.getGroupMembersNumber(); i++) {// A group with a specified number of members + CreatureObject spawnedCreature = spawnCreatureMember(creature, groupMembers, randomGroupPosition, i); + if (spawnedCreature!=null) + groupMembers.add(spawnedCreature); + } + } + } else { + // select randomly one of the spawngroups -> minimizes number of collidables for areas with multiple different NPC groups + // One spawnarea -> many NPC groups + int index = new Random().nextInt(spawnGroups.size()); + this.spawnGroup = spawnGroups.get(index); + if (this.spawnGroup instanceof DynamicSpawnGroup){ + Vector groupMembers = new Vector(); + //Point3D randomGroupPosition = getRandomPosition(creature.getWorldPosition(), 32, 100); + Point3D randomGroupPosition = getRandomPosition(creature.getWorldPosition(), 32, spawnGroup.getMinSpawnDistance()+10); + int spawnCount = spawnGroup.getGroupMembersNumber(); + if (spawnCount<0){ + int spawnCount2 = 1; + if (Math.abs(spawnCount) it = mobiles.iterator(); // This stops further execution of this method for some reason +// it.forEachRemaining(mobile -> { +// if(mobile.getPosture() == Posture.Dead) +// it.remove(); +// }); + + mobiles.removeAll(Collections.singleton(null)); + Vector removers = new Vector(); + for (CreatureObject ob : mobiles){ + if (ob.getPosture() == Posture.Dead) + removers.add(ob); + } + mobiles.removeAll(removers); + + if(mobiles.size() >= spawnGroup.getMaxSpawns()) + return; + + boolean foundPos = false; + int tries = 0; + Point3D randomPosition = null; + + while(!foundPos && ++tries < 10) { + + randomPosition = getRandomPosition(creature.getWorldPosition(), 32.f, 200.f); + + if(randomPosition == null) + return; + + TerrainService terrainSvc = core.terrainService; + + float height = terrainSvc.getHeight(getPlanet().getID(), randomPosition.x, randomPosition.z); + randomPosition.y = height; + + if (mobiles.size()>0){ // Fix, mobiles must be filled first, before doing this check + for(CreatureObject mobile : mobiles) { + if(mobile.getWorldPosition().getDistance(randomPosition) > spawnGroup.getMinSpawnDistance()) + foundPos = true; + } + } else {foundPos = true;} + + if(!terrainSvc.canBuildAtPosition(creature, randomPosition.x, randomPosition.z)) + foundPos = false; + + } + + if(!foundPos) + return; + + Random random = new Random(); + + String mobileTemplate = spawnGroup.getMobiles().get(random.nextInt(spawnGroup.getMobiles().size())); + CreatureObject spawnedCreature = core.spawnService.spawnCreature(mobileTemplate, getPlanet().getName(), 0, randomPosition.x, randomPosition.y, randomPosition.z); + if(spawnedCreature != null){ + mobiles.add(spawnedCreature); + } + + } + + + private CreatureObject spawnCreatureMember(CreatureObject creature, Vector groupMembers, Point3D randomGroupPosition, int spawnIndex) { + + NGECore core = NGECore.getInstance(); + +// Iterator it = mobiles.iterator(); // This stops further execution of this method for some reason +// it.forEachRemaining(mobile -> { +// if(mobile.getPosture() == Posture.Dead) +// it.remove(); +// }); + + mobiles.removeAll(Collections.singleton(null)); + Vector removers = new Vector(); + for (CreatureObject ob : mobiles){ + if (ob.getPosture() == Posture.Dead) + removers.add(ob); + } + mobiles.removeAll(removers); + +// if(mobiles.size() >= spawnGroup.getMaxSpawns()) +// return; + + boolean foundPos = false; + int tries = 0; + Point3D randomPosition = null; + String template = spawnGroup.getMobiles().get(spawnIndex); + MobileTemplate mobileTemplate = NGECore.getInstance().spawnService.getMobileTemplate(template); + if (mobileTemplate==null){ + System.out.println("mobileTemplate==null for template " + template); + return null; + } + + while(!foundPos && ++tries < 30) { + + randomPosition = getRandomPosition(randomGroupPosition, mobileTemplate.getMinSpawnDistance(), mobileTemplate.getMaxSpawnDistance()); + + if(randomPosition == null){ + //System.out.println("randomPosition == null"); + return null; + } + + TerrainService terrainSvc = core.terrainService; + + float height = terrainSvc.getHeight(getPlanet().getID(), randomPosition.x, randomPosition.z); + randomPosition.y = height; + + if (mobiles.size()>0){ // Fix, mobiles must be filled first, before doing this check + boolean minDistViolated = false; + for(CreatureObject mobile : mobiles) { + if(mobile.getWorldPosition().getDistance(randomPosition) < spawnGroup.getMinSpawnDistance() && ! groupMembers.contains(mobile)){ + minDistViolated = true; // Distance to other nearby groups + //System.out.println("minDistViolated " + mobile.getWorldPosition().getDistance(randomPosition) + "mobile: " + mobile.getTemplate()); + } + } + for (LairActor actor : lairs){ + if(actor.getLairObject().getWorldPosition().getDistance(randomPosition) < spawnGroup.getMinSpawnDistance()){ + minDistViolated = true; // Distance to other nearby lairs! + //System.out.println("minDistViolated " + mobile.getWorldPosition().getDistance(randomPosition) + "mobile: " + mobile.getTemplate()); + } + } + if (minDistViolated) + foundPos = false; + else + foundPos = true; + } else {foundPos = true;} + + if(!terrainSvc.canBuildAtPosition(creature, randomPosition.x, randomPosition.z)) + foundPos = false; + + } + + if(!foundPos){ + //System.out.println("mobileTemplate pos not found " + mobileTemplate.getCreatureName()); + return null; + } + //System.out.println("mobileTemplate pos found " + mobileTemplate.getCreatureName()); + + CreatureObject spawnedCreature = core.spawnService.spawnCreature(template, getPlanet().getName(), 0, randomPosition.x, randomPosition.y, randomPosition.z); + if(spawnedCreature != null){ + mobiles.add(spawnedCreature); + //System.err.println("Creature ADDED " + spawnedCreature.getTemplate()); + } else + { + //System.out.println("Creature not spawned" + template); + } + + return spawnedCreature; + } + + // LairSpawnArea class methods + public void spawnLair(CreatureObject object) { + + NGECore core = NGECore.getInstance(); + + LairGroupTemplate lairGroup = (LairGroupTemplate)this.spawnGroup; + + Vector lairTemplates = lairGroup.getLairSpawnTemplates(); + + if(lairGroup == null || lairTemplates.isEmpty()) + return; + + if((System.currentTimeMillis() - lastSpawnTime) < 10000) + return; + + Point3D randomPosition = getRandomPosition(object.getWorldPosition(), 32.f, 200.f); + + if(randomPosition == null) + return; + + TerrainService terrainSvc = core.terrainService; + + float height = terrainSvc.getHeight(getPlanet().getID(), randomPosition.x, randomPosition.z); + randomPosition.y = height; + + for(LairActor otherLair : lairs) { + if(otherLair.getLairObject().getWorldPosition().getDistance(randomPosition) < 30) + return; + } + + if(!terrainSvc.canBuildAtPosition(object, randomPosition.x, randomPosition.z)) + return; + + Random random = new Random(); + + LairSpawnTemplate lairSpawn = lairTemplates.get(random.nextInt(lairTemplates.size())); + + int level = -1; // If level equals -1 then the mobile template CL will be used! + if (lairSpawn.getMinLevel() != -1 && lairSpawn.getMaxLevel()!=-1) + level = random.nextInt((int) (lairSpawn.getMaxLevel() - lairSpawn.getMinLevel()) + 1) + lairSpawn.getMinLevel(); + + + + LairActor lairActor = core.spawnService.spawnLair(lairSpawn.getLairTemplate(), getPlanet(), randomPosition, (short) level); + if(lairActor == null) + return; + lairs.add(lairActor); + lastSpawnTime = System.currentTimeMillis(); + + } + +} diff --git a/src/services/spawn/MobileTemplate.java b/src/services/spawn/MobileTemplate.java index 5c67f195..9cc539da 100644 --- a/src/services/spawn/MobileTemplate.java +++ b/src/services/spawn/MobileTemplate.java @@ -27,6 +27,8 @@ import java.util.Vector; import resources.datatables.Options; import resources.datatables.PvpStatus; +import resources.datatables.Factions; +import resources.datatables.FactionStatus; import resources.loot.LootGroup; public class MobileTemplate implements Cloneable { @@ -34,6 +36,8 @@ public class MobileTemplate implements Cloneable { private Vector templates; private int optionsBitmask = Options.ATTACKABLE; private int pvpBitmask = PvpStatus.Attackable; + private int factionstatus = FactionStatus.OnLeave; + private String faction = ""; private short level; private short minLevel; private short maxLevel; @@ -83,6 +87,22 @@ public class MobileTemplate implements Cloneable { return pvpBitmask; } + public String getFaction(){ + return faction; + } + + public void setFaction(String faction){ + this.faction = faction; + } + + public int getFactionStatus(){ + return factionstatus; + } + + public void setFactionStatus(int factionstatus){ + this.factionstatus = factionstatus; + } + public void setPvpBitmask(int pvpBitmask) { this.pvpBitmask = pvpBitmask; } diff --git a/src/services/spawn/SpawnGroup.java b/src/services/spawn/SpawnGroup.java new file mode 100644 index 00000000..b0d62402 --- /dev/null +++ b/src/services/spawn/SpawnGroup.java @@ -0,0 +1,46 @@ +/******************************************************************************* + * Copyright (c) 2013 + * + * This File is part of NGECore2. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program. If not, see . + * + * Using NGEngine to work with NGECore2 is making a combined work based on NGEngine. + * Therefore all terms and conditions of the GNU Lesser General Public License cover the combination. + ******************************************************************************/ +package services.spawn; + +import java.util.Vector; + +// Making this an abstract class, not having to implement unused methods in either spawn group classes +public abstract class SpawnGroup { + + public SpawnGroup() {} + + public int getGroupMembersNumber(){ + return 0; + } + + public Vector getMobiles() { + return new Vector(); + } + + public int getMinSpawnDistance(){ + return 0; + } + + public int getMaxSpawns(){ + return 0; + } +} diff --git a/src/services/spawn/SpawnService.java b/src/services/spawn/SpawnService.java index 22c6a1f2..4d6c4084 100644 --- a/src/services/spawn/SpawnService.java +++ b/src/services/spawn/SpawnService.java @@ -104,6 +104,8 @@ public class SpawnService { creature.setLootGroups(mobileTemplate.getLootGroups()); creature.setOptionsBitmask(mobileTemplate.getOptionsBitmask()); + creature.setFaction(mobileTemplate.getFaction()); + creature.setFactionStatus(mobileTemplate.getFactionStatus()); creature.setPvpBitmask(mobileTemplate.getPvpBitmask()); creature.setStfFilename("mob/creature_names"); // TODO: set other STFs for NPCs other than creatures creature.setStfName(mobileTemplate.getCreatureName()); @@ -114,8 +116,12 @@ public class SpawnService { if(level != -1) creature.setLevel(level); else { - creature.setLevel(mobileTemplate.getLevel()); - level = mobileTemplate.getLevel(); + if (mobileTemplate.getLevel()!=0){ + level = mobileTemplate.getLevel(); + creature.setLevel(level); + } else { + level = -1; + } } if (mobileTemplate.getMinLevel()!=0 && mobileTemplate.getMaxLevel()!=0 && level == -1){ @@ -256,6 +262,10 @@ public class SpawnService { lairObject.setMaximumCondition(1000 * level); LairActor lairActor = new LairActor(lairObject, lairTemplate.getMobileName(), 10, level); + + if (lairTemplate.getMobiles()!=null) + lairActor = new LairActor(lairObject, lairTemplate.getMobiles(), 10, level); + lairObject.setAttachment("AI", lairActor); core.simulationService.add(lairObject, position.x, position.z, true); @@ -308,6 +318,10 @@ public class SpawnService { lairTemplates.put(name, new LairTemplate(name, mobile, mobileLimit, lairCRC)); } + public void addLairTemplate(String name, Vector mobiles, int mobileLimit, String lairCRC) { + lairTemplates.put(name, new LairTemplate(name, mobiles, mobileLimit, lairCRC)); + } + public void loadLairGroups() { Path p = Paths.get("scripts/mobiles/lairgroups"); FileVisitor fv = new SimpleFileVisitor() { @@ -404,6 +418,28 @@ public class SpawnService { spawnAreas.get(planet).add(dynamicSpawnArea); core.simulationService.addCollidable(collidableCircle, x, z); } + + public void addMixedSpawnArea(Vector passedGroups, float x, float z, float radius, String planetName) { + Vector mixedSpawnGroups = new Vector(); + for (String template : passedGroups){ + if (dynamicGroupTemplates.get(template)!=null){ + mixedSpawnGroups.add(dynamicGroupTemplates.get(template)); + } + if (lairGroupTemplates.get(template)!=null){ + mixedSpawnGroups.add(lairGroupTemplates.get(template)); + } + if(dynamicGroupTemplates.get(template) == null && lairGroupTemplates.get(template)==null) + return; + } + + Planet planet = core.terrainService.getPlanetByName(planetName); + if(mixedSpawnGroups == null || mixedSpawnGroups.size() == 0 || planet == null) + return; + CollidableCircle collidableCircle = new CollidableCircle(new Point3D(x, 0, z), radius, planet); + MixedSpawnArea dynamicSpawnArea = new MixedSpawnArea(planet, collidableCircle, mixedSpawnGroups); + spawnAreas.get(planet).add(dynamicSpawnArea); + core.simulationService.addCollidable(collidableCircle, x, z); + } public Map getMobileTemplates() { return mobileTemplates; diff --git a/src/services/sui/SUIService.java b/src/services/sui/SUIService.java index 2ebbe982..662ec843 100644 --- a/src/services/sui/SUIService.java +++ b/src/services/sui/SUIService.java @@ -133,7 +133,7 @@ public class SUIService implements INetworkDispatch { //System.out.println("SUI target is NOT creatureobject " + target.getTemplate()); } - if(target.getAttachment("isVendor") != null && (Boolean) target.getAttachment("isVendor") && ((CreatureObject) owner).getPlayerObject().getOwnedVendors().contains(target.getObjectID())) { + if(target.getAttachment("isVendor") != null && (Boolean) target.getAttachment("isVendor") && (long) target.getAttachment("vendorOwner") == owner.getObjectID()) { core.scriptService.callScript("scripts/radial/", "terminal/vendor", "createRadial", core, owner, target, request.getRadialOptions()); sendRadial(owner, target, request.getRadialOptions(), request.getRadialCount()); return; @@ -180,6 +180,11 @@ public class SUIService implements INetworkDispatch { if(target == null || owner == null) return; + if(target.getAttachment("isVendor") != null && (Boolean) target.getAttachment("isVendor") && (long) target.getAttachment("vendorOwner") == owner.getObjectID()) { + core.scriptService.callScript("scripts/radial/", "terminal/vendor", "handleSelection", core, owner, target, objMenuSelect.getSelection()); + return; + } + core.scriptService.callScript("scripts/radial/", getRadialFilename(target), "handleSelection", core, owner, target, objMenuSelect.getSelection()); } diff --git a/src/services/sui/SUITableCell.java b/src/services/sui/SUITableCell.java new file mode 100644 index 00000000..d5c759b1 --- /dev/null +++ b/src/services/sui/SUITableCell.java @@ -0,0 +1,58 @@ +/******************************************************************************* + * Copyright (c) 2013 + * + * This File is part of NGECore2. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program. If not, see . + * + * Using NGEngine to work with NGECore2 is making a combined work based on NGEngine. + * Therefore all terms and conditions of the GNU Lesser General Public License cover the combination. + ******************************************************************************/ +package services.sui; + +public class SUITableCell { + private String name; + private long objectId; + private int cellId; + + public SUITableCell(String name, long objectId, int cellId) { + this.name = name; + this.objectId = objectId; + this.cellId = cellId; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public long getObjectId() { + return objectId; + } + + public void setObjectId(long objectId) { + this.objectId = objectId; + } + + public int getCellId() { + return cellId; + } + + public void setCellId(int cellId) { + this.cellId = cellId; + } +} diff --git a/src/services/sui/SUITableItem.java b/src/services/sui/SUITableItem.java new file mode 100644 index 00000000..5da4130b --- /dev/null +++ b/src/services/sui/SUITableItem.java @@ -0,0 +1,58 @@ +/******************************************************************************* + * Copyright (c) 2013 + * + * This File is part of NGECore2. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program. If not, see . + * + * Using NGEngine to work with NGECore2 is making a combined work based on NGEngine. + * Therefore all terms and conditions of the GNU Lesser General Public License cover the combination. + ******************************************************************************/ +package services.sui; + +import java.util.Vector; + +public class SUITableItem { + private Vector cells = new Vector(); + private String itemName; + private int index; + + public SUITableItem() { } + + public SUITableItem(String itemName, int index) { + this.itemName = itemName; + this.setIndex(index); + } + + public Vector getCells() { + return cells; + } + public void setCells(Vector cells) { + this.cells = cells; + } + public String getItemName() { + return itemName; + } + public void setItemName(String itemName) { + this.itemName = itemName; + } + + public int getIndex() { + return index; + } + + public void setIndex(int index) { + this.index = index; + } +} diff --git a/src/services/sui/SUIWindow.java b/src/services/sui/SUIWindow.java index dd256ae2..2f1c8a11 100644 --- a/src/services/sui/SUIWindow.java +++ b/src/services/sui/SUIWindow.java @@ -40,6 +40,7 @@ public class SUIWindow { private Map callbacks = new ConcurrentHashMap(); private Map javaCallbacks = new ConcurrentHashMap(); private Vector menuItems = new Vector(); + private Vector tableItems = new Vector(); public SUIWindow(String script, SWGObject owner, int windowId, SWGObject rangeObject, float maxDistance) { @@ -154,6 +155,21 @@ public class SUIWindow { } + public void addTableDataSource(String name, String value) { + + SUIWindowComponent component = new SUIWindowComponent(); + component.setType((byte) 8); // using 6 (addDataSource) doesn't allow setting of column titles in tables + + for(String str : name.split(":")) { + component.getNarrowParams().add(str); + } + + component.getWideParams().add(value); + + components.add(component); + + } + public void addListBoxMenuItem(String itemName, long objectId) { SUIListBoxItem menuItem = new SUIListBoxItem(itemName, objectId); @@ -164,8 +180,30 @@ public class SUIWindow { menuItems.add(menuItem); } + + public void addTableColumn(String itemName, String type) { + int index = tableItems.size(); + SUITableItem item = new SUITableItem(itemName, index); + addTableDataSource("comp.TablePage.dataTable:Name", String.valueOf(index)); + setProperty("comp.TablePage.dataTable." + index + ":Label", itemName); + setProperty("comp.TablePage.dataTable." + index + ":Type", type); + + tableItems.add(item); + } + + public void addTableCell(String cellName, long cellObjId, int columnIndex) { + tableItems.forEach(column -> { + if (column.getIndex() == columnIndex) { + SUITableCell cell = new SUITableCell(cellName, cellObjId, column.getCells().size()); + addDataItem("comp.TablePage.dataTable." + columnIndex + ":Name", "data" + cell.getCellId()); + setProperty("comp.TablePage.dataTable." + columnIndex + ".data" + cell.getCellId() + ":Value", cellName); + column.getCells().add(cell); + } + }); + } + public int getWindowId() { return windowId; } @@ -234,6 +272,22 @@ public class SUIWindow { return 0; } + + public long getTableObjIdByRow(int row) { + SUITableItem item = getTableItems().get(0); + + if (item != null) + return item.getCells().get(row).getObjectId(); + return 0; + } + + public Vector getTableItems() { + return tableItems; + } + + public void setTableItems(Vector tableItems) { + this.tableItems = tableItems; + } public enum Trigger {; public static byte TRIGGER_UPDATE = 4;