From 2a23dd8076adff03bf64e97ad305e87c043c2f14 Mon Sep 17 00:00:00 2001 From: CharonInferar Date: Wed, 30 Apr 2014 19:45:12 +0200 Subject: [PATCH] merge conflict resolve --- odb/bounties/placeholder.txt | 0 scripts/conversation/reb_recruiter.py | 585 ++++++++++++++++++ scripts/mobiles/canon/scout_trooper.py | 31 + scripts/mobiles/canon/swamp_trooper.py | 31 + .../lairs/tatooine_rill_lair_neutral_small.py | 5 + .../tatooine_worrt_lair_neutral_small.py | 5 + .../tatooine/adolescent_krayt_dragon.py | 30 + scripts/mobiles/tatooine/armodragon.py | 30 + scripts/mobiles/tatooine/bantha_low.py | 30 + scripts/mobiles/tatooine/bantha_matriarch.py | 30 + scripts/mobiles/tatooine/blight_boar.py | 30 + scripts/mobiles/tatooine/bocatt.py | 30 + .../mobiles/tatooine/bonecracker_bantha.py | 30 + scripts/mobiles/tatooine/bull_bantha.py | 30 + scripts/mobiles/tatooine/bull_ronto.py | 30 + scripts/mobiles/tatooine/cannibal_dewback.py | 30 + .../mobiles/tatooine/canyon_krayt_dragon.py | 30 + scripts/mobiles/tatooine/carion_kreetle.py | 30 + scripts/mobiles/tatooine/cave_beetle.py | 30 + scripts/mobiles/tatooine/city_rockmite.py | 30 + .../mobiles/tatooine/city_sewer_swamprat.py | 30 + scripts/mobiles/tatooine/cupa.py | 30 + scripts/mobiles/tatooine/death_kreetle.py | 30 + scripts/mobiles/tatooine/desert_eopie.py | 30 + scripts/mobiles/tatooine/desert_kreetle.py | 30 + scripts/mobiles/tatooine/desert_razorback.py | 30 + scripts/mobiles/tatooine/desert_squill.py | 30 + scripts/mobiles/tatooine/dimu_bantha.py | 30 + scripts/mobiles/tatooine/diseased_bocatt.py | 30 + scripts/mobiles/tatooine/domestic_eopie.py | 30 + scripts/mobiles/tatooine/dragonet.py | 30 + scripts/mobiles/tatooine/drooling_nuna.py | 30 + scripts/mobiles/tatooine/dune_bantha.py | 30 + scripts/mobiles/tatooine/dune_beetle.py | 30 + scripts/mobiles/tatooine/dune_lizard.py | 30 + scripts/mobiles/tatooine/dwarf_bantha.py | 30 + scripts/mobiles/tatooine/dwarf_eopie.py | 30 + scripts/mobiles/tatooine/dwarf_nuna.py | 30 + scripts/mobiles/tatooine/elder_zucca_boar.py | 30 + .../tatooine/elite_dewback_cannibal.py | 30 + scripts/mobiles/tatooine/elite_dragonet.py | 30 + scripts/mobiles/tatooine/elite_dune_lizard.py | 30 + .../tatooine/elite_giant_sand_beetle.py | 30 + .../mobiles/tatooine/elite_mutant_womprat.py | 30 + scripts/mobiles/tatooine/elite_ronto.py | 30 + scripts/mobiles/tatooine/elite_scyk.py | 30 + scripts/mobiles/tatooine/elite_sevorrt.py | 30 + .../tatooine/enraged_mountain_dewback.py | 30 + scripts/mobiles/tatooine/enraged_squill.py | 30 + scripts/mobiles/tatooine/eoni.py | 30 + scripts/mobiles/tatooine/eopie.py | 30 + scripts/mobiles/tatooine/eopie_herdmaster.py | 30 + .../tatooine/female_mountain_squill.py | 30 + scripts/mobiles/tatooine/feral_bantha.py | 30 + scripts/mobiles/tatooine/furios_ronto.py | 30 + .../tatooine/giant_canyon_krayt_dragon.py | 30 + scripts/mobiles/tatooine/giant_sand_beetle.py | 30 + scripts/mobiles/tatooine/giant_worrt.py | 30 + scripts/mobiles/tatooine/gorg.py | 30 + scripts/mobiles/tatooine/gorg_glutton.py | 30 + .../mobiles/tatooine/grand_krayt_dragon.py | 30 + scripts/mobiles/tatooine/great_squill.py | 30 + .../tatooine/greater_desert_womprat.py | 30 + scripts/mobiles/tatooine/grizzled_dewback.py | 30 + scripts/mobiles/tatooine/harmony_worrt.py | 30 + scripts/mobiles/tatooine/jundland_eopie.py | 30 + .../tatooine/juvenile_canyon_krayt_dragon.py | 30 + scripts/mobiles/tatooine/kreetle_swarmling.py | 30 + scripts/mobiles/tatooine/large_cave_beetle.py | 30 + .../mobiles/tatooine/large_rock_beetle1.py | 30 + .../mobiles/tatooine/large_rock_beetle2.py | 30 + .../mobiles/tatooine/large_rock_beetle3.py | 30 + scripts/mobiles/tatooine/large_sand_beetle.py | 30 + scripts/mobiles/tatooine/lesser_bocatt.py | 30 + .../mobiles/tatooine/lesser_desert_womprat.py | 30 + scripts/mobiles/tatooine/lesser_dewback.py | 30 + scripts/mobiles/tatooine/malignant_squill.py | 30 + scripts/mobiles/tatooine/minor_worrt.py | 30 + scripts/mobiles/tatooine/mound_mite.py | 30 + scripts/mobiles/tatooine/mountain_dewback.py | 30 + scripts/mobiles/tatooine/mountain_squill.py | 30 + .../tatooine/mountain_squill_guardian.py | 30 + .../tatooine/mountain_squill_hunter.py | 30 + scripts/mobiles/tatooine/mountain_worrt.py | 30 + scripts/mobiles/tatooine/mutant_womprat.py | 30 + scripts/mobiles/tatooine/overkreetle.py | 30 + .../tatooine/parry_stormtrooper_dewback.py | 30 + scripts/mobiles/tatooine/plaque_rat.py | 30 + scripts/mobiles/tatooine/razorback_felspur.py | 30 + scripts/mobiles/tatooine/razorclaw.py | 30 + scripts/mobiles/tatooine/rill.py | 30 + scripts/mobiles/tatooine/rock_beetle.py | 30 + scripts/mobiles/tatooine/rock_beetle1.py | 30 + scripts/mobiles/tatooine/rock_beetle_cave.py | 30 + scripts/mobiles/tatooine/rockmite.py | 30 + scripts/mobiles/tatooine/ronto.py | 30 + scripts/mobiles/tatooine/runted_rill.py | 30 + scripts/mobiles/tatooine/sand_beetle.py | 30 + scripts/mobiles/tatooine/sandreaver.py | 30 + scripts/mobiles/tatooine/savage_zucca_boar.py | 30 + scripts/mobiles/tatooine/scyk.py | 30 + scripts/mobiles/tatooine/sevorrt.py | 30 + scripts/mobiles/tatooine/sewer_worrt.py | 30 + scripts/mobiles/tatooine/sickly_womprat.py | 30 + scripts/mobiles/tatooine/slum_rat.py | 30 + scripts/mobiles/tatooine/snarlfang.py | 30 + scripts/mobiles/tatooine/squill.py | 30 + .../mobiles/tatooine/stormtrooper_dewback.py | 30 + .../mobiles/tatooine/sunstained_dunelizard.py | 30 + .../tatooine/swarming_lesser_dewback.py | 30 + scripts/mobiles/tatooine/tame_rill.py | 30 + scripts/mobiles/tatooine/tame_womprat.py | 30 + scripts/mobiles/tatooine/tame_worrt.py | 30 + scripts/mobiles/tatooine/tatooine_mynock.py | 30 + scripts/mobiles/tatooine/tempest_rill.py | 30 + scripts/mobiles/tatooine/tormented_bocatt.py | 30 + scripts/mobiles/tatooine/tusken_bantha.py | 30 + scripts/mobiles/tatooine/twisted_dewback.py | 30 + scripts/mobiles/tatooine/twisted_rill.py | 30 + scripts/mobiles/tatooine/twisted_womprat.py | 30 + .../mobiles/tatooine/variegated_womprat.py | 30 + scripts/mobiles/tatooine/vicious_rill.py | 30 + scripts/mobiles/tatooine/volatile_scyk.py | 30 + scripts/mobiles/tatooine/wasteland_cupa.py | 30 + .../mobiles/tatooine/wild_bladeback_boar.py | 30 + scripts/mobiles/tatooine/wild_dune_boar.py | 30 + scripts/mobiles/tatooine/wonderous_cupa.py | 30 + scripts/mobiles/tatooine/worrt.py | 30 + scripts/mobiles/tatooine/worrt_gutbuster.py | 30 + .../mobiles/tatooine/young_mountain_squill.py | 30 + scripts/mobiles/tatooine/zucca_boar.py | 30 + src/resources/buffs/Buff.java | 486 +++++++++++++++ src/resources/buffs/BuffItem.java | 74 +++ src/resources/buffs/DamageOverTime.java | 116 ++++ src/resources/common/BountyListItem.java | 106 ++++ src/resources/loot/LootDrop.java | 51 ++ src/resources/loot/LootGroup.java | 64 ++ src/resources/loot/LootPool.java | 33 + src/resources/loot/LootRollSession.java | 163 +++++ .../objectives/BountyMissionObjective.java | 80 +++ src/resources/skills/SkillMod.java | 109 ++++ 141 files changed, 5689 insertions(+) create mode 100644 odb/bounties/placeholder.txt create mode 100644 scripts/conversation/reb_recruiter.py create mode 100644 scripts/mobiles/canon/scout_trooper.py create mode 100644 scripts/mobiles/canon/swamp_trooper.py create mode 100644 scripts/mobiles/lairs/tatooine_rill_lair_neutral_small.py create mode 100644 scripts/mobiles/lairs/tatooine_worrt_lair_neutral_small.py create mode 100644 scripts/mobiles/tatooine/adolescent_krayt_dragon.py create mode 100644 scripts/mobiles/tatooine/armodragon.py create mode 100644 scripts/mobiles/tatooine/bantha_low.py create mode 100644 scripts/mobiles/tatooine/bantha_matriarch.py create mode 100644 scripts/mobiles/tatooine/blight_boar.py create mode 100644 scripts/mobiles/tatooine/bocatt.py create mode 100644 scripts/mobiles/tatooine/bonecracker_bantha.py create mode 100644 scripts/mobiles/tatooine/bull_bantha.py create mode 100644 scripts/mobiles/tatooine/bull_ronto.py create mode 100644 scripts/mobiles/tatooine/cannibal_dewback.py create mode 100644 scripts/mobiles/tatooine/canyon_krayt_dragon.py create mode 100644 scripts/mobiles/tatooine/carion_kreetle.py create mode 100644 scripts/mobiles/tatooine/cave_beetle.py create mode 100644 scripts/mobiles/tatooine/city_rockmite.py create mode 100644 scripts/mobiles/tatooine/city_sewer_swamprat.py create mode 100644 scripts/mobiles/tatooine/cupa.py create mode 100644 scripts/mobiles/tatooine/death_kreetle.py create mode 100644 scripts/mobiles/tatooine/desert_eopie.py create mode 100644 scripts/mobiles/tatooine/desert_kreetle.py create mode 100644 scripts/mobiles/tatooine/desert_razorback.py create mode 100644 scripts/mobiles/tatooine/desert_squill.py create mode 100644 scripts/mobiles/tatooine/dimu_bantha.py create mode 100644 scripts/mobiles/tatooine/diseased_bocatt.py create mode 100644 scripts/mobiles/tatooine/domestic_eopie.py create mode 100644 scripts/mobiles/tatooine/dragonet.py create mode 100644 scripts/mobiles/tatooine/drooling_nuna.py create mode 100644 scripts/mobiles/tatooine/dune_bantha.py create mode 100644 scripts/mobiles/tatooine/dune_beetle.py create mode 100644 scripts/mobiles/tatooine/dune_lizard.py create mode 100644 scripts/mobiles/tatooine/dwarf_bantha.py create mode 100644 scripts/mobiles/tatooine/dwarf_eopie.py create mode 100644 scripts/mobiles/tatooine/dwarf_nuna.py create mode 100644 scripts/mobiles/tatooine/elder_zucca_boar.py create mode 100644 scripts/mobiles/tatooine/elite_dewback_cannibal.py create mode 100644 scripts/mobiles/tatooine/elite_dragonet.py create mode 100644 scripts/mobiles/tatooine/elite_dune_lizard.py create mode 100644 scripts/mobiles/tatooine/elite_giant_sand_beetle.py create mode 100644 scripts/mobiles/tatooine/elite_mutant_womprat.py create mode 100644 scripts/mobiles/tatooine/elite_ronto.py create mode 100644 scripts/mobiles/tatooine/elite_scyk.py create mode 100644 scripts/mobiles/tatooine/elite_sevorrt.py create mode 100644 scripts/mobiles/tatooine/enraged_mountain_dewback.py create mode 100644 scripts/mobiles/tatooine/enraged_squill.py create mode 100644 scripts/mobiles/tatooine/eoni.py create mode 100644 scripts/mobiles/tatooine/eopie.py create mode 100644 scripts/mobiles/tatooine/eopie_herdmaster.py create mode 100644 scripts/mobiles/tatooine/female_mountain_squill.py create mode 100644 scripts/mobiles/tatooine/feral_bantha.py create mode 100644 scripts/mobiles/tatooine/furios_ronto.py create mode 100644 scripts/mobiles/tatooine/giant_canyon_krayt_dragon.py create mode 100644 scripts/mobiles/tatooine/giant_sand_beetle.py create mode 100644 scripts/mobiles/tatooine/giant_worrt.py create mode 100644 scripts/mobiles/tatooine/gorg.py create mode 100644 scripts/mobiles/tatooine/gorg_glutton.py create mode 100644 scripts/mobiles/tatooine/grand_krayt_dragon.py create mode 100644 scripts/mobiles/tatooine/great_squill.py create mode 100644 scripts/mobiles/tatooine/greater_desert_womprat.py create mode 100644 scripts/mobiles/tatooine/grizzled_dewback.py create mode 100644 scripts/mobiles/tatooine/harmony_worrt.py create mode 100644 scripts/mobiles/tatooine/jundland_eopie.py create mode 100644 scripts/mobiles/tatooine/juvenile_canyon_krayt_dragon.py create mode 100644 scripts/mobiles/tatooine/kreetle_swarmling.py create mode 100644 scripts/mobiles/tatooine/large_cave_beetle.py create mode 100644 scripts/mobiles/tatooine/large_rock_beetle1.py create mode 100644 scripts/mobiles/tatooine/large_rock_beetle2.py create mode 100644 scripts/mobiles/tatooine/large_rock_beetle3.py create mode 100644 scripts/mobiles/tatooine/large_sand_beetle.py create mode 100644 scripts/mobiles/tatooine/lesser_bocatt.py create mode 100644 scripts/mobiles/tatooine/lesser_desert_womprat.py create mode 100644 scripts/mobiles/tatooine/lesser_dewback.py create mode 100644 scripts/mobiles/tatooine/malignant_squill.py create mode 100644 scripts/mobiles/tatooine/minor_worrt.py create mode 100644 scripts/mobiles/tatooine/mound_mite.py create mode 100644 scripts/mobiles/tatooine/mountain_dewback.py create mode 100644 scripts/mobiles/tatooine/mountain_squill.py create mode 100644 scripts/mobiles/tatooine/mountain_squill_guardian.py create mode 100644 scripts/mobiles/tatooine/mountain_squill_hunter.py create mode 100644 scripts/mobiles/tatooine/mountain_worrt.py create mode 100644 scripts/mobiles/tatooine/mutant_womprat.py create mode 100644 scripts/mobiles/tatooine/overkreetle.py create mode 100644 scripts/mobiles/tatooine/parry_stormtrooper_dewback.py create mode 100644 scripts/mobiles/tatooine/plaque_rat.py create mode 100644 scripts/mobiles/tatooine/razorback_felspur.py create mode 100644 scripts/mobiles/tatooine/razorclaw.py create mode 100644 scripts/mobiles/tatooine/rill.py create mode 100644 scripts/mobiles/tatooine/rock_beetle.py create mode 100644 scripts/mobiles/tatooine/rock_beetle1.py create mode 100644 scripts/mobiles/tatooine/rock_beetle_cave.py create mode 100644 scripts/mobiles/tatooine/rockmite.py create mode 100644 scripts/mobiles/tatooine/ronto.py create mode 100644 scripts/mobiles/tatooine/runted_rill.py create mode 100644 scripts/mobiles/tatooine/sand_beetle.py create mode 100644 scripts/mobiles/tatooine/sandreaver.py create mode 100644 scripts/mobiles/tatooine/savage_zucca_boar.py create mode 100644 scripts/mobiles/tatooine/scyk.py create mode 100644 scripts/mobiles/tatooine/sevorrt.py create mode 100644 scripts/mobiles/tatooine/sewer_worrt.py create mode 100644 scripts/mobiles/tatooine/sickly_womprat.py create mode 100644 scripts/mobiles/tatooine/slum_rat.py create mode 100644 scripts/mobiles/tatooine/snarlfang.py create mode 100644 scripts/mobiles/tatooine/squill.py create mode 100644 scripts/mobiles/tatooine/stormtrooper_dewback.py create mode 100644 scripts/mobiles/tatooine/sunstained_dunelizard.py create mode 100644 scripts/mobiles/tatooine/swarming_lesser_dewback.py create mode 100644 scripts/mobiles/tatooine/tame_rill.py create mode 100644 scripts/mobiles/tatooine/tame_womprat.py create mode 100644 scripts/mobiles/tatooine/tame_worrt.py create mode 100644 scripts/mobiles/tatooine/tatooine_mynock.py create mode 100644 scripts/mobiles/tatooine/tempest_rill.py create mode 100644 scripts/mobiles/tatooine/tormented_bocatt.py create mode 100644 scripts/mobiles/tatooine/tusken_bantha.py create mode 100644 scripts/mobiles/tatooine/twisted_dewback.py create mode 100644 scripts/mobiles/tatooine/twisted_rill.py create mode 100644 scripts/mobiles/tatooine/twisted_womprat.py create mode 100644 scripts/mobiles/tatooine/variegated_womprat.py create mode 100644 scripts/mobiles/tatooine/vicious_rill.py create mode 100644 scripts/mobiles/tatooine/volatile_scyk.py create mode 100644 scripts/mobiles/tatooine/wasteland_cupa.py create mode 100644 scripts/mobiles/tatooine/wild_bladeback_boar.py create mode 100644 scripts/mobiles/tatooine/wild_dune_boar.py create mode 100644 scripts/mobiles/tatooine/wonderous_cupa.py create mode 100644 scripts/mobiles/tatooine/worrt.py create mode 100644 scripts/mobiles/tatooine/worrt_gutbuster.py create mode 100644 scripts/mobiles/tatooine/young_mountain_squill.py create mode 100644 scripts/mobiles/tatooine/zucca_boar.py create mode 100644 src/resources/buffs/Buff.java create mode 100644 src/resources/buffs/BuffItem.java create mode 100644 src/resources/buffs/DamageOverTime.java create mode 100644 src/resources/common/BountyListItem.java create mode 100644 src/resources/loot/LootDrop.java create mode 100644 src/resources/loot/LootGroup.java create mode 100644 src/resources/loot/LootPool.java create mode 100644 src/resources/loot/LootRollSession.java create mode 100644 src/resources/objectives/BountyMissionObjective.java create mode 100644 src/resources/skills/SkillMod.java diff --git a/odb/bounties/placeholder.txt b/odb/bounties/placeholder.txt new file mode 100644 index 00000000..e69de29b diff --git a/scripts/conversation/reb_recruiter.py b/scripts/conversation/reb_recruiter.py new file mode 100644 index 00000000..9c8b803d --- /dev/null +++ b/scripts/conversation/reb_recruiter.py @@ -0,0 +1,585 @@ +from resources.common import ConversationOption +from resources.common import OutOfBand +from resources.common import ProsePackage +from resources.common import RadialOptions +from resources.datatables import PvpStatus +from resources.datatables import FactionStatus + +from services.sui import SUIWindow +from services.sui.SUIWindow import Trigger + +from java.util import Vector +import sys + + +impRecruiterRef = 0 + + +def startConversation(core, actor, npc): + global coreRef + global impRecruiterRef + coreRef = core + impRecruiterRef = npc + convSvc = core.conversationService + faction = actor.getFaction() + factionStatus = actor.getFactionStatus() + + if actor.getPvpStatus(PvpStatus.GoingOvert) or actor.getPvpStatus(PvpStatus.GoingCovert): + core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_rebel', 's_364') + return + elif actor.getFaction() != 'rebel' and actor.getFaction() != 'imperial': + prose = ProsePackage('conversation/faction_recruiter_rebel', 's_334') + outOfBand = OutOfBand() + outOfBand.addProsePackage(prose) + convSvc.sendConversationMessage(actor, npc, outOfBand) + prose2 = ProsePackage('conversation/faction_recruiter_rebel', 's_348') + outOfBand2 = OutOfBand() + outOfBand2.addProsePackage(prose2) + prose3 = ProsePackage('conversation/faction_recruiter_rebel', 's_83') + outOfBand3 = OutOfBand() + outOfBand3.addProsePackage(prose3) + option1 = ConversationOption(outOfBand2, 0) + option2 = ConversationOption(outOfBand3, 1) + + + options = Vector() + options.add(option1) + options.add(option2) + + convSvc.sendConversationOptions(actor, npc, options, handleFirstScreen) + return + elif actor.getFaction() == 'rebel' and actor.getFactionStatus() == FactionStatus.OnLeave: + prose = ProsePackage('conversation/faction_recruiter_rebel', 's_216') + outOfBand = OutOfBand() + outOfBand.addProsePackage(prose) + convSvc.sendConversationMessage(actor, npc, outOfBand) + prose2 = ProsePackage('conversation/faction_recruiter_rebel', 's_49') + outOfBand2 = OutOfBand() + outOfBand2.addProsePackage(prose2) + prose3 = ProsePackage('conversation/faction_recruiter_rebel', 's_330') + outOfBand3 = OutOfBand() + outOfBand3.addProsePackage(prose3) + prose4 = ProsePackage('conversation/faction_recruiter_rebel', 's_248') + outOfBand4 = OutOfBand() + outOfBand4.addProsePackage(prose4) + option1 = ConversationOption(outOfBand2, 0) + option2 = ConversationOption(outOfBand3, 1) + option3 = ConversationOption(outOfBand4, 1) + + + options = Vector() + options.add(option1) + options.add(option2) + options.add(option3) + + convSvc.sendConversationOptions(actor, npc, options, handleFirstScreen) + return + elif actor.getFaction() == 'rebel' and actor.getFactionStatus() == FactionStatus.Combatant: + prose = ProsePackage('conversation/faction_recruiter_rebel', 's_216') + outOfBand = OutOfBand() + outOfBand.addProsePackage(prose) + convSvc.sendConversationMessage(actor, npc, outOfBand) + prose2 = ProsePackage('conversation/faction_recruiter_rebel', 's_49') + outOfBand2 = OutOfBand() + outOfBand2.addProsePackage(prose2) + prose4 = ProsePackage('conversation/faction_recruiter_rebel', 's_330') + outOfBand4 = OutOfBand() + outOfBand4.addProsePackage(prose4) + prose5 = ProsePackage('conversation/faction_recruiter_rebel', 's_248') + outOfBand5 = OutOfBand() + outOfBand5.addProsePackage(prose5) + option1 = ConversationOption(outOfBand2, 0) + option2 = ConversationOption(outOfBand4, 1) + option4 = ConversationOption(outOfBand5, 1) + + options = Vector() + options.add(option1) + options.add(option2) + options.add(option4) + convSvc.sendConversationOptions(actor, npc, options, handleFirstScreen) + + return + elif actor.getFactionStatus() == FactionStatus.SpecialForces: + prose = ProsePackage('conversation/faction_recruiter_rebel', 's_216') + outOfBand = OutOfBand() + outOfBand.addProsePackage(prose) + convSvc.sendConversationMessage(actor, npc, outOfBand) + prose2 = ProsePackage('conversation/faction_recruiter_rebel', 's_49') + outOfBand2 = OutOfBand() + outOfBand2.addProsePackage(prose2) + prose4 = ProsePackage('conversation/faction_recruiter_rebel', 's_330') + outOfBand4 = OutOfBand() + outOfBand4.addProsePackage(prose4) + prose5 = ProsePackage('conversation/faction_recruiter_rebel', 's_248') + outOfBand5 = OutOfBand() + outOfBand5.addProsePackage(prose5) + option1 = ConversationOption(outOfBand2, 0) + option2 = ConversationOption(outOfBand4, 1) + option4 = ConversationOption(outOfBand5, 1) + + options = Vector() + options.add(option1) + options.add(option2) + options.add(option4) + convSvc.sendConversationOptions(actor, npc, options, handleFirstScreen) + + return + elif actor.getFaction() == 'imperial': + npc.setCurrentAnimation('all_b_emt_backhand') + core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_rebel', 's_230') + return + return + +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_rebel', 's_352') + outOfBand = OutOfBand() + outOfBand.addProsePackage(prose) + convSvc.sendConversationMessage(actor, npc, outOfBand) + prose2 = ProsePackage('conversation/faction_recruiter_rebel', 's_354') + outOfBand2 = OutOfBand() + outOfBand2.addProsePackage(prose2) + prose3 = ProsePackage('conversation/faction_recruiter_rebel', 's_360') + outOfBand3 = OutOfBand() + outOfBand3.addProsePackage(prose3) + option1 = ConversationOption(outOfBand2, 0) + option2 = ConversationOption(outOfBand3, 1) + + + options = Vector() + options.add(option1) + options.add(option2) + + convSvc.sendConversationOptions(actor, npc, options, handleSecondScreen) + return + + + if selection == 1: + return + + if selection == 2: + core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_rebel', 's_362') + return + return + elif actor.getFaction() == 'rebel' and actor.getFactionStatus() == FactionStatus.OnLeave: + if selection == 0: + prose = ProsePackage('conversation/faction_recruiter_rebel', 's_50') + outOfBand = OutOfBand() + outOfBand.addProsePackage(prose) + convSvc.sendConversationMessage(actor, npc, outOfBand) + prose2 = ProsePackage('conversation/faction_recruiter_rebel', 's_95') + outOfBand2 = OutOfBand() + outOfBand2.addProsePackage(prose2) + prose3 = ProsePackage('conversation/faction_recruiter_rebel', 's_93') + outOfBand3 = OutOfBand() + outOfBand3.addProsePackage(prose3) + prose4 = ProsePackage('conversation/faction_recruiter_rebel', 's_74') + outOfBand4 = OutOfBand() + outOfBand4.addProsePackage(prose4) + prose5 = ProsePackage('conversation/faction_recruiter_rebel', 's_360') + outOfBand5 = OutOfBand() + outOfBand5.addProsePackage(prose5) + option1 = ConversationOption(outOfBand2, 0) + option2 = ConversationOption(outOfBand3, 1) + option3 = ConversationOption(outOfBand4, 1) + option4 = ConversationOption(outOfBand5, 1) + + + options = Vector() + options.add(option1) + options.add(option2) + options.add(option3) + options.add(option4) + + 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_332", percent, "TO", str(100 - percent))) + return + + if selection == 2: + return + return + elif actor.getFaction() == 'rebel' and actor.getFactionStatus() == FactionStatus.Combatant: + if selection == 0: + prose = ProsePackage('conversation/faction_recruiter_rebel', 's_50') + outOfBand = OutOfBand() + outOfBand.addProsePackage(prose) + convSvc.sendConversationMessage(actor, npc, outOfBand) + prose2 = ProsePackage('conversation/faction_recruiter_rebel', 's_86') + outOfBand2 = OutOfBand() + outOfBand2.addProsePackage(prose2) + prose3 = ProsePackage('conversation/faction_recruiter_rebel', 's_93') + outOfBand3 = OutOfBand() + outOfBand3.addProsePackage(prose3) + prose4 = ProsePackage('conversation/faction_recruiter_rebel', 's_74') + outOfBand4 = OutOfBand() + outOfBand4.addProsePackage(prose4) + prose5 = ProsePackage('conversation/faction_recruiter_rebel', 's_360') + outOfBand5 = OutOfBand() + outOfBand5.addProsePackage(prose5) + option1 = ConversationOption(outOfBand2, 0) + option2 = ConversationOption(outOfBand3, 1) + option3 = ConversationOption(outOfBand4, 1) + option4 = ConversationOption(outOfBand5, 1) + + + options = Vector() + options.add(option1) + options.add(option2) + options.add(option3) + options.add(option4) + + 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_rebel:s_332", percent, "TO", str(100 - percent))) + return + + if selection == 2: + prose = ProsePackage('conversation/faction_recruiter_rebel', 's_76') + outOfBand = OutOfBand() + outOfBand.addProsePackage(prose) + convSvc.sendConversationMessage(actor, npc, outOfBand) + prose2 = ProsePackage('conversation/faction_recruiter_rebel', 's_78') + outOfBand2 = OutOfBand() + outOfBand2.addProsePackage(prose2) + prose3 = ProsePackage('conversation/faction_recruiter_rebel', 's_360') + outOfBand3 = OutOfBand() + outOfBand3.addProsePackage(prose3) + option1 = ConversationOption(outOfBand2, 0) + option2 = ConversationOption(outOfBand3, 1) + + + options = Vector() + options.add(option1) + options.add(option2) + + convSvc.sendConversationOptions(actor, npc, options, handleSecondScreen) + return + return + elif actor.getFaction() == 'rebel' and actor.getFactionStatus() == FactionStatus.SpecialForces: + if selection == 0: + prose = ProsePackage('conversation/faction_recruiter_rebel', 's_50') + outOfBand = OutOfBand() + outOfBand.addProsePackage(prose) + convSvc.sendConversationMessage(actor, npc, outOfBand) + prose2 = ProsePackage('conversation/faction_recruiter_rebel', 's_90') + outOfBand2 = OutOfBand() + outOfBand2.addProsePackage(prose2) + prose3 = ProsePackage('conversation/faction_recruiter_rebel', 's_95') + outOfBand3 = OutOfBand() + outOfBand3.addProsePackage(prose3) + prose4 = ProsePackage('conversation/faction_recruiter_rebel', 's_78') + outOfBand4 = OutOfBand() + outOfBand4.addProsePackage(prose4) + prose5 = ProsePackage('conversation/faction_recruiter_rebel', 's_360') + outOfBand5 = OutOfBand() + outOfBand5.addProsePackage(prose5) + option1 = ConversationOption(outOfBand2, 0) + option2 = ConversationOption(outOfBand3, 1) + option3 = ConversationOption(outOfBand4, 1) + option4 = ConversationOption(outOfBand5, 1) + + + options = Vector() + options.add(option1) + options.add(option2) + options.add(option3) + options.add(option4) + + 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_rebel:s_332", percent, "TO", str(100 - percent))) + return + + if selection == 2: + + return + return + + +def handleSecondScreen(core, actor, npc, selection): + convSvc = core.conversationService + + + if actor.getFaction() != 'rebel' and actor.getFaction() != 'imperial': + if selection == 0: + actor.setFaction('imperial') + actor.setFactionStatus(FactionStatus.OnLeave) + + prose = ProsePackage('conversation/faction_recruiter_rebel', 's_99') + outOfBand = OutOfBand() + outOfBand.addProsePackage(prose) + convSvc.sendConversationMessage(actor, npc, outOfBand) + prose2 = ProsePackage('conversation/faction_recruiter_rebel', 's_358') + outOfBand2 = OutOfBand() + outOfBand2.addProsePackage(prose2) + option1 = ConversationOption(outOfBand2, 0) + + + options = Vector() + options.add(option1) + + + core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_rebel', 's_356') + return + if selection ==1: + core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_rebel', 's_362') + return + return + elif actor.getFaction() == 'rebel' and actor.getFactionStatus() == FactionStatus.OnLeave: + if selection == 0: + actor.setFactionStatus(FactionStatus.Combatant) + core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_rebel', 's_224') + return + + if selection == 1: + prose = ProsePackage('conversation/faction_recruiter_rebel', 's_64') + outOfBand = OutOfBand() + outOfBand.addProsePackage(prose) + convSvc.sendConversationMessage(actor, npc, outOfBand) + prose2 = ProsePackage('conversation/faction_recruiter_rebel', 's_66') + outOfBand2 = OutOfBand() + outOfBand2.addProsePackage(prose2) + prose3 = ProsePackage('conversation/faction_recruiter_rebel', 's_226') + outOfBand3 = OutOfBand() + outOfBand3.addProsePackage(prose3) + option1 = ConversationOption(outOfBand2, 0) + option2 = ConversationOption(outOfBand3, 1) + + + + options = Vector() + options.add(option1) + options.add(option2) + + + convSvc.sendConversationOptions(actor, npc, options, handleFourthScreen) + return + if selection == 2: + prose = ProsePackage('conversation/faction_recruiter_rebel', 's_76') + outOfBand = OutOfBand() + outOfBand.addProsePackage(prose) + convSvc.sendConversationMessage(actor, npc, outOfBand) + prose2 = ProsePackage('conversation/faction_recruiter_rebel', 's_78') + outOfBand2 = OutOfBand() + outOfBand2.addProsePackage(prose2) + prose3 = ProsePackage('conversation/faction_recruiter_rebel', 's_360') + outOfBand3 = OutOfBand() + outOfBand3.addProsePackage(prose3) + option1 = ConversationOption(outOfBand2, 0) + option2 = ConversationOption(outOfBand3, 1) + + + + options = Vector() + options.add(option1) + options.add(option2) + + + convSvc.sendConversationOptions(actor, npc, options, handleThirdScreen) + return + if selection == 3: + core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_rebel', 's_97') + return + return + elif actor.getFaction() == 'rebel' and actor.getFactionStatus() == FactionStatus.Combatant: + if selection == 0: + prose = ProsePackage('conversation/faction_recruiter_rebel', 's_88') + outOfBand = OutOfBand() + outOfBand.addProsePackage(prose) + convSvc.sendConversationMessage(actor, npc, outOfBand) + prose2 = ProsePackage('conversation/faction_recruiter_rebel', 's_90') + outOfBand2 = OutOfBand() + outOfBand2.addProsePackage(prose2) + prose3 = ProsePackage('conversation/faction_recruiter_rebel', 's_94') + outOfBand3 = OutOfBand() + outOfBand3.addProsePackage(prose3) + option1 = ConversationOption(outOfBand2, 0) + option2 = ConversationOption(outOfBand3, 1) + + + + options = Vector() + options.add(option1) + options.add(option2) + + + convSvc.sendConversationOptions(actor, npc, options, handleFithScreen) + return + + if selection == 1: + prose = ProsePackage('conversation/faction_recruiter_rebel', 's_64') + outOfBand = OutOfBand() + outOfBand.addProsePackage(prose) + convSvc.sendConversationMessage(actor, npc, outOfBand) + prose2 = ProsePackage('conversation/faction_recruiter_rebel', 's_66') + outOfBand2 = OutOfBand() + outOfBand2.addProsePackage(prose2) + prose3 = ProsePackage('conversation/faction_recruiter_rebel', 's_226') + outOfBand3 = OutOfBand() + outOfBand3.addProsePackage(prose3) + option1 = ConversationOption(outOfBand2, 0) + option2 = ConversationOption(outOfBand3, 1) + + + + options = Vector() + options.add(option1) + options.add(option2) + + + convSvc.sendConversationOptions(actor, npc, options, handleFourthScreen) + return + if selection == 2: + prose = ProsePackage('conversation/faction_recruiter_rebel', 's_76') + outOfBand = OutOfBand() + outOfBand.addProsePackage(prose) + convSvc.sendConversationMessage(actor, npc, outOfBand) + prose2 = ProsePackage('conversation/faction_recruiter_rebel', 's_78') + outOfBand2 = OutOfBand() + outOfBand2.addProsePackage(prose2) + prose3 = ProsePackage('conversation/faction_recruiter_rebel', 's_360') + outOfBand3 = OutOfBand() + outOfBand3.addProsePackage(prose3) + option1 = ConversationOption(outOfBand2, 0) + option2 = ConversationOption(outOfBand3, 1) + + + + options = Vector() + options.add(option1) + options.add(option2) + + + convSvc.sendConversationOptions(actor, npc, options, handleThirdScreen) + return + if selection == 3: + return + return + elif actor.getFaction() == 'rebel' and actor.getFactionStatus() == FactionStatus.SpecialForces: + if selection == 0: + prose = ProsePackage('conversation/faction_recruiter_rebel', 's_88') + outOfBand = OutOfBand() + outOfBand.addProsePackage(prose) + convSvc.sendConversationMessage(actor, npc, outOfBand) + prose2 = ProsePackage('conversation/faction_recruiter_rebel', 's_90') + outOfBand2 = OutOfBand() + outOfBand2.addProsePackage(prose2) + prose3 = ProsePackage('conversation/faction_recruiter_rebel', 's_94') + outOfBand3 = OutOfBand() + outOfBand3.addProsePackage(prose3) + option1 = ConversationOption(outOfBand2, 0) + option2 = ConversationOption(outOfBand3, 1) + + + + options = Vector() + options.add(option1) + options.add(option2) + + + convSvc.sendConversationOptions(actor, npc, options, handleFithScreen) + return + + if selection == 1: + prose = ProsePackage('conversation/faction_recruiter_rebel', 's_54') + outOfBand = OutOfBand() + outOfBand.addProsePackage(prose) + convSvc.sendConversationMessage(actor, npc, outOfBand) + prose2 = ProsePackage('conversation/faction_recruiter_rebel', 's_56') + outOfBand2 = OutOfBand() + outOfBand2.addProsePackage(prose2) + prose3 = ProsePackage('conversation/faction_recruiter_rebel', 's_360') + outOfBand3 = OutOfBand() + outOfBand3.addProsePackage(prose3) + option1 = ConversationOption(outOfBand2, 0) + option2 = ConversationOption(outOfBand3, 1) + + + + options = Vector() + options.add(option1) + options.add(option2) + + + convSvc.sendConversationOptions(actor, npc, options, handleSixthScreen) + return + if selection == 2: + prose = ProsePackage('conversation/faction_recruiter_rebel', 's_76') + outOfBand = OutOfBand() + outOfBand.addProsePackage(prose) + convSvc.sendConversationMessage(actor, npc, outOfBand) + prose2 = ProsePackage('conversation/faction_recruiter_rebel', 's_74') + outOfBand2 = OutOfBand() + outOfBand2.addProsePackage(prose2) + prose3 = ProsePackage('conversation/faction_recruiter_rebel', 's_360') + outOfBand3 = OutOfBand() + outOfBand3.addProsePackage(prose3) + option1 = ConversationOption(outOfBand2, 0) + option2 = ConversationOption(outOfBand3, 1) + + + + options = Vector() + options.add(option1) + options.add(option2) + + + convSvc.sendConversationOptions(actor, npc, options, handleThirdScreen) + return + if selection == 3: + return + return + +def handleThirdScreen(core, actor, npc, selection): + if selection == 0: + core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_rebel', 's_58') + actor.setFaction('neutral') + return + + if selection == 1: + core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_rebel', 's_80') + return + return + +def handleFourthScreen(core, actor, npc, selection): + if selection == 0: + actor.setFactionStatus(FactionStatus.SpecialForces) + core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_rebel', 's_224') + return + if selection == 1: + core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_rebel', 's_72') + return + return + +def handleFithScreen(core, actor, npc, selection): + if selection == 0: + actor.setFactionStatus(FactionStatus.OnLeave); + core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_rebel', 's_58') + return + +def handleSixthScreen(core, actor, npc, selection): + if selection == 0: + actor.setFactionStatus(FactionStatus.Combatant) + core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_rebel', 's_92') + return + if selection == 1: + core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_rebel', 's_57') + return + return + +def endConversation(core, actor, npc): + core.conversationService.sendStopConversation(actor, npc, 'conversation/faction_recruiter_imperial', 's_304') + return \ No newline at end of file diff --git a/scripts/mobiles/canon/scout_trooper.py b/scripts/mobiles/canon/scout_trooper.py new file mode 100644 index 00000000..2b446944 --- /dev/null +++ b/scripts/mobiles/canon/scout_trooper.py @@ -0,0 +1,31 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('scout_trooper') + mobileTemplate.setLevel(90) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(0.4) + mobileTemplate.setWeaponType(1) + + templates = Vector() + templates.add('object/mobile/shared_dressed_scout_trooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_scout_blaster.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('scout_trooper', mobileTemplate) + diff --git a/scripts/mobiles/canon/swamp_trooper.py b/scripts/mobiles/canon/swamp_trooper.py new file mode 100644 index 00000000..4ade7e9a --- /dev/null +++ b/scripts/mobiles/canon/swamp_trooper.py @@ -0,0 +1,31 @@ +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_trooper') + mobileTemplate.setLevel(33) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(24) + mobileTemplate.setAttackSpeed(0.4) + mobileTemplate.setWeaponType(0) + + templates = Vector() + templates.add('object/mobile/shared_dressed_swamp_trooper_m.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/pistol/shared_pistol_scout_blaster.iff', 0, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + + attacks = Vector() + mobileTemplate.setDefaultAttack('rangedShot') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('swamp_trooper', mobileTemplate) + diff --git a/scripts/mobiles/lairs/tatooine_rill_lair_neutral_small.py b/scripts/mobiles/lairs/tatooine_rill_lair_neutral_small.py new file mode 100644 index 00000000..5eed8400 --- /dev/null +++ b/scripts/mobiles/lairs/tatooine_rill_lair_neutral_small.py @@ -0,0 +1,5 @@ +import sys + +def addTemplate(core): + core.spawnService.addLairTemplate('tatooine_rill_lair_neutral_small', 'rill', 15, 'object/tangible/lair/base/shared_poi_all_lair_brambles_small.iff') + return \ No newline at end of file diff --git a/scripts/mobiles/lairs/tatooine_worrt_lair_neutral_small.py b/scripts/mobiles/lairs/tatooine_worrt_lair_neutral_small.py new file mode 100644 index 00000000..87905581 --- /dev/null +++ b/scripts/mobiles/lairs/tatooine_worrt_lair_neutral_small.py @@ -0,0 +1,5 @@ +import sys + +def addTemplate(core): + core.spawnService.addLairTemplate('tatooine_worrt_lair_neutral_small', 'worrt', 15, 'object/tangible/lair/base/shared_poi_all_lair_brambles_small.iff') + 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 new file mode 100644 index 00000000..c1c3fb85 --- /dev/null +++ b/scripts/mobiles/tatooine/adolescent_krayt_dragon.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('krayt_dragon_adolescent') + mobileTemplate.setLevel(84) + mobileTemplate.setDifficulty(2) + mobileTemplate.setAttackRange(12) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_krayt_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('adolescent_krayt_dragon', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/armodragon.py b/scripts/mobiles/tatooine/armodragon.py new file mode 100644 index 00000000..494e4228 --- /dev/null +++ b/scripts/mobiles/tatooine/armodragon.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dragonet_armodragon') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_dragonet.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = 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('armodragon', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/bantha_low.py b/scripts/mobiles/tatooine/bantha_low.py new file mode 100644 index 00000000..0238608e --- /dev/null +++ b/scripts/mobiles/tatooine/bantha_low.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bantha') + mobileTemplate.setLevel(8) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('bantha_low', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/bantha_matriarch.py b/scripts/mobiles/tatooine/bantha_matriarch.py new file mode 100644 index 00000000..a0b5b7c5 --- /dev/null +++ b/scripts/mobiles/tatooine/bantha_matriarch.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bantha matriarch') + mobileTemplate.setLevel(15) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_matriarch_bantha.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bantha_matriarch', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/blight_boar.py b/scripts/mobiles/tatooine/blight_boar.py new file mode 100644 index 00000000..b25a7441 --- /dev/null +++ b/scripts/mobiles/tatooine/blight_boar.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('zucca_boar_blight') + mobileTemplate.setLevel(9) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_zucca_boar.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('blight_boar', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/bocatt.py b/scripts/mobiles/tatooine/bocatt.py new file mode 100644 index 00000000..3cbf9cc1 --- /dev/null +++ b/scripts/mobiles/tatooine/bocatt.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bocatt') + mobileTemplate.setLevel(17) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_bocatt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/creature/shared_creature_spit_small_toxicgreen.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bocatt', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/bonecracker_bantha.py b/scripts/mobiles/tatooine/bonecracker_bantha.py new file mode 100644 index 00000000..42341f23 --- /dev/null +++ b/scripts/mobiles/tatooine/bonecracker_bantha.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bantha_bonecracker') + mobileTemplate.setLevel(21) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('bonecracker_bantha', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/bull_bantha.py b/scripts/mobiles/tatooine/bull_bantha.py new file mode 100644 index 00000000..c4626e21 --- /dev/null +++ b/scripts/mobiles/tatooine/bull_bantha.py @@ -0,0 +1,30 @@ +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_bantha') + mobileTemplate.setLevel(15) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('bull_bantha', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/bull_ronto.py b/scripts/mobiles/tatooine/bull_ronto.py new file mode 100644 index 00000000..d75ca648 --- /dev/null +++ b/scripts/mobiles/tatooine/bull_ronto.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('ronto_male') + mobileTemplate.setLevel(18) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_ronto.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('bullronto', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/cannibal_dewback.py b/scripts/mobiles/tatooine/cannibal_dewback.py new file mode 100644 index 00000000..941c0ebf --- /dev/null +++ b/scripts/mobiles/tatooine/cannibal_dewback.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dewback_cannibal') + mobileTemplate.setLevel(13) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('cannibal_dewback', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/canyon_krayt_dragon.py b/scripts/mobiles/tatooine/canyon_krayt_dragon.py new file mode 100644 index 00000000..7eb53cc6 --- /dev/null +++ b/scripts/mobiles/tatooine/canyon_krayt_dragon.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('canyon_krayt_dragon') + mobileTemplate.setLevel(85) + mobileTemplate.setDifficulty(2) + mobileTemplate.setAttackRange(12) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_canyon_krayt_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('canyon_krayt_dragon', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/carion_kreetle.py b/scripts/mobiles/tatooine/carion_kreetle.py new file mode 100644 index 00000000..f1a1bf01 --- /dev/null +++ b/scripts/mobiles/tatooine/carion_kreetle.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('fragile_kreetle') + mobileTemplate.setLevel(2) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_kreetle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/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_kreetle', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/cave_beetle.py b/scripts/mobiles/tatooine/cave_beetle.py new file mode 100644 index 00000000..2a98b7bc --- /dev/null +++ b/scripts/mobiles/tatooine/cave_beetle.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('cave_beetle') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_rock_beetle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/creature/shared_creature_spit_small_toxicgreen.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('cave_beetle', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/city_rockmite.py b/scripts/mobiles/tatooine/city_rockmite.py new file mode 100644 index 00000000..b31914f3 --- /dev/null +++ b/scripts/mobiles/tatooine/city_rockmite.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('city_rockmite') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_rock_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('city_rockmite', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/city_sewer_swamprat.py b/scripts/mobiles/tatooine/city_sewer_swamprat.py new file mode 100644 index 00000000..ecb72a17 --- /dev/null +++ b/scripts/mobiles/tatooine/city_sewer_swamprat.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('city_sewer_swamprat') + mobileTemplate.setLevel(3) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('city_sewer_swamprat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/cupa.py b/scripts/mobiles/tatooine/cupa.py new file mode 100644 index 00000000..b44cff3a --- /dev/null +++ b/scripts/mobiles/tatooine/cupa.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('cu_pa') + mobileTemplate.setLevel(3) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_cu_pa.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('cu_pa', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/death_kreetle.py b/scripts/mobiles/tatooine/death_kreetle.py new file mode 100644 index 00000000..5e39d8ae --- /dev/null +++ b/scripts/mobiles/tatooine/death_kreetle.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kreetle_death') + mobileTemplate.setLevel(7) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_kreetle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('death_kreetle', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/desert_eopie.py b/scripts/mobiles/tatooine/desert_eopie.py new file mode 100644 index 00000000..be18b6bb --- /dev/null +++ b/scripts/mobiles/tatooine/desert_eopie.py @@ -0,0 +1,30 @@ +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_eopie') + mobileTemplate.setLevel(16) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_eopie.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/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_eopie', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/desert_kreetle.py b/scripts/mobiles/tatooine/desert_kreetle.py new file mode 100644 index 00000000..bddbbf1a --- /dev/null +++ b/scripts/mobiles/tatooine/desert_kreetle.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('orphan_kreetle') + mobileTemplate.setLevel(3) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_kreetle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/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_kreetle', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/desert_razorback.py b/scripts/mobiles/tatooine/desert_razorback.py new file mode 100644 index 00000000..6e07cd81 --- /dev/null +++ b/scripts/mobiles/tatooine/desert_razorback.py @@ -0,0 +1,30 @@ +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_razorback') + mobileTemplate.setLevel(23) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_zucca_boar.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/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_razorback', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/desert_squill.py b/scripts/mobiles/tatooine/desert_squill.py new file mode 100644 index 00000000..2ab4b5ca --- /dev/null +++ b/scripts/mobiles/tatooine/desert_squill.py @@ -0,0 +1,30 @@ +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_squill') + mobileTemplate.setLevel(14) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('desert_squill', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/dimu_bantha.py b/scripts/mobiles/tatooine/dimu_bantha.py new file mode 100644 index 00000000..5280c721 --- /dev/null +++ b/scripts/mobiles/tatooine/dimu_bantha.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dim_u_bantha') + mobileTemplate.setLevel(3) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('dim-u_bantha', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/diseased_bocatt.py b/scripts/mobiles/tatooine/diseased_bocatt.py new file mode 100644 index 00000000..96bb977e --- /dev/null +++ b/scripts/mobiles/tatooine/diseased_bocatt.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bocatt_diseased') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_bocatt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/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_bocatt', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/domestic_eopie.py b/scripts/mobiles/tatooine/domestic_eopie.py new file mode 100644 index 00000000..33e8077b --- /dev/null +++ b/scripts/mobiles/tatooine/domestic_eopie.py @@ -0,0 +1,30 @@ +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_eopie') + mobileTemplate.setLevel(1) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_eopie.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/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_eopie', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/dragonet.py b/scripts/mobiles/tatooine/dragonet.py new file mode 100644 index 00000000..5d8cb006 --- /dev/null +++ b/scripts/mobiles/tatooine/dragonet.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dragonet') + mobileTemplate.setLevel(24) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_dune_lizard.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/creature/shared_creature_spit_small_toxicgreen.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('dragonet', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/drooling_nuna.py b/scripts/mobiles/tatooine/drooling_nuna.py new file mode 100644 index 00000000..b729515c --- /dev/null +++ b/scripts/mobiles/tatooine/drooling_nuna.py @@ -0,0 +1,30 @@ +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_nuna_drooling') + mobileTemplate.setLevel(2) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('drooling_nuna', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/dune_bantha.py b/scripts/mobiles/tatooine/dune_bantha.py new file mode 100644 index 00000000..cb29c496 --- /dev/null +++ b/scripts/mobiles/tatooine/dune_bantha.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dune_bantha') + mobileTemplate.setLevel(20) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('dune_bantha', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/dune_beetle.py b/scripts/mobiles/tatooine/dune_beetle.py new file mode 100644 index 00000000..9cc34df7 --- /dev/null +++ b/scripts/mobiles/tatooine/dune_beetle.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dune_beetle') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_giant_sand_beetle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('dune_beetle', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/dune_lizard.py b/scripts/mobiles/tatooine/dune_lizard.py new file mode 100644 index 00000000..ec826be0 --- /dev/null +++ b/scripts/mobiles/tatooine/dune_lizard.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dune_lizard') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_dune_lizard.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/creature/shared_creature_spit_small_toxicgreen.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('dune_lizard', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/dwarf_bantha.py b/scripts/mobiles/tatooine/dwarf_bantha.py new file mode 100644 index 00000000..6c8449ca --- /dev/null +++ b/scripts/mobiles/tatooine/dwarf_bantha.py @@ -0,0 +1,30 @@ +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_bantha') + mobileTemplate.setLevel(10) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_dwarf_bantha.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/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_bantha', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/dwarf_eopie.py b/scripts/mobiles/tatooine/dwarf_eopie.py new file mode 100644 index 00000000..cb9a80cc --- /dev/null +++ b/scripts/mobiles/tatooine/dwarf_eopie.py @@ -0,0 +1,30 @@ +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_eopie') + mobileTemplate.setLevel(1) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_dwarf_eopie.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/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_eopie', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/dwarf_nuna.py b/scripts/mobiles/tatooine/dwarf_nuna.py new file mode 100644 index 00000000..423fb7d9 --- /dev/null +++ b/scripts/mobiles/tatooine/dwarf_nuna.py @@ -0,0 +1,30 @@ +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_nuna') + mobileTemplate.setLevel(1) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_dwarf_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('dwarf_nuna', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/elder_zucca_boar.py b/scripts/mobiles/tatooine/elder_zucca_boar.py new file mode 100644 index 00000000..11e040e2 --- /dev/null +++ b/scripts/mobiles/tatooine/elder_zucca_boar.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('zucca_boar_elder') + mobileTemplate.setLevel(8) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_zucca_boar.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/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_zucca_boar', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/elite_dewback_cannibal.py b/scripts/mobiles/tatooine/elite_dewback_cannibal.py new file mode 100644 index 00000000..910ba869 --- /dev/null +++ b/scripts/mobiles/tatooine/elite_dewback_cannibal.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('elite_dewback_canibal') + mobileTemplate.setLevel(13) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('elite_dewback_cannibal', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/elite_dragonet.py b/scripts/mobiles/tatooine/elite_dragonet.py new file mode 100644 index 00000000..481b2d64 --- /dev/null +++ b/scripts/mobiles/tatooine/elite_dragonet.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('elite_dragonet') + mobileTemplate.setLevel(24) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_dragonet.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/creature/shared_creature_spit_large_toxicgreen.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_dragonet', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/elite_dune_lizard.py b/scripts/mobiles/tatooine/elite_dune_lizard.py new file mode 100644 index 00000000..a0adf4e8 --- /dev/null +++ b/scripts/mobiles/tatooine/elite_dune_lizard.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('elite_dune_lizard') + mobileTemplate.setLevel(18) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_dune_lizard.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/creature/shared_creature_spit_large_toxicgreen.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_dune_lizard', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/elite_giant_sand_beetle.py b/scripts/mobiles/tatooine/elite_giant_sand_beetle.py new file mode 100644 index 00000000..c21a083c --- /dev/null +++ b/scripts/mobiles/tatooine/elite_giant_sand_beetle.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('elite_giant_sand_beetle') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_giant_sand_beetle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_giant_sand_beetle', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/elite_mutant_womprat.py b/scripts/mobiles/tatooine/elite_mutant_womprat.py new file mode 100644 index 00000000..de786778 --- /dev/null +++ b/scripts/mobiles/tatooine/elite_mutant_womprat.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('elite_mutant_womprat') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('womprat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/elite_ronto.py b/scripts/mobiles/tatooine/elite_ronto.py new file mode 100644 index 00000000..a5d22cef --- /dev/null +++ b/scripts/mobiles/tatooine/elite_ronto.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('elite_ronto_ronto') + mobileTemplate.setLevel(17) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_ronto.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_ronto', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/elite_scyk.py b/scripts/mobiles/tatooine/elite_scyk.py new file mode 100644 index 00000000..54ad052c --- /dev/null +++ b/scripts/mobiles/tatooine/elite_scyk.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('elite_scyk') + mobileTemplate.setLevel(11) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_scyk.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_scyk', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/elite_sevorrt.py b/scripts/mobiles/tatooine/elite_sevorrt.py new file mode 100644 index 00000000..190a9e26 --- /dev/null +++ b/scripts/mobiles/tatooine/elite_sevorrt.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('elite_sevorrt') + mobileTemplate.setLevel(8) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_sevorrt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('elite_sevorrt', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/enraged_mountain_dewback.py b/scripts/mobiles/tatooine/enraged_mountain_dewback.py new file mode 100644 index 00000000..dfebff92 --- /dev/null +++ b/scripts/mobiles/tatooine/enraged_mountain_dewback.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('elite_mountain_dewback') + mobileTemplate.setLevel(22) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('enraged_mountain_dewback', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/enraged_squill.py b/scripts/mobiles/tatooine/enraged_squill.py new file mode 100644 index 00000000..3fd86349 --- /dev/null +++ b/scripts/mobiles/tatooine/enraged_squill.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('elite_squill') + mobileTemplate.setLevel(12) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('enraged_squill', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/eoni.py b/scripts/mobiles/tatooine/eoni.py new file mode 100644 index 00000000..0dd12e09 --- /dev/null +++ b/scripts/mobiles/tatooine/eoni.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('elite_jundland_eopie') + mobileTemplate.setLevel(21) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_eopie.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('eoni', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/eopie.py b/scripts/mobiles/tatooine/eopie.py new file mode 100644 index 00000000..8e1f5ae7 --- /dev/null +++ b/scripts/mobiles/tatooine/eopie.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('eopie') + mobileTemplate.setLevel(4) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_eopie.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('eopie', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/eopie_herdmaster.py b/scripts/mobiles/tatooine/eopie_herdmaster.py new file mode 100644 index 00000000..f8abe532 --- /dev/null +++ b/scripts/mobiles/tatooine/eopie_herdmaster.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('eopie_herdmaster') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_eopie.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('eopie_herdmaster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/female_mountain_squill.py b/scripts/mobiles/tatooine/female_mountain_squill.py new file mode 100644 index 00000000..e2da21e4 --- /dev/null +++ b/scripts/mobiles/tatooine/female_mountain_squill.py @@ -0,0 +1,30 @@ +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_mountain_squill') + mobileTemplate.setLevel(17) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('female_mountain_squill', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/feral_bantha.py b/scripts/mobiles/tatooine/feral_bantha.py new file mode 100644 index 00000000..fcbbbebc --- /dev/null +++ b/scripts/mobiles/tatooine/feral_bantha.py @@ -0,0 +1,30 @@ +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_bantha') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(15) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('feral_bantha', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/furios_ronto.py b/scripts/mobiles/tatooine/furios_ronto.py new file mode 100644 index 00000000..c8c4fe74 --- /dev/null +++ b/scripts/mobiles/tatooine/furios_ronto.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('ronto_furious') + mobileTemplate.setLevel(18) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_ronto.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('furious_ronto', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/giant_canyon_krayt_dragon.py b/scripts/mobiles/tatooine/giant_canyon_krayt_dragon.py new file mode 100644 index 00000000..2d86f3cd --- /dev/null +++ b/scripts/mobiles/tatooine/giant_canyon_krayt_dragon.py @@ -0,0 +1,30 @@ +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_canyon_krayt_dragon') + mobileTemplate.setLevel(87) + mobileTemplate.setDifficulty(2) + mobileTemplate.setAttackRange(12) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_krayt_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('giant_canyon_krayt_dragon', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/giant_sand_beetle.py b/scripts/mobiles/tatooine/giant_sand_beetle.py new file mode 100644 index 00000000..2f9138d5 --- /dev/null +++ b/scripts/mobiles/tatooine/giant_sand_beetle.py @@ -0,0 +1,30 @@ +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_sand_beetle') + mobileTemplate.setLevel(25) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_giant_sand_beetle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/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_sand_beetle', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/giant_worrt.py b/scripts/mobiles/tatooine/giant_worrt.py new file mode 100644 index 00000000..27edbbed --- /dev/null +++ b/scripts/mobiles/tatooine/giant_worrt.py @@ -0,0 +1,30 @@ +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_worrt') + mobileTemplate.setLevel(13) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_giant_worrt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/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_worrt', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/gorg.py b/scripts/mobiles/tatooine/gorg.py new file mode 100644 index 00000000..731c5d4a --- /dev/null +++ b/scripts/mobiles/tatooine/gorg.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gorg') + mobileTemplate.setLevel(2) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_gorg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gorg', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/gorg_glutton.py b/scripts/mobiles/tatooine/gorg_glutton.py new file mode 100644 index 00000000..7eaddd81 --- /dev/null +++ b/scripts/mobiles/tatooine/gorg_glutton.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('gorg_glutton') + mobileTemplate.setLevel(2) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_gorg.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('gorg_glutton', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/grand_krayt_dragon.py b/scripts/mobiles/tatooine/grand_krayt_dragon.py new file mode 100644 index 00000000..d149306b --- /dev/null +++ b/scripts/mobiles/tatooine/grand_krayt_dragon.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('krayt_dragon_grand') + mobileTemplate.setLevel(88) + mobileTemplate.setDifficulty(2) + mobileTemplate.setAttackRange(12) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_krayt_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('grand_krayt_dragon', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/great_squill.py b/scripts/mobiles/tatooine/great_squill.py new file mode 100644 index 00000000..ec27d549 --- /dev/null +++ b/scripts/mobiles/tatooine/great_squill.py @@ -0,0 +1,30 @@ +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_great') + mobileTemplate.setLevel(13) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('great_squill', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/greater_desert_womprat.py b/scripts/mobiles/tatooine/greater_desert_womprat.py new file mode 100644 index 00000000..cbf1c39a --- /dev/null +++ b/scripts/mobiles/tatooine/greater_desert_womprat.py @@ -0,0 +1,30 @@ +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_desert_womprat') + mobileTemplate.setLevel(12) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_greater_desert_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('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('greater_desert_womprat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/grizzled_dewback.py b/scripts/mobiles/tatooine/grizzled_dewback.py new file mode 100644 index 00000000..416f9a58 --- /dev/null +++ b/scripts/mobiles/tatooine/grizzled_dewback.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('grizzled_dewback') + mobileTemplate.setLevel(18) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('grizzled_dewback', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/harmony_worrt.py b/scripts/mobiles/tatooine/harmony_worrt.py new file mode 100644 index 00000000..07f24218 --- /dev/null +++ b/scripts/mobiles/tatooine/harmony_worrt.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('harmony_worrt') + mobileTemplate.setLevel(18) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_worrt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('harmony_worrt', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/jundland_eopie.py b/scripts/mobiles/tatooine/jundland_eopie.py new file mode 100644 index 00000000..ee6cf43c --- /dev/null +++ b/scripts/mobiles/tatooine/jundland_eopie.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('jundland_eopie') + mobileTemplate.setLevel(21) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_eopie.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('jundland_eopie', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/juvenile_canyon_krayt_dragon.py b/scripts/mobiles/tatooine/juvenile_canyon_krayt_dragon.py new file mode 100644 index 00000000..d06ec11d --- /dev/null +++ b/scripts/mobiles/tatooine/juvenile_canyon_krayt_dragon.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('juvenile_canyon_krayt') + mobileTemplate.setLevel(82) + mobileTemplate.setDifficulty(2) + mobileTemplate.setAttackRange(12) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_juvenile_canyon_krayt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('juvenile_canyon_krayt_dragon', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/kreetle_swarmling.py b/scripts/mobiles/tatooine/kreetle_swarmling.py new file mode 100644 index 00000000..9f998e07 --- /dev/null +++ b/scripts/mobiles/tatooine/kreetle_swarmling.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kreetle_swarming') + mobileTemplate.setLevel(1) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_kreetle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('kreetle_swarmling', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/large_cave_beetle.py b/scripts/mobiles/tatooine/large_cave_beetle.py new file mode 100644 index 00000000..ccfc9a8d --- /dev/null +++ b/scripts/mobiles/tatooine/large_cave_beetle.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('large_cave_beetle') + mobileTemplate.setLevel(21) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_rock_beetle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/creature/shared_creature_spit_small_toxicgreen.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('large_cave_beetle', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/large_rock_beetle1.py b/scripts/mobiles/tatooine/large_rock_beetle1.py new file mode 100644 index 00000000..39078fb6 --- /dev/null +++ b/scripts/mobiles/tatooine/large_rock_beetle1.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('large_rock_beetle') + mobileTemplate.setLevel(18) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_rock_beetle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/creature/shared_creature_spit_small_toxicgreen.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('large_rock_beetle_1', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/large_rock_beetle2.py b/scripts/mobiles/tatooine/large_rock_beetle2.py new file mode 100644 index 00000000..dfadc654 --- /dev/null +++ b/scripts/mobiles/tatooine/large_rock_beetle2.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('large_rock_beetle') + mobileTemplate.setLevel(19) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_rock_beetle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('large_rock_beetle_2', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/large_rock_beetle3.py b/scripts/mobiles/tatooine/large_rock_beetle3.py new file mode 100644 index 00000000..1cca8d4e --- /dev/null +++ b/scripts/mobiles/tatooine/large_rock_beetle3.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('large_rock_beetle') + mobileTemplate.setLevel(19) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_rock_beetle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('large_rock_beetle_3', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/large_sand_beetle.py b/scripts/mobiles/tatooine/large_sand_beetle.py new file mode 100644 index 00000000..2bfc2cb9 --- /dev/null +++ b/scripts/mobiles/tatooine/large_sand_beetle.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('large_sand_beetle') + mobileTemplate.setLevel(24) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_giant_sand_beetle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('large_sand_beetle', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/lesser_bocatt.py b/scripts/mobiles/tatooine/lesser_bocatt.py new file mode 100644 index 00000000..d768a79b --- /dev/null +++ b/scripts/mobiles/tatooine/lesser_bocatt.py @@ -0,0 +1,30 @@ +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_bocatt') + mobileTemplate.setLevel(14) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_bocatt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/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_bocatt', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/lesser_desert_womprat.py b/scripts/mobiles/tatooine/lesser_desert_womprat.py new file mode 100644 index 00000000..66ff6a9f --- /dev/null +++ b/scripts/mobiles/tatooine/lesser_desert_womprat.py @@ -0,0 +1,30 @@ +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_desert_womprat') + mobileTemplate.setLevel(4) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_lesser_desert_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('lesser_deser_womprat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/lesser_dewback.py b/scripts/mobiles/tatooine/lesser_dewback.py new file mode 100644 index 00000000..d6a49360 --- /dev/null +++ b/scripts/mobiles/tatooine/lesser_dewback.py @@ -0,0 +1,30 @@ +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_dewback') + mobileTemplate.setLevel(4) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('lesser_dewback', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/malignant_squill.py b/scripts/mobiles/tatooine/malignant_squill.py new file mode 100644 index 00000000..2b96c627 --- /dev/null +++ b/scripts/mobiles/tatooine/malignant_squill.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('malignant_squill') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('malignant_squill', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/minor_worrt.py b/scripts/mobiles/tatooine/minor_worrt.py new file mode 100644 index 00000000..5ffa7afe --- /dev/null +++ b/scripts/mobiles/tatooine/minor_worrt.py @@ -0,0 +1,30 @@ +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_worrt') + mobileTemplate.setLevel(3) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_minor_worrt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/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_worrt', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/mound_mite.py b/scripts/mobiles/tatooine/mound_mite.py new file mode 100644 index 00000000..c62a5715 --- /dev/null +++ b/scripts/mobiles/tatooine/mound_mite.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mound_mite') + mobileTemplate.setLevel(4) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_mound_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('mound_mite', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/mountain_dewback.py b/scripts/mobiles/tatooine/mountain_dewback.py new file mode 100644 index 00000000..6b73306f --- /dev/null +++ b/scripts/mobiles/tatooine/mountain_dewback.py @@ -0,0 +1,30 @@ +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_dewback') + mobileTemplate.setLevel(22) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_mountain_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('mountain_dewback', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/mountain_squill.py b/scripts/mobiles/tatooine/mountain_squill.py new file mode 100644 index 00000000..052d4e62 --- /dev/null +++ b/scripts/mobiles/tatooine/mountain_squill.py @@ -0,0 +1,30 @@ +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_squill') + mobileTemplate.setLevel(18) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_mountain_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('mountain_squill', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/mountain_squill_guardian.py b/scripts/mobiles/tatooine/mountain_squill_guardian.py new file mode 100644 index 00000000..5b402840 --- /dev/null +++ b/scripts/mobiles/tatooine/mountain_squill_guardian.py @@ -0,0 +1,30 @@ +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_squill_guardian') + mobileTemplate.setLevel(19) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_mountain_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('mountain_squill_guardian', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/mountain_squill_hunter.py b/scripts/mobiles/tatooine/mountain_squill_hunter.py new file mode 100644 index 00000000..5393c868 --- /dev/null +++ b/scripts/mobiles/tatooine/mountain_squill_hunter.py @@ -0,0 +1,30 @@ +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_squill_hunter') + mobileTemplate.setLevel(19) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_mountain_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('mountain_squill_hunter', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/mountain_worrt.py b/scripts/mobiles/tatooine/mountain_worrt.py new file mode 100644 index 00000000..1790dd65 --- /dev/null +++ b/scripts/mobiles/tatooine/mountain_worrt.py @@ -0,0 +1,30 @@ +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_worrt') + mobileTemplate.setLevel(19) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_worrt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/creature/shared_creature_spit_small_toxicgreen.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('mountain_worrt', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/mutant_womprat.py b/scripts/mobiles/tatooine/mutant_womprat.py new file mode 100644 index 00000000..831182ac --- /dev/null +++ b/scripts/mobiles/tatooine/mutant_womprat.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('mutant_womprat') + mobileTemplate.setLevel(12) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('womprat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/overkreetle.py b/scripts/mobiles/tatooine/overkreetle.py new file mode 100644 index 00000000..7f6bb056 --- /dev/null +++ b/scripts/mobiles/tatooine/overkreetle.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('kreetle_over') + mobileTemplate.setLevel(11) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_kreetle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('overkreetle', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/parry_stormtrooper_dewback.py b/scripts/mobiles/tatooine/parry_stormtrooper_dewback.py new file mode 100644 index 00000000..9c961a1f --- /dev/null +++ b/scripts/mobiles/tatooine/parry_stormtrooper_dewback.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('parry_stormtrooper_dewback') + mobileTemplate.setLevel(17) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_dewback_armored.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('parry_stormtrooper_dewback', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/plaque_rat.py b/scripts/mobiles/tatooine/plaque_rat.py new file mode 100644 index 00000000..53a5a8e1 --- /dev/null +++ b/scripts/mobiles/tatooine/plaque_rat.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('womprat_plague') + mobileTemplate.setLevel(1) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('plaque_womprat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/razorback_felspur.py b/scripts/mobiles/tatooine/razorback_felspur.py new file mode 100644 index 00000000..ca591441 --- /dev/null +++ b/scripts/mobiles/tatooine/razorback_felspur.py @@ -0,0 +1,30 @@ +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_razorback_felspur') + mobileTemplate.setLevel(24) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_zucca_boar.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('razorback_felspur', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/razorclaw.py b/scripts/mobiles/tatooine/razorclaw.py new file mode 100644 index 00000000..2434283f --- /dev/null +++ b/scripts/mobiles/tatooine/razorclaw.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('elite_desert_razorback') + mobileTemplate.setLevel(23) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_zucca_boar.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('razorclaw', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/rill.py b/scripts/mobiles/tatooine/rill.py new file mode 100644 index 00000000..9e82c0c2 --- /dev/null +++ b/scripts/mobiles/tatooine/rill.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rill') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_rill.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('rill', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/rock_beetle.py b/scripts/mobiles/tatooine/rock_beetle.py new file mode 100644 index 00000000..e5241063 --- /dev/null +++ b/scripts/mobiles/tatooine/rock_beetle.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rock_beetle') + mobileTemplate.setLevel(18) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_rock_beetle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/creature/shared_creature_spit_small_toxicgreen.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('rock_beetle', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/rock_beetle1.py b/scripts/mobiles/tatooine/rock_beetle1.py new file mode 100644 index 00000000..6145a123 --- /dev/null +++ b/scripts/mobiles/tatooine/rock_beetle1.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rock_beetle') + mobileTemplate.setLevel(19) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_rock_beetle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/creature/shared_creature_spit_small_toxicgreen.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('rock_beetle_1', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/rock_beetle_cave.py b/scripts/mobiles/tatooine/rock_beetle_cave.py new file mode 100644 index 00000000..afa926ac --- /dev/null +++ b/scripts/mobiles/tatooine/rock_beetle_cave.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rock_beetle_cave') + mobileTemplate.setLevel(19) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(15) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_rock_beetle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/creature/shared_creature_spit_small_toxicgreen.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('rock_beetle_cave', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/rockmite.py b/scripts/mobiles/tatooine/rockmite.py new file mode 100644 index 00000000..bd6f39e5 --- /dev/null +++ b/scripts/mobiles/tatooine/rockmite.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rockmite') + mobileTemplate.setLevel(8) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_rock_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('rockmite', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/ronto.py b/scripts/mobiles/tatooine/ronto.py new file mode 100644 index 00000000..68e02924 --- /dev/null +++ b/scripts/mobiles/tatooine/ronto.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('ronto') + mobileTemplate.setLevel(17) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_ronto.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('ronto', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/runted_rill.py b/scripts/mobiles/tatooine/runted_rill.py new file mode 100644 index 00000000..dd84444f --- /dev/null +++ b/scripts/mobiles/tatooine/runted_rill.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('runted_rill') + mobileTemplate.setLevel(1) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_rill.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('runted_rill', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/sand_beetle.py b/scripts/mobiles/tatooine/sand_beetle.py new file mode 100644 index 00000000..072fa787 --- /dev/null +++ b/scripts/mobiles/tatooine/sand_beetle.py @@ -0,0 +1,30 @@ +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_beetle') + mobileTemplate.setLevel(18) + mobileTemplate.setDifficulty(1) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_giant_sand_beetle.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('sand_beetle', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/sandreaver.py b/scripts/mobiles/tatooine/sandreaver.py new file mode 100644 index 00000000..86af2d0b --- /dev/null +++ b/scripts/mobiles/tatooine/sandreaver.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dewback_sandreaver') + mobileTemplate.setLevel(18) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('sandreaver', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/savage_zucca_boar.py b/scripts/mobiles/tatooine/savage_zucca_boar.py new file mode 100644 index 00000000..646cc819 --- /dev/null +++ b/scripts/mobiles/tatooine/savage_zucca_boar.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('elite_zucca_boar') + mobileTemplate.setLevel(8) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_zucca_boar.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/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_zucca_boar', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/scyk.py b/scripts/mobiles/tatooine/scyk.py new file mode 100644 index 00000000..f3c09a86 --- /dev/null +++ b/scripts/mobiles/tatooine/scyk.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('scyk') + mobileTemplate.setLevel(11) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_scyk.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('scyk', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/sevorrt.py b/scripts/mobiles/tatooine/sevorrt.py new file mode 100644 index 00000000..3bcd9926 --- /dev/null +++ b/scripts/mobiles/tatooine/sevorrt.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('sevorrt') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_sevorrt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('sevorrt', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/sewer_worrt.py b/scripts/mobiles/tatooine/sewer_worrt.py new file mode 100644 index 00000000..ac614b18 --- /dev/null +++ b/scripts/mobiles/tatooine/sewer_worrt.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('sewer_worrt') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_worrt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('sewer_worrt', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/sickly_womprat.py b/scripts/mobiles/tatooine/sickly_womprat.py new file mode 100644 index 00000000..3961ece7 --- /dev/null +++ b/scripts/mobiles/tatooine/sickly_womprat.py @@ -0,0 +1,30 @@ +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_womprat') + mobileTemplate.setLevel(1) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('sickly_womprat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/slum_rat.py b/scripts/mobiles/tatooine/slum_rat.py new file mode 100644 index 00000000..90eeb0cf --- /dev/null +++ b/scripts/mobiles/tatooine/slum_rat.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('womprat_city') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('slum_rat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/snarlfang.py b/scripts/mobiles/tatooine/snarlfang.py new file mode 100644 index 00000000..95aa8910 --- /dev/null +++ b/scripts/mobiles/tatooine/snarlfang.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('elite_bocatt') + mobileTemplate.setLevel(17) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_bocatt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/creature/shared_creature_spit_small_toxicgreen.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('snarlfang', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/squill.py b/scripts/mobiles/tatooine/squill.py new file mode 100644 index 00000000..61abb0a3 --- /dev/null +++ b/scripts/mobiles/tatooine/squill.py @@ -0,0 +1,30 @@ +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') + mobileTemplate.setLevel(12) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('squill', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/stormtrooper_dewback.py b/scripts/mobiles/tatooine/stormtrooper_dewback.py new file mode 100644 index 00000000..b6dcea7f --- /dev/null +++ b/scripts/mobiles/tatooine/stormtrooper_dewback.py @@ -0,0 +1,30 @@ +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_dewback') + mobileTemplate.setLevel(14) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_dewback_armored.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('stormtrooper_dewback', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/sunstained_dunelizard.py b/scripts/mobiles/tatooine/sunstained_dunelizard.py new file mode 100644 index 00000000..03737a37 --- /dev/null +++ b/scripts/mobiles/tatooine/sunstained_dunelizard.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('dune_lizard_sunstained') + mobileTemplate.setLevel(19) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_dune_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('sunstained_dune_lizard', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/swarming_lesser_dewback.py b/scripts/mobiles/tatooine/swarming_lesser_dewback.py new file mode 100644 index 00000000..88fae935 --- /dev/null +++ b/scripts/mobiles/tatooine/swarming_lesser_dewback.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('swarming_lesser_dewback') + mobileTemplate.setLevel(13) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_swarming_lesser_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('swarming_lesser_dewback', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/tame_rill.py b/scripts/mobiles/tatooine/tame_rill.py new file mode 100644 index 00000000..4ec78cae --- /dev/null +++ b/scripts/mobiles/tatooine/tame_rill.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tame_rill') + mobileTemplate.setLevel(1) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_rill.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('tame_rill', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/tame_womprat.py b/scripts/mobiles/tatooine/tame_womprat.py new file mode 100644 index 00000000..bbc970a1 --- /dev/null +++ b/scripts/mobiles/tatooine/tame_womprat.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tame_womprat') + mobileTemplate.setLevel(2) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('tame_womprat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/tame_worrt.py b/scripts/mobiles/tatooine/tame_worrt.py new file mode 100644 index 00000000..75bda089 --- /dev/null +++ b/scripts/mobiles/tatooine/tame_worrt.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tame_worrt') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_worrt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('tame_worrt', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/tatooine_mynock.py b/scripts/mobiles/tatooine/tatooine_mynock.py new file mode 100644 index 00000000..64b3e4f1 --- /dev/null +++ b/scripts/mobiles/tatooine/tatooine_mynock.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('tatooine_mynock') + mobileTemplate.setLevel(2) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_mynock.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('tatooine_mynock', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/tempest_rill.py b/scripts/mobiles/tatooine/tempest_rill.py new file mode 100644 index 00000000..d5df155c --- /dev/null +++ b/scripts/mobiles/tatooine/tempest_rill.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('rill_tempest') + mobileTemplate.setLevel(8) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_rill.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('tempest_rill', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/tormented_bocatt.py b/scripts/mobiles/tatooine/tormented_bocatt.py new file mode 100644 index 00000000..ed5c4ecd --- /dev/null +++ b/scripts/mobiles/tatooine/tormented_bocatt.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('bocatt_tormented') + mobileTemplate.setLevel(18) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(15) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_bocatt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/ranged/creature/shared_creature_spit_small_toxicgreen.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureRangedAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('tormented_bocatt', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/tusken_bantha.py b/scripts/mobiles/tatooine/tusken_bantha.py new file mode 100644 index 00000000..13943979 --- /dev/null +++ b/scripts/mobiles/tatooine/tusken_bantha.py @@ -0,0 +1,30 @@ +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_bantha') + mobileTemplate.setLevel(30) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('tusken_bantha', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/twisted_dewback.py b/scripts/mobiles/tatooine/twisted_dewback.py new file mode 100644 index 00000000..f88b8020 --- /dev/null +++ b/scripts/mobiles/tatooine/twisted_dewback.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('twisted_dewback') + mobileTemplate.setLevel(11) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('twisted_dewback', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/twisted_rill.py b/scripts/mobiles/tatooine/twisted_rill.py new file mode 100644 index 00000000..977dd020 --- /dev/null +++ b/scripts/mobiles/tatooine/twisted_rill.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('twisted_rill') + mobileTemplate.setLevel(11) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_rill.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('twisted_rill', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/twisted_womprat.py b/scripts/mobiles/tatooine/twisted_womprat.py new file mode 100644 index 00000000..851ffcda --- /dev/null +++ b/scripts/mobiles/tatooine/twisted_womprat.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('twisted_womprat') + mobileTemplate.setLevel(11) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('twisted_womprat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/variegated_womprat.py b/scripts/mobiles/tatooine/variegated_womprat.py new file mode 100644 index 00000000..72cc6401 --- /dev/null +++ b/scripts/mobiles/tatooine/variegated_womprat.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('variegated_womprat') + mobileTemplate.setLevel(12) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_variegated_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('variegated_womprat', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/vicious_rill.py b/scripts/mobiles/tatooine/vicious_rill.py new file mode 100644 index 00000000..19262365 --- /dev/null +++ b/scripts/mobiles/tatooine/vicious_rill.py @@ -0,0 +1,30 @@ +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_rill') + mobileTemplate.setLevel(3) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_rill.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/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_rill', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/volatile_scyk.py b/scripts/mobiles/tatooine/volatile_scyk.py new file mode 100644 index 00000000..0262572f --- /dev/null +++ b/scripts/mobiles/tatooine/volatile_scyk.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('scyk_volatile') + mobileTemplate.setLevel(12) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_scyk.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('volatile_scyk', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/wasteland_cupa.py b/scripts/mobiles/tatooine/wasteland_cupa.py new file mode 100644 index 00000000..e7bcd8b2 --- /dev/null +++ b/scripts/mobiles/tatooine/wasteland_cupa.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('wasteland_cu_pa') + mobileTemplate.setLevel(20) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_cu_pa.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('wasteland_cu_pa', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/wild_bladeback_boar.py b/scripts/mobiles/tatooine/wild_bladeback_boar.py new file mode 100644 index 00000000..6568f78f --- /dev/null +++ b/scripts/mobiles/tatooine/wild_bladeback_boar.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('quest_hero_of_tatooine_ferocious_beast') + mobileTemplate.setLevel(40) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_zucca_boar.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('wild_bladeback_boar', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/wild_dune_boar.py b/scripts/mobiles/tatooine/wild_dune_boar.py new file mode 100644 index 00000000..61a673ae --- /dev/null +++ b/scripts/mobiles/tatooine/wild_dune_boar.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('wild_dune_boar') + mobileTemplate.setLevel(50) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_zucca_boar.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('wild_dune_boar', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/wonderous_cupa.py b/scripts/mobiles/tatooine/wonderous_cupa.py new file mode 100644 index 00000000..377aea78 --- /dev/null +++ b/scripts/mobiles/tatooine/wonderous_cupa.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('cu_pa_wonderous') + mobileTemplate.setLevel(12) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_cu_pa.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('wonderous_cu_pa', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/worrt.py b/scripts/mobiles/tatooine/worrt.py new file mode 100644 index 00000000..9adb3b10 --- /dev/null +++ b/scripts/mobiles/tatooine/worrt.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('worrt') + mobileTemplate.setLevel(5) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_worrt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('worrt', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/worrt_gutbuster.py b/scripts/mobiles/tatooine/worrt_gutbuster.py new file mode 100644 index 00000000..83f03334 --- /dev/null +++ b/scripts/mobiles/tatooine/worrt_gutbuster.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('worrt_gutbuster') + mobileTemplate.setLevel(13) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_worrt.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('worrt_gutbuster', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/young_mountain_squill.py b/scripts/mobiles/tatooine/young_mountain_squill.py new file mode 100644 index 00000000..934f5c31 --- /dev/null +++ b/scripts/mobiles/tatooine/young_mountain_squill.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('young_mountain_squill') + mobileTemplate.setLevel(16) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + 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('young_mountain_squill', mobileTemplate) + return \ No newline at end of file diff --git a/scripts/mobiles/tatooine/zucca_boar.py b/scripts/mobiles/tatooine/zucca_boar.py new file mode 100644 index 00000000..8b278a9c --- /dev/null +++ b/scripts/mobiles/tatooine/zucca_boar.py @@ -0,0 +1,30 @@ +import sys +from services.spawn import MobileTemplate +from services.spawn import WeaponTemplate +from java.util import Vector + +def addTemplate(core): + mobileTemplate = MobileTemplate() + + mobileTemplate.setCreatureName('zucca_boar') + mobileTemplate.setLevel(8) + mobileTemplate.setDifficulty(0) + mobileTemplate.setAttackRange(5) + mobileTemplate.setWeaponType(6) + mobileTemplate.setAttackSpeed(1.0) + + templates = Vector() + templates.add('object/mobile/shared_zucca_boar.iff') + mobileTemplate.setTemplates(templates) + + weaponTemplates = Vector() + weapontemplate = WeaponTemplate('object/weapon/melee/unarmed/shared_unarmed_default.iff', 6, 1.0) + weaponTemplates.add(weapontemplate) + mobileTemplate.setWeaponTemplateVector(weaponTemplates) + + attacks = Vector() + mobileTemplate.setDefaultAttack('creatureMeleeAttack') + mobileTemplate.setAttacks(attacks) + + core.spawnService.addMobileTemplate('zucca_boar', mobileTemplate) + return \ No newline at end of file diff --git a/src/resources/buffs/Buff.java b/src/resources/buffs/Buff.java new file mode 100644 index 00000000..52b9613e --- /dev/null +++ b/src/resources/buffs/Buff.java @@ -0,0 +1,486 @@ +/******************************************************************************* + * 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.buffs; + +import java.nio.ByteOrder; +import java.util.concurrent.Executors; +import java.util.concurrent.ScheduledFuture; +import java.util.concurrent.TimeUnit; + +import main.NGECore; + +import org.apache.mina.core.buffer.IoBuffer; +import org.apache.mina.core.buffer.SimpleBufferAllocator; + +import resources.objects.IDelta; +import resources.objects.creature.CreatureObject; + +import com.sleepycat.persist.model.NotPersistent; +import com.sleepycat.persist.model.Persistent; + +import engine.resources.common.CRC; + +@Persistent(version=10) +public class Buff implements IDelta { + + @NotPersistent + private SimpleBufferAllocator bufferPool = new SimpleBufferAllocator(); + private String group1, group2; + private int priority; + private float duration; + private String buffName; + private long ownerId; + private String effect1Name, effect2Name, effect3Name, effect4Name, effect5Name; + private float effect1Value, effect2Value, effect3Value, effect4Value, effect5Value; + private String callback; + private String particleEffect; + private boolean isDebuff; + private boolean removeOnDeath; + private boolean isRemovableByPlayer; + private int maxStacks; + private boolean isPersistent; + private boolean removeOnRespec; + private boolean aiRemoveOnEndCombat; + private boolean decayOnPvPDeath; + private long startTime; + private int totalPlayTime; + private byte decayCounter = 0; + @NotPersistent + private ScheduledFuture removalTask; + private int stacks = 1; + private long groupBufferId; + private int buffCRC; + + public Buff(Buff baseBuff, long ownerId) { + this.buffName = baseBuff.getBuffName(); + this.buffCRC = baseBuff.getBuffCRC(); + this.group1 = baseBuff.getGroup1(); + this.group2 = baseBuff.getGroup2(); + this.priority = baseBuff.getPriority(); + this.duration = baseBuff.getDuration(); + this.effect1Name = baseBuff.getEffect1Name(); + this.effect1Value = baseBuff.getEffect1Value(); + this.effect2Name = baseBuff.getEffect2Name(); + this.effect2Value = baseBuff.getEffect2Value(); + this.effect3Name = baseBuff.getEffect3Name(); + this.effect3Value = baseBuff.getEffect3Value(); + this.effect4Name = baseBuff.getEffect4Name(); + this.effect4Value = baseBuff.getEffect4Value(); + this.effect5Name = baseBuff.getEffect5Name(); + this.effect5Value = baseBuff.getEffect5Value(); + this.callback = baseBuff.getCallback(); + this.particleEffect = baseBuff.getParticleEffect(); + this.isDebuff = baseBuff.isDebuff(); + this.removeOnDeath = baseBuff.isRemoveOnDeath(); + this.isRemovableByPlayer = baseBuff.isRemovableByPlayer(); + this.maxStacks = baseBuff.getMaxStacks(); + this.isPersistent = baseBuff.isPersistent(); + this.removeOnRespec = baseBuff.isRemoveOnRespec(); + this.aiRemoveOnEndCombat = baseBuff.isAiRemoveOnEndCombat(); + this.decayOnPvPDeath = baseBuff.isDecayOnPvPDeath(); + } + + /*public Buff(String buffName, long ownerId) { + + this.buffName = buffName; + this.ownerId = ownerId; + this.buffCRC = CRC.StringtoCRC(buffName); + + DatatableVisitor visitor; + + try { + + visitor = ClientFileManager.loadFile("datatables/buff/buff.iff", DatatableVisitor.class); + for(int i = 0; i < visitor.getRowCount(); i++) { + + if(visitor.getObject(i, 0) != null) + if(((String) visitor.getObject(i, 0)).equalsIgnoreCase(buffName)) { + + group1 = (String) visitor.getObject(i, 1); + group2 = (String) visitor.getObject(i, 2); + priority = (int) visitor.getObject(i, 4); + duration = (Float) visitor.getObject(i, 6); + effect1Name = (String) visitor.getObject(i, 7); + effect1Value = (Float) visitor.getObject(i, 8); + effect2Name = (String) visitor.getObject(i, 9); + effect2Value = (Float) visitor.getObject(i, 10); + effect3Name = (String) visitor.getObject(i, 11); + effect3Value = (Float) visitor.getObject(i, 12); + effect4Name = (String) visitor.getObject(i, 13); + effect4Value = (Float) visitor.getObject(i, 14); + effect5Name = (String) visitor.getObject(i, 15); + effect5Value = (Float) visitor.getObject(i, 16); + callback = (String) visitor.getObject(i, 18); + particleEffect = (String) visitor.getObject(i, 19); + isDebuff = (Boolean) visitor.getObject(i, 22); + removeOnDeath = (Integer) visitor.getObject(i, 25) != 0; + isRemovableByPlayer = (Integer) visitor.getObject(i, 26) != 0; + maxStacks = (Integer) visitor.getObject(i, 28); + isPersistent = (Integer) visitor.getObject(i, 29) != 0; + removeOnRespec = (Integer) visitor.getObject(i, 31) != 0; + aiRemoveOnEndCombat = (Integer) visitor.getObject(i, 32) != 0; + decayOnPvPDeath = (Integer) visitor.getObject(i, 33) != 0; + + } + + } + + } catch (InstantiationException | IllegalAccessException e) { + e.printStackTrace(); + } + }*/ + + public Buff() { } + + @Override + public byte[] getBytes() { + + IoBuffer buffer = bufferPool.allocate(28, false).order(ByteOrder.LITTLE_ENDIAN); + + buffer.putInt(CRC.StringtoCRC(buffName.toLowerCase())); + if(duration > 0) { + buffer.putInt((int) (totalPlayTime + getRemainingDuration())); + buffer.putInt(0); + buffer.putInt((int) duration); + } else { + buffer.putInt(-1); + buffer.putInt(0); + buffer.putInt(0); + } + buffer.putLong(ownerId); + buffer.putInt(stacks); // stacks + + buffer.flip(); + + return buffer.array(); + + } + + public String getGroup1() { + return group1; + } + + public void setGroup1(String group1) { + this.group1 = group1; + } + + public int getPriority() { + return priority; + } + + public void setPriority(int priority) { + this.priority = priority; + } + + public float getDuration() { + return duration; + } + + public void setDuration(float duration) { + this.duration = duration; + } + + public String getBuffName() { + return buffName; + } + + public void setBuffName(String buffName) { + this.buffName = buffName; + } + + public long getOwnerId() { + return ownerId; + } + + public void setOwnerId(long ownerId) { + this.ownerId = ownerId; + } + + public String getEffect1Name() { + return effect1Name; + } + + public void setEffect1Name(String effect1Name) { + this.effect1Name = effect1Name; + } + + public String getEffect2Name() { + return effect2Name; + } + + public void setEffect2Name(String effect2Name) { + this.effect2Name = effect2Name; + } + + public String getEffect3Name() { + return effect3Name; + } + + public void setEffect3Name(String effect3Name) { + this.effect3Name = effect3Name; + } + + public String getEffect4Name() { + return effect4Name; + } + + public void setEffect4Name(String effect4Name) { + this.effect4Name = effect4Name; + } + + public String getEffect5Name() { + return effect5Name; + } + + public void setEffect5Name(String effect5Name) { + this.effect5Name = effect5Name; + } + + public float getEffect1Value() { + return effect1Value; + } + + public void setEffect1Value(float effect1Value) { + this.effect1Value = effect1Value; + } + + public float getEffect2Value() { + return effect2Value; + } + + public void setEffect2Value(float effect2Value) { + this.effect2Value = effect2Value; + } + + public float getEffect3Value() { + return effect3Value; + } + + public void setEffect3Value(float effect3Value) { + this.effect3Value = effect3Value; + } + + public float getEffect4Value() { + return effect4Value; + } + + public void setEffect4Value(float effect4Value) { + this.effect4Value = effect4Value; + } + + public float getEffect5Value() { + return effect5Value; + } + + public void setEffect5Value(float effect5Value) { + this.effect5Value = effect5Value; + } + + public String getCallback() { + return callback; + } + + public void setCallback(String callback) { + this.callback = callback; + } + + public String getParticleEffect() { + return particleEffect; + } + + public void setParticleEffect(String particleEffect) { + this.particleEffect = particleEffect; + } + + public boolean isDebuff() { + return isDebuff; + } + + public void setDebuff(boolean isDebuff) { + this.isDebuff = isDebuff; + } + + public boolean isRemoveOnDeath() { + return removeOnDeath; + } + + public void setRemoveOnDeath(boolean removeOnDeath) { + this.removeOnDeath = removeOnDeath; + } + + public boolean isRemovableByPlayer() { + return isRemovableByPlayer; + } + + public void setRemovableByPlayer(boolean isRemovableByPlayer) { + this.isRemovableByPlayer = isRemovableByPlayer; + } + + public int getMaxStacks() { + return maxStacks; + } + + public void setMaxStacks(int maxStacks) { + this.maxStacks = maxStacks; + } + + public boolean isPersistent() { + return isPersistent; + } + + public void setPersistent(boolean isPersistent) { + this.isPersistent = isPersistent; + } + + public boolean isRemoveOnRespec() { + return removeOnRespec; + } + + public void setRemoveOnRespec(boolean removeOnRespec) { + this.removeOnRespec = removeOnRespec; + } + + public boolean isAiRemoveOnEndCombat() { + return aiRemoveOnEndCombat; + } + + public void setAiRemoveOnEndCombat(boolean aiRemoveOnEndCombat) { + this.aiRemoveOnEndCombat = aiRemoveOnEndCombat; + } + + public boolean isDecayOnPvPDeath() { + return decayOnPvPDeath; + } + + public void setDecayOnPvPDeath(boolean decayOnPvPDeath) { + this.decayOnPvPDeath = decayOnPvPDeath; + } + + public void setStartTime() { + this.startTime = System.currentTimeMillis(); + } + + public long getStartTime() { + return startTime; + } + + public int getRemainingDuration() { + + long currentTime = System.currentTimeMillis(); + long timeDiff = (currentTime - startTime) / 1000; + int remaining = (int) (duration - timeDiff); + for(int i = 0; i < decayCounter; i++) { + remaining /= 2; + } + return remaining; + + } + + public int getTotalPlayTime() { + return totalPlayTime; + } + + public void setTotalPlayTime(int totalPlayTime) { + this.totalPlayTime = totalPlayTime; + } + + public byte getDecayCounter() { + return decayCounter; + } + + public void incDecayCounter() { + this.decayCounter++; + } + + public ScheduledFuture getRemovalTask() { + return removalTask; + } + + public void setRemovalTask(ScheduledFuture removalTask) { + this.removalTask = removalTask; + } + + public void updateRemovalTask() { + + if(removalTask == null) + return; + + removalTask.cancel(true); + + final NGECore core = NGECore.getInstance(); + final CreatureObject owner = (CreatureObject) core.objectService.getObject(getOwnerId()); + + if(owner == null) + return; + + ScheduledFuture task = Executors.newScheduledThreadPool(1).schedule(new Runnable() { + + @Override + public void run() { + + core.buffService.removeBuffFromCreature(owner, Buff.this); + + } + + }, (long) getRemainingDuration(), TimeUnit.SECONDS); + + setRemovalTask(task); + + } + + public int getStacks() { + return stacks; + } + + public void setStacks(int stacks) { + this.stacks = stacks; + } + + public boolean isGroupBuff() { + return effect1Name == null ? false : effect1Name.equals("group"); + } + + public long getGroupBufferId() { + return groupBufferId; + } + + public void setGroupBufferId(long groupBufferId) { + this.groupBufferId = groupBufferId; + } + + public String getGroup2() { + return group2; + } + + public void setGroup2(String group2) { + this.group2 = group2; + } + + public int getBuffCRC() { + return buffCRC; + } + + public void setBuffCRC(int buffCRC) { + this.buffCRC = buffCRC; + } + +} diff --git a/src/resources/buffs/BuffItem.java b/src/resources/buffs/BuffItem.java new file mode 100644 index 00000000..ae302027 --- /dev/null +++ b/src/resources/buffs/BuffItem.java @@ -0,0 +1,74 @@ +/******************************************************************************* + * 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.buffs; + +import com.sleepycat.persist.model.Persistent; + +@Persistent +public class BuffItem { + private int affectAmount; + private int entertainerBonus; + private int invested; + private String skillName; + + public BuffItem() { + + } + + public BuffItem(String skillName, int invested, int entBonus) { + this.skillName = skillName; + this.invested = invested; + this.entertainerBonus = entBonus; + } + + public int getAffectAmount() { + return affectAmount; + } + + public int getEntertainerBonus() { + return entertainerBonus; + } + + public int getInvested() { + return invested; + } + + public String getSkillName() { + return skillName; + } + + public void setAffectAmount(int amount) { + this.affectAmount = amount; + } + + public void setEntertainerBonus(int entertainerBonus) { + this.entertainerBonus = entertainerBonus; + } + + public void setInvested(int invested) { + this.invested = invested; + } + + public void setSkillName(String skillName) { + this.skillName = skillName; + } +} diff --git a/src/resources/buffs/DamageOverTime.java b/src/resources/buffs/DamageOverTime.java new file mode 100644 index 00000000..8a21306a --- /dev/null +++ b/src/resources/buffs/DamageOverTime.java @@ -0,0 +1,116 @@ +/******************************************************************************* + * 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.buffs; + +import java.util.concurrent.ScheduledFuture; + +import com.sleepycat.persist.model.NotPersistent; +import com.sleepycat.persist.model.Persistent; + +@Persistent(version=1) +public class DamageOverTime { + + private Buff buff; + private String type; + private int duration; + private int intensity; + @NotPersistent + private ScheduledFuture task; + private long startTime; + private String commandName; + + public DamageOverTime() { } + + public DamageOverTime(String commandName, Buff buff, String type, int duration, int intensity) { + this.buff = buff; + this.type = type; + this.duration = duration; + this.intensity = intensity; + this.commandName = commandName; + } + + public Buff getBuff() { + return buff; + } + + public void setBuff(Buff buff) { + this.buff = buff; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + public int getDuration() { + return duration; + } + + public void setDuration(int duration) { + this.duration = duration; + } + + public int getIntensity() { + return intensity; + } + + public void setIntensity(int intensity) { + this.intensity = intensity; + } + + public ScheduledFuture getTask() { + return task; + } + + public void setTask(ScheduledFuture task) { + this.task = task; + } + + public long getStartTime() { + return startTime; + } + + public void setStartTime(long startTime) { + this.startTime = startTime; + } + + public int getRemainingDuration() { + + long currentTime = System.currentTimeMillis(); + long timeDiff = (currentTime - startTime) / 1000; + return (int) (duration - timeDiff); + + } + + public String getCommandName() { + return commandName; + } + + public void setCommandName(String commandName) { + this.commandName = commandName; + } + + +} diff --git a/src/resources/common/BountyListItem.java b/src/resources/common/BountyListItem.java new file mode 100644 index 00000000..a50272e8 --- /dev/null +++ b/src/resources/common/BountyListItem.java @@ -0,0 +1,106 @@ +/******************************************************************************* + * 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.common; + +import java.util.ArrayList; +import java.util.List; + +import com.sleepycat.persist.model.Entity; +import com.sleepycat.persist.model.PrimaryKey; + +@Entity +public class BountyListItem { + + @PrimaryKey + private long objectId; + private int creditReward; + private String profession; + private String faction; + private String name; + private List assignedHunters; + + public BountyListItem() { } + + public BountyListItem(long objectId, int creditReward, String profession, String faction, String name) { + this.objectId = objectId; + this.creditReward = creditReward; + this.profession = profession; + this.faction = faction; + this.setName(name); + this.setAssignedHunters(new ArrayList(3)); + } + + public long getObjectId() { + return objectId; + } + public void setObjectId(long objectId) { + this.objectId = objectId; + } + public int getCreditReward() { + return creditReward; + } + public void setCreditReward(int creditReward) { + this.creditReward = creditReward; + } + public String getProfession() { + return profession; + } + public void setProfession(String profession) { + this.profession = profession; + } + + public String getFaction() { + return faction; + } + + public void setFaction(String faction) { + this.faction = faction; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public void addBounty(int amountToAdd) { + this.creditReward += amountToAdd; + } + + public List getAssignedHunters() { + return assignedHunters; + } + + public void setAssignedHunters(List assignedHunters) { + this.assignedHunters = assignedHunters; + } + + public void addBountyHunter(long objectId) { + assignedHunters.add(objectId); + } + + public void removeBountyHunter(long objectId) { + assignedHunters.remove(objectId); + } +} diff --git a/src/resources/loot/LootDrop.java b/src/resources/loot/LootDrop.java new file mode 100644 index 00000000..efd455ba --- /dev/null +++ b/src/resources/loot/LootDrop.java @@ -0,0 +1,51 @@ +/******************************************************************************* + * 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.loot; + +import java.util.ArrayList; +import java.util.List; + +public class LootDrop { + + private List elements = new ArrayList(); + private String droppedItemTemplate; + + public LootDrop(){ + + } + + public void addElement(String element){ + elements.add(element); + } + + public List getElements(){ + return elements; + } + + public String getDroppedItemTemplate() { + return droppedItemTemplate; + } + + public void setDroppedItemTemplate(String droppedItemTemplate) { + this.droppedItemTemplate = droppedItemTemplate; + } +} diff --git a/src/resources/loot/LootGroup.java b/src/resources/loot/LootGroup.java new file mode 100644 index 00000000..8666014d --- /dev/null +++ b/src/resources/loot/LootGroup.java @@ -0,0 +1,64 @@ +/******************************************************************************* + * 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.loot; + +import com.sleepycat.persist.model.Persistent; + +/** + * @author Charon + */ + +@Persistent(version=0) +public class LootGroup { + + private String[] lootPoolNames; + private double[] lootPoolChances; + private double lootGroupChance; + + public LootGroup(){ + + } + + public LootGroup(String[] lootPoolNames, double[] lootPoolChances, double lootGroupChance){ + this.lootPoolNames = lootPoolNames; + this.lootPoolChances = lootPoolChances; + this.lootGroupChance = lootGroupChance; + } + + public void addLootData(String[] lootPoolNames, double[] lootPoolChances, double lootGroupChance){ + this.lootPoolNames = lootPoolNames; + this.lootPoolChances = lootPoolChances; + this.lootGroupChance = lootGroupChance; + } + + public String[] getLootPoolNames() { + return lootPoolNames; + } + + public double[] getLootPoolChances() { + return lootPoolChances; + } + + public double getLootGroupChance() { + return lootGroupChance; + } +} diff --git a/src/resources/loot/LootPool.java b/src/resources/loot/LootPool.java new file mode 100644 index 00000000..83576a16 --- /dev/null +++ b/src/resources/loot/LootPool.java @@ -0,0 +1,33 @@ +/******************************************************************************* + * 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.loot; + +/** + * @author Charon + */ + +public class LootPool { + + public LootPool(){ + + } +} diff --git a/src/resources/loot/LootRollSession.java b/src/resources/loot/LootRollSession.java new file mode 100644 index 00000000..e79951fe --- /dev/null +++ b/src/resources/loot/LootRollSession.java @@ -0,0 +1,163 @@ +/******************************************************************************* + * 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.loot; + +import java.util.ArrayList; +import java.util.List; + +import engine.resources.scene.Planet; +import main.NGECore; +import resources.objects.creature.CreatureObject; +import resources.objects.group.GroupObject; +import resources.objects.tangible.TangibleObject; + +/** + * @author Charon + */ + +public class LootRollSession { + + private String SessionID; // leaderName-SystemTime + private boolean sessionValid; + private GroupObject playerGroup; + private CreatureObject requester; + private List droppedItems; + private Planet sessionPlanet; + private List errorMessages; + private int sessionLootMode; + private boolean allowRareLoot; + private boolean increasedRLSChance; + + public LootRollSession(){ + } + + public LootRollSession(CreatureObject requester, TangibleObject lootedObject){ + long requesterGroupId = requester.getGroupId(); + if (requesterGroupId>0){ + this.playerGroup = (GroupObject) NGECore.getInstance().objectService.getObject(requesterGroupId); + this.SessionID = playerGroup.getGroupLeader().getCustomName()+"-"+System.currentTimeMillis(); + + } else { + this.SessionID = requester.getCustomName()+"-"+System.currentTimeMillis(); + } + + if (lootedObject instanceof CreatureObject){ + CreatureObject lootedCreature = (CreatureObject)lootedObject; + // Exclude rare loot depending on creature level + // For groups maybe average CL? + if (requester.getLevel()-lootedCreature.getLevel()<=6){ + this.setAllowRareLoot(true); + } + } + + // Group situation + if (this.getPlayerGroup()!=null){ + if (this.getPlayerGroup().getMemberList().size()>=4) + this.setIncreasedRLSChance(true); + } + + // Possible AFKer check here + + + droppedItems = new ArrayList(); + errorMessages = new ArrayList(); + sessionPlanet = requester.getPlanet(); + this.requester = requester; + allowRareLoot = false; + } + + public List getDroppedItems() { + return droppedItems; + } + + public void addDroppedItem(TangibleObject droppedItem) { + this.droppedItems.add(droppedItem); + } + + public String getSessionID() { + return SessionID; + } + + public void setSessionID(String sessionID) { + SessionID = sessionID; + } + + public void generateSessionID(String sessionID) { + SessionID = sessionID; + } + + public Planet getSessionPlanet() { + return sessionPlanet; + } + + public List getErrorMessages() { + return errorMessages; + } + + public void addErrorMessage(String errorMessage) { + this.errorMessages.add(errorMessage); + } + + public int getSessionLootMode() { + return sessionLootMode; + } + + public void setSessionLootMode(int sessionLootMode) { + this.sessionLootMode = sessionLootMode; + } + + public boolean isAllowRareLoot() { + return allowRareLoot; + } + + public void setAllowRareLoot(boolean allowRareLoot) { + this.allowRareLoot = allowRareLoot; + } + + public GroupObject getPlayerGroup() { + return playerGroup; + } + + public boolean isIncreasedRLSChance() { + return increasedRLSChance; + } + + public void setIncreasedRLSChance(boolean increasedRLSChance) { + this.increasedRLSChance = increasedRLSChance; + } + + public boolean isSessionValid() { + return sessionValid; + } + + public void setSessionValid(boolean sessionValid) { + this.sessionValid = sessionValid; + } + + public CreatureObject getRequester() { + return requester; + } + + public void setRequester(CreatureObject requester) { + this.requester = requester; + } +} diff --git a/src/resources/objectives/BountyMissionObjective.java b/src/resources/objectives/BountyMissionObjective.java new file mode 100644 index 00000000..e17de5cd --- /dev/null +++ b/src/resources/objectives/BountyMissionObjective.java @@ -0,0 +1,80 @@ +/******************************************************************************* + * 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.objectives; + +import java.util.Random; + +import engine.resources.scene.Point3D; +import main.NGECore; +import resources.common.BountyListItem; +import resources.objects.creature.CreatureObject; +import resources.objects.mission.MissionObject; +import services.mission.MissionObjective; + +public class BountyMissionObjective extends MissionObjective { + + private Point3D lastKnownLocation; + private long markObjId; + + public BountyMissionObjective(MissionObject parent) { + super(parent); + } + + @Override + public void activate(NGECore core, CreatureObject player) { + if (isActivated()) + return; + + BountyListItem bountyTarget = core.missionService.getBountyListItem(getMissionObject().getBountyObjId()); + + setMarkObjId(bountyTarget.getObjectId()); + + // TODO: Change this to a comm message. + player.sendSystemMessage("@mission/mission_bounty_informant:target_hard_" + Integer.toString(new Random().nextInt(5)), (byte) 0); + + + } + + @Override + public void complete(NGECore core, CreatureObject player) { + + } + + @Override + public void abort(NGECore core, CreatureObject player) { + + } + + @Override + public void update(NGECore core, CreatureObject player) { + + } + + public Point3D getLastKnownLocation() { return lastKnownLocation; } + + public void setLastKnownLocation(Point3D lastKnownLocation) { this.lastKnownLocation = lastKnownLocation; } + + public long getMarkObjId() { return markObjId; } + + public void setMarkObjId(long markObjId) { this.markObjId = markObjId; } + +} diff --git a/src/resources/skills/SkillMod.java b/src/resources/skills/SkillMod.java new file mode 100644 index 00000000..2bce0b23 --- /dev/null +++ b/src/resources/skills/SkillMod.java @@ -0,0 +1,109 @@ +/******************************************************************************* + * 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.skills; + +import org.apache.mina.core.buffer.IoBuffer; + +import resources.objects.Delta; + +import com.sleepycat.persist.model.Persistent; + +@Persistent(version=0) +public class SkillMod extends Delta { + + private int base; + private int modifier; + + public SkillMod(int base, int modifier) { + this.base = base; + this.modifier = modifier; + } + + public SkillMod() { + + } + + public int getBase() { + synchronized(objectMutex) { + return base; + } + } + + public void setBase(int base) { + synchronized(objectMutex) { + this.base = base; + } + } + + public void addBase(int base) { + synchronized(objectMutex) { + this.base += base; + } + } + + public void deductBase(int base) { + synchronized(objectMutex) { + this.base -= base; + } + } + + public int getModifier() { + synchronized(objectMutex) { + return modifier; + } + } + + public void setModifier(int modifier) { + synchronized(objectMutex) { + this.modifier = modifier; + } + } + + public void addModifier(int modifier) { + synchronized(objectMutex) { + this.modifier += modifier; + } + } + + public void deductModifier(int modifier) { + synchronized(objectMutex) { + this.modifier -= modifier; + } + } + + public float getValue(int divisor) { + synchronized(objectMutex) { + return ((divisor < 1) ? ((float) base) : ((float) base / (float) divisor)); + } + } + + @Override + public byte[] getBytes() { + synchronized(objectMutex) { + IoBuffer buffer = createBuffer(8); + buffer.putInt(base); + buffer.putInt(modifier); + return buffer.array(); + } + } + +}