mirror of
https://github.com/ProjectSWGCore/NGECore2.git
synced 2026-09-11 21:45:43 -04:00
Added imperial outpost, fixed visibility issue
- Added force crystal hunter's cave - Added imperial outpost NPCs - Fixed creature visibility while mounted - Tweaked some spawn areas - Debugged some spawn issues
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
LOAD.SNAPSHOT_OBJECTS=1
|
||||
LOAD.BUILDOUT_OBJECTS=1
|
||||
#LOAD.BUILDOUT_ONLY_FOR="dantooine"
|
||||
LOAD.RESOURCE.SYSTEM=1
|
||||
|
||||
# Misc
|
||||
|
||||
@@ -1,53 +1,10 @@
|
||||
import sys
|
||||
from engine.resources.scene import Point3D
|
||||
from resources.common import MathUtilities
|
||||
|
||||
def setup():
|
||||
return
|
||||
|
||||
def run(core, actor, target, commandString):
|
||||
|
||||
#actor.sendSystemMessage('CellNumber: ' + str(actor.getContainer().getObjectID()), 0)
|
||||
actor.sendSystemMessage('x: ' + str(actor.getPosition().x) , 0)
|
||||
actor.sendSystemMessage('y: ' + str(actor.getPosition().y) , 0)
|
||||
actor.sendSystemMessage('z: ' + str(actor.getPosition().z) , 0)
|
||||
actor.sendSystemMessage('qy: ' + str(actor.getOrientation().y) , 0)
|
||||
actor.sendSystemMessage('qw: ' + str(actor.getOrientation().w) , 0)
|
||||
actor.sendSystemMessage('targetID: ' + str(actor.getTargetId()) , 0) # 200336
|
||||
|
||||
stcSvc = core.staticService
|
||||
#hunter1 = stcSvc.spawnObject('force_sensitive_crypt_crawler', 'dantooine', long(8535484), float(26), float(-41), float(-68), float(2.77), float(1.82))
|
||||
#hunter2 = stcSvc.spawnObject('untrained_wielder_of_the_dark_side', 'dantooine', long(8535484), float(23), float(-41), float(-65), float(1.52), float(2.94))
|
||||
#hunter3 = stcSvc.spawnObject('untrained_wielder_of_the_dark_side', 'dantooine', long(8535484), float(47), float(-48), float(-65), float(0.72), float(-0.68))
|
||||
#hunter4 = stcSvc.spawnObject('untrained_wielder_of_the_dark_side', 'dantooine', long(8535484), float(49.12), float(-47.48), float(-13.41), float(1), float(-0.05))
|
||||
#hunter5 = stcSvc.spawnObject('dark_force_crystal_hunter', 'dantooine', long(8535485), float(93.10), float(-61.87), float(-14.25), float(-0.7), float(0.7))
|
||||
#hunter6 = stcSvc.spawnObject('force_sensitive_crypt_crawler', 'dantooine', long(8535485), float(62.2), float(-69.0), float(-37.8), float(0.68), float(0.72))
|
||||
#hunter7 = stcSvc.spawnObject('dark_force_crystal_hunter', 'dantooine', long(8535484), float(52.14), float(-67.8), float(-42.9), float(0.51), float(0.86))
|
||||
#hunter8 = stcSvc.spawnObject('force_sensitive_crypt_crawler', 'dantooine', long(8535486), float(84.94), float(-77.09), float(-63.28), float(-0.19), float(0.98))
|
||||
#hunter9 = stcSvc.spawnObject('force_sensitive_crypt_crawler', 'dantooine', long(8535486), float(65.30), float(-76.16), float(-70.15), float(0.38), float(0.92))
|
||||
#hunter10 = stcSvc.spawnObject('untrained_wielder_of_the_dark_side', 'dantooine', long(8535486), float(65.636), float(-76.87), float(-81.40), float(-0.123), float(0.99))
|
||||
#hunter11 = stcSvc.spawnObject('dark_force_crystal_hunter', 'dantooine', long(8535487), float(80.34), float(-77.29), float(-92.77), float(-0.2), float(0.97))
|
||||
#hunter12 = stcSvc.spawnObject('dark_force_crystal_hunter', 'dantooine', long(8535487), float(80.34), float(-77.29), float(-92.77), float(-0.2), float(0.97))
|
||||
|
||||
objSvc = core.objectService
|
||||
#magSeal1 = objSvc.getObject(200336-1);
|
||||
magSeal1 = objSvc.getObject(200335);
|
||||
actor.sendSystemMessage('getTemplate: ' + magSeal1.getTemplate() , 0) # 200336
|
||||
lootPoolNames_1 = ['Junk']
|
||||
lootPoolChances_1 = [100]
|
||||
lootGroupChance_1 = 90
|
||||
magSeal1.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1)
|
||||
|
||||
#magSeal1Inv = magSeal1.getSlottedObject("inventory");
|
||||
#lotSvc.getContainerContent()
|
||||
#magSeal1Inv.
|
||||
|
||||
|
||||
|
||||
lotSvc = core.lootService
|
||||
lotSvc.handleContainer(actor,200335,'Junk','dantooine')
|
||||
|
||||
|
||||
|
||||
if actor.getPosture() == 13 or actor.getPosture() == 14:
|
||||
return
|
||||
|
||||
|
||||
@@ -20,10 +20,7 @@ def addTemplate(core):
|
||||
mobileTemplate.setSocialGroup('dark jedi')
|
||||
mobileTemplate.setAssistRange(12)
|
||||
mobileTemplate.setRespawnTime(300)
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
mobileTemplate.setOptionsBitmask(192)
|
||||
>>>>>>> origin/master
|
||||
|
||||
|
||||
templates = Vector()
|
||||
|
||||
@@ -7,7 +7,6 @@ def addTemplate(core):
|
||||
mobileTemplate = MobileTemplate()
|
||||
|
||||
mobileTemplate.setCreatureName('dark_force_crystal_hunter')
|
||||
mobileTemplate.setLevel(90)
|
||||
mobileTemplate.setMinLevel(60)
|
||||
mobileTemplate.setMaxLevel(69)
|
||||
mobileTemplate.setDifficulty(0)
|
||||
|
||||
@@ -20,10 +20,7 @@ def addTemplate(core):
|
||||
mobileTemplate.setSocialGroup('dark jedi')
|
||||
mobileTemplate.setAssistRange(12)
|
||||
mobileTemplate.setRespawnTime(300)
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
mobileTemplate.setOptionsBitmask(192)
|
||||
>>>>>>> origin/master
|
||||
|
||||
templates = Vector()
|
||||
templates.add('object/mobile/shared_dressed_dark_jedi_male_human_01.iff')
|
||||
|
||||
@@ -18,10 +18,7 @@ def addTemplate(core):
|
||||
mobileTemplate.setSocialGroup('dark jedi')
|
||||
mobileTemplate.setAssistRange(12)
|
||||
mobileTemplate.setRespawnTime(300)
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
mobileTemplate.setOptionsBitmask(192)
|
||||
>>>>>>> origin/master
|
||||
|
||||
templates = Vector()
|
||||
templates.add('object/mobile/shared_dressed_dark_jedi_master_female_twk_01.iff')
|
||||
|
||||
@@ -7,7 +7,6 @@ def addTemplate(core):
|
||||
mobileTemplate = MobileTemplate()
|
||||
|
||||
mobileTemplate.setCreatureName('eow_force_sensitive_crypt_crawler')
|
||||
mobileTemplate.setLevel(90)
|
||||
mobileTemplate.setMinLevel(60)
|
||||
mobileTemplate.setMaxLevel(70)
|
||||
mobileTemplate.setDifficulty(0)
|
||||
|
||||
@@ -7,7 +7,6 @@ def addTemplate(core):
|
||||
mobileTemplate = MobileTemplate()
|
||||
|
||||
mobileTemplate.setCreatureName('force_sensitive_renegade')
|
||||
mobileTemplate.setLevel(90)
|
||||
mobileTemplate.setMinLevel(61)
|
||||
mobileTemplate.setMaxLevel(69)
|
||||
mobileTemplate.setDifficulty(0)
|
||||
|
||||
@@ -7,7 +7,6 @@ def addTemplate(core):
|
||||
mobileTemplate = MobileTemplate()
|
||||
|
||||
mobileTemplate.setCreatureName('untrained_wielder_of_the_dark_side')
|
||||
mobileTemplate.setLevel(90)
|
||||
mobileTemplate.setMinLevel(61)
|
||||
mobileTemplate.setMaxLevel(70)
|
||||
mobileTemplate.setDifficulty(0)
|
||||
|
||||
@@ -7,13 +7,11 @@ from services.spawn import MobileTemplate
|
||||
def addDynamicGroup(core):
|
||||
dynamicGroup = DynamicSpawnGroup()
|
||||
mobileTemplates = Vector()
|
||||
mobileTemplates.add('mammoth_thune')
|
||||
mobileTemplates.add('thune')
|
||||
mobileTemplates.add('thune_herd_leader')
|
||||
mobileTemplates.add('frenzied_graul')
|
||||
dynamicGroup.setMobiles(mobileTemplates)
|
||||
dynamicGroup.setGroupMembersNumber(-3)
|
||||
dynamicGroup.setName('thunes_1')
|
||||
dynamicGroup.setMaxSpawns(-1)
|
||||
dynamicGroup.setMinSpawnDistance(150)
|
||||
core.spawnService.addDynamicGroup('thunes_1', dynamicGroup)
|
||||
core.spawnService.addDynamicGroup('frenzied_graul', dynamicGroup)
|
||||
return
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
import sys
|
||||
from services.spawn import MobileTemplate
|
||||
from services.spawn import WeaponTemplate
|
||||
from java.util import Vector
|
||||
|
||||
def addTemplate(core):
|
||||
mobileTemplate = MobileTemplate()
|
||||
|
||||
mobileTemplate.setCreatureName('eow_fbase_imperial_corporal')
|
||||
mobileTemplate.setLevel(90)
|
||||
mobileTemplate.setDifficulty(0)
|
||||
mobileTemplate.setAttackRange(15)
|
||||
mobileTemplate.setAttackSpeed(1.0)
|
||||
#mobileTemplate.setWeaponType(1)
|
||||
mobileTemplate.setMinSpawnDistance(4)
|
||||
mobileTemplate.setMaxSpawnDistance(8)
|
||||
mobileTemplate.setDeathblow(True)
|
||||
mobileTemplate.setSocialGroup("imperial")
|
||||
mobileTemplate.setAssistRange(12)
|
||||
mobileTemplate.setStalker(False)
|
||||
mobileTemplate.setFaction("imperial")
|
||||
mobileTemplate.setFactionStatus(1)
|
||||
|
||||
templates = Vector()
|
||||
templates.add('object/mobile/shared_dressed_imperial_captain_m.iff')
|
||||
mobileTemplate.setTemplates(templates)
|
||||
|
||||
weaponTemplates = Vector()
|
||||
weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0)
|
||||
weaponTemplates.add(weapontemplate)
|
||||
#mobileTemplate.setWeaponTemplateVector(weaponTemplates)
|
||||
|
||||
attacks = Vector()
|
||||
#mobileTemplate.setDefaultAttack('rangedshot')
|
||||
#mobileTemplate.setAttacks(attacks)
|
||||
|
||||
core.spawnService.addMobileTemplate('eow_fbase_imperial_corporal', mobileTemplate)
|
||||
return
|
||||
@@ -0,0 +1,38 @@
|
||||
import sys
|
||||
from services.spawn import MobileTemplate
|
||||
from services.spawn import WeaponTemplate
|
||||
from java.util import Vector
|
||||
|
||||
def addTemplate(core):
|
||||
mobileTemplate = MobileTemplate()
|
||||
|
||||
mobileTemplate.setCreatureName('eow_fbase_stormtrooper')
|
||||
mobileTemplate.setLevel(90)
|
||||
mobileTemplate.setDifficulty(0)
|
||||
mobileTemplate.setAttackRange(15)
|
||||
mobileTemplate.setAttackSpeed(1.0)
|
||||
#mobileTemplate.setWeaponType(1)
|
||||
mobileTemplate.setMinSpawnDistance(4)
|
||||
mobileTemplate.setMaxSpawnDistance(8)
|
||||
mobileTemplate.setDeathblow(True)
|
||||
mobileTemplate.setSocialGroup("imperial")
|
||||
mobileTemplate.setAssistRange(12)
|
||||
mobileTemplate.setStalker(False)
|
||||
mobileTemplate.setFaction("imperial")
|
||||
mobileTemplate.setFactionStatus(1)
|
||||
|
||||
templates = Vector()
|
||||
templates.add('object/mobile/shared_dressed_stormtrooper_m.iff')
|
||||
mobileTemplate.setTemplates(templates)
|
||||
|
||||
weaponTemplates = Vector()
|
||||
weapontemplate = WeaponTemplate('object/weapon/ranged/carbine/shared_carbine_e11.iff', 1, 1.0)
|
||||
weaponTemplates.add(weapontemplate)
|
||||
#mobileTemplate.setWeaponTemplateVector(weaponTemplates)
|
||||
|
||||
attacks = Vector()
|
||||
#mobileTemplate.setDefaultAttack('rangedshot')
|
||||
#mobileTemplate.setAttacks(attacks)
|
||||
|
||||
core.spawnService.addMobileTemplate('eow_fbase_stormtrooper', mobileTemplate)
|
||||
return
|
||||
@@ -8,5 +8,5 @@ def addSpawnArea(core):
|
||||
dynamicGroups.add('thunes_1')
|
||||
dynamicGroups.add('kunga_central_group_1')
|
||||
dynamicGroups.add('huurton_group_1')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, 1567, -1585, 2293, 'dantooine')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, 1064, -839, 2273, 'dantooine')
|
||||
return
|
||||
|
||||
@@ -8,5 +8,5 @@ def addSpawnArea(core):
|
||||
dynamicGroups.add('piket_longhorn_group_1')
|
||||
dynamicGroups.add('huurton_group_2')
|
||||
dynamicGroups.add('kunga_central_group_1')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, -1607, 32, 2129, 'dantooine')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, -2539, 716, 2109, 'dantooine')
|
||||
return
|
||||
|
||||
@@ -5,5 +5,5 @@ from java.util import Vector
|
||||
def addSpawnArea(core):
|
||||
dynamicGroups = Vector()
|
||||
dynamicGroups.add('voritors_east_group_1')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, 6236, -2015, 2437, 'dantooine')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, 5713, -1146, 2416, 'dantooine')
|
||||
return
|
||||
|
||||
@@ -6,5 +6,5 @@ def addSpawnArea(core):
|
||||
dynamicGroups = Vector()
|
||||
dynamicGroups.add('voritors_east_group_1')
|
||||
dynamicGroups.add('jantas_nw_group_1')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, 5581, -6603, 2560, 'dantooine')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, 5324, -5775, 2560, 'dantooine')
|
||||
return
|
||||
|
||||
@@ -7,5 +7,5 @@ def addSpawnArea(core):
|
||||
dynamicGroups.add('piket_plains_walker_group')
|
||||
dynamicGroups.add('quenker_relic_reaper_group')
|
||||
dynamicGroups.add('thune_group_2')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, 4106, 646, 2682, 'dantooine')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, 3461, 1331, 2662, 'dantooine')
|
||||
return
|
||||
|
||||
@@ -2,5 +2,5 @@
|
||||
import sys
|
||||
|
||||
def addSpawnArea(core):
|
||||
core.spawnService.addLairSpawnArea('mixed_lair_group_1', -3450, -2793, 1024, 'dantooine')
|
||||
core.spawnService.addLairSpawnArea('mixed_lair_group_1', -4014, -1966, 1024, 'dantooine')
|
||||
return
|
||||
|
||||
@@ -2,5 +2,5 @@
|
||||
import sys
|
||||
|
||||
def addSpawnArea(core):
|
||||
core.spawnService.addLairSpawnArea('mixed_lair_group_1', 748, 1711, 1024, 'dantooine')
|
||||
core.spawnService.addLairSpawnArea('mixed_lair_group_1', 0, 2355, 1024, 'dantooine')
|
||||
return
|
||||
|
||||
@@ -7,5 +7,5 @@ def addSpawnArea(core):
|
||||
dynamicGroups.add('force_sensitives_wild_1')
|
||||
dynamicGroups.add('graul_mauler_nw_group_1')
|
||||
dynamicGroups.add('voritors_wild_1')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, 891, 6135, 1986, 'dantooine')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, 61, 6615, 1966, 'dantooine')
|
||||
return
|
||||
|
||||
@@ -8,5 +8,5 @@ def addSpawnArea(core):
|
||||
dynamicGroups.add('quenker_group_south_1')
|
||||
dynamicGroups.add('mokk_group_1')
|
||||
dynamicGroups.add('bol_group_1')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, -501, 3104, 1085, 'dantooine')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, -1433, 3809, 1064, 'dantooine')
|
||||
return
|
||||
|
||||
@@ -8,5 +8,5 @@ def addSpawnArea(core):
|
||||
dynamicGroups.add('huurton_group_1')
|
||||
dynamicGroups.add('bol_group_1')
|
||||
dynamicGroups.add('quenker_group_south_1')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, 1710, 3739, 1208, 'dantooine')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, 778, 4280, 1187, 'dantooine')
|
||||
return
|
||||
|
||||
@@ -7,5 +7,5 @@ def addSpawnArea(core):
|
||||
dynamicGroups.add('voritor_nw_group_1')
|
||||
dynamicGroups.add('graul_mauler_nw_group_1')
|
||||
dynamicGroups.add('jantas_nw_group_1')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, -4064, 4497, 3235, 'dantooine')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, -4751, 4935, 3215, 'dantooine')
|
||||
return
|
||||
|
||||
@@ -2,5 +2,5 @@
|
||||
import sys
|
||||
|
||||
def addSpawnArea(core):
|
||||
core.spawnService.addLairSpawnArea('mixed_lair_group_1', 2017, -6869, 1024, 'dantooine')
|
||||
core.spawnService.addLairSpawnArea('mixed_lair_group_1', 1699, -6471, 1024, 'dantooine')
|
||||
return
|
||||
|
||||
@@ -6,5 +6,5 @@ def addSpawnArea(core):
|
||||
dynamicGroups = Vector()
|
||||
dynamicGroups.add('huurton_group_1')
|
||||
dynamicGroups.add('quenker_group_south_1')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, 2079, -4268, 2232, 'dantooine')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, 1904, -3624, 2211, 'dantooine')
|
||||
return
|
||||
|
||||
@@ -10,5 +10,5 @@ def addSpawnArea(core):
|
||||
dynamicGroups.add('thune_group_2')
|
||||
dynamicGroups.add('bol_group_1')
|
||||
dynamicGroups.add('voritors_wild_1')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, -1586, -7688, 2621, 'dantooine')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, -2109, -7045, 2600, 'dantooine')
|
||||
return
|
||||
|
||||
@@ -8,5 +8,5 @@ def addSpawnArea(core):
|
||||
dynamicGroups.add('voritors_wild_1')
|
||||
dynamicGroups.add('quenker_relic_reaper_group')
|
||||
dynamicGroups.add('graul_mauler_nw_group_1')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, -5354, -4759, 2211, 'dantooine')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, -5898, -4218, 2191, 'dantooine')
|
||||
return
|
||||
|
||||
@@ -7,5 +7,5 @@ def addSpawnArea(core):
|
||||
dynamicGroups.add('kunga_central_group_1')
|
||||
dynamicGroups.add('piket_longhorn_group_1')
|
||||
dynamicGroups.add('thunes_1')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, -5682, -540, 1986, 'dantooine')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, -6369, -102, 1966, 'dantooine')
|
||||
return
|
||||
|
||||
@@ -6,5 +6,5 @@ def addSpawnArea(core):
|
||||
dynamicGroups = Vector()
|
||||
dynamicGroups.add('force_sensitives_wild_1')
|
||||
dynamicGroups.add('dark_jedi_wild_1')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, 5233, 4722, 2580, 'dantooine')
|
||||
core.spawnService.addDynamicSpawnArea(dynamicGroups, 4362, 5488, 2560, 'dantooine')
|
||||
return
|
||||
|
||||
@@ -17,10 +17,14 @@ def addPlanetSpawns(core, planet):
|
||||
hunter11 = stcSvc.spawnObject('dark_force_crystal_hunter', 'dantooine', long(8535487), float(80.34), float(-77.29), float(-92.77), float(-0.2), float(0.97))
|
||||
hunter12 = stcSvc.spawnObject('dark_force_crystal_hunter', 'dantooine', long(8535487), float(80.34), float(-77.29), float(-92.77), float(-0.2), float(0.97))
|
||||
objSvc = core.objectService
|
||||
magSeal1 = objSvc.getObject(200335); #(200336-1)
|
||||
lootPoolNames_1 = ['Junk']
|
||||
lootPoolChances_1 = [100]
|
||||
lootGroupChance_1 = 90
|
||||
magSeal1.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1)
|
||||
lotSvc = core.lootService
|
||||
lotSvc.handleContainer(actor,200335,'Junk','dantooine')
|
||||
magSeal1 = objSvc.getObject(200335); #(200336-1)
|
||||
if magSeal1 != None:
|
||||
lootPoolNames_1 = ['Junk']
|
||||
lootPoolChances_1 = [100]
|
||||
lootGroupChance_1 = 90
|
||||
magSeal1.addToLootGroups(lootPoolNames_1,lootPoolChances_1,lootGroupChance_1)
|
||||
lotSvc = core.lootService
|
||||
lotSvc.handleContainer(200335,'Junk','dantooine')
|
||||
|
||||
return
|
||||
|
||||
@@ -6,7 +6,26 @@ def addPlanetSpawns(core, planet):
|
||||
stcSvc = core.staticService
|
||||
objSvc = core.objectService
|
||||
|
||||
zefAndo = stcSvc.spawnObject('object/mobile/shared_dressed_legacy_zef.iff', 'tatooine', long(0), float(-2574.9), float(0), float(-5516.7), float(0), float(0))
|
||||
zefAndo.setCustomName2('Zef Ando')
|
||||
zefAndo.setOptionsBitmask(256)
|
||||
stormtrooper1 = stcSvc.spawnObject('eow_fbase_stormtrooper', 'dantooine', long(0), float(-4211), float(3), float(-2384), float(0.011), float(0.999))
|
||||
stormtrooper2 = stcSvc.spawnObject('eow_fbase_stormtrooper', 'dantooine', long(0), float(-4212), float(3), float(-2384), float(0.011), float(0.999))
|
||||
stormtrooper3 = stcSvc.spawnObject('eow_fbase_stormtrooper', 'dantooine', long(0), float(-4211), float(3), float(-2386), float(0.011), float(0.999))
|
||||
stormtrooper4 = stcSvc.spawnObject('eow_fbase_stormtrooper', 'dantooine', long(0), float(-4212), float(3), float(-2386), float(0.011), float(0.999))
|
||||
stormtrooper5 = stcSvc.spawnObject('eow_fbase_stormtrooper', 'dantooine', long(0), float(-4212), float(3), float(-2388), float(0.011), float(0.999))
|
||||
|
||||
stormtrooper6 = stcSvc.spawnObject('eow_fbase_stormtrooper', 'dantooine', long(0), float(-4229), float(3), float(-2394), float(0.703), float(0.710))
|
||||
corporal1 = stcSvc.spawnObject('eow_fbase_imperial_corporal', 'dantooine', long(0), float(-4228), float(3), float(-2395), float(0.703), float(0.710))
|
||||
corporal2 = stcSvc.spawnObject('eow_fbase_imperial_corporal', 'dantooine', long(0), float(-4230), float(3), float(-2394), float(0.703), float(0.710))
|
||||
|
||||
recruiter1 = stcSvc.spawnObject('object/mobile/shared_dressed_imperial_officer_f.iff', 'dantooine', long(0), float(-4198), float(3), float(-2411), float(0.819), float(-0.572))
|
||||
|
||||
atst1 = stcSvc.spawnObject('object/mobile/shared_atst.iff', 'dantooine', long(0), float(-4291), float(3), float(-2433), float(0.819), float(-0.572))
|
||||
atst2 = stcSvc.spawnObject('object/mobile/shared_atst.iff', 'dantooine', long(0), float(-4154), float(3), float(-2383), float(0.264), float(0.964))
|
||||
|
||||
r5u0 = stcSvc.spawnObject('object/creature/npc/droid/shared_r4_base.iff', 'dantooine', long(0), float(-4231), float(3), float(-2363), float(0.264), float(0.964))
|
||||
r4h3 = stcSvc.spawnObject('object/creature/npc/droid/shared_r5_base.iff', 'dantooine', long(0), float(-4215), float(3), float(-2363), float(0.264), float(0.964))
|
||||
|
||||
commoner1 = stcSvc.spawnObject('object/mobile/shared_dressed_commoner_fat_human_male_01.iff', 'dantooine', long(0), float(-4224), float(3), float(-2366), float(0.264), float(0.964))
|
||||
commoner1.setOptionsBitmask(256)
|
||||
commoner2 = stcSvc.spawnObject('object/mobile/shared_dressed_commoner_fat_human_female_01.iff', 'dantooine', long(0), float(-4238), float(3), float(-2365), float(0.264), float(0.964))
|
||||
commoner2.setOptionsBitmask(256)
|
||||
return
|
||||
|
||||
@@ -88,11 +88,6 @@ public class DevService implements INetworkDispatch {
|
||||
suiOptions.put((long) 26, "Installations");
|
||||
suiOptions.put((long) 110, "Survey Devices");
|
||||
if(creature.getPlayerObject().getProfession().equals("bounty_hunter_1a")) suiOptions.put((long) 123, "Tracking Droids");
|
||||
<<<<<<< HEAD
|
||||
if(creature.getClient().isGM()) suiOptions.put((long) 120, "House Deeds");
|
||||
if(creature.getClient().isGM()) suiOptions.put((long) 125, "Crafting Tools");
|
||||
if(creature.getClient().isGM()) suiOptions.put((long) 130, "Vehicle Deeds");
|
||||
=======
|
||||
if (creature.getClient().isGM()) {
|
||||
suiOptions.put((long) 120, "House Deeds");
|
||||
suiOptions.put((long) 125, "Crafting Tools");
|
||||
@@ -101,7 +96,6 @@ public class DevService implements INetworkDispatch {
|
||||
suiOptions.put((long) 140, "Guild Registry Device (PDA)");
|
||||
}
|
||||
|
||||
>>>>>>> origin/master
|
||||
break;
|
||||
case 3: // [Items] Weapons
|
||||
suiOptions.put((long) 30, "Jedi Weapons");
|
||||
@@ -148,17 +142,14 @@ public class DevService implements INetworkDispatch {
|
||||
case 11: // Locations
|
||||
suiOptions.put((long) 122, "Teleport to Jedi Ruins");
|
||||
suiOptions.put((long) 124, "Teleport to Mos Eisley");
|
||||
<<<<<<< HEAD
|
||||
suiOptions.put((long) 153, "Teleport to Force Crystal Hunter's Cave");
|
||||
suiOptions.put((long) 121, "Teleport to Sandbox City");
|
||||
=======
|
||||
if (creature.getClient().isGM()) {
|
||||
suiOptions.put((long) 164, "Teleport to Mining Outpost");
|
||||
suiOptions.put((long) 165, "Teleport to Spawn Area #1");
|
||||
suiOptions.put((long) 166, "Teleport to Imperial Op");
|
||||
suiOptions.put((long) 167, "Teleport to Rebel Base ");
|
||||
suiOptions.put((long) 153, "Teleport to Force Crystal Hunter's Cave");
|
||||
suiOptions.put((long) 121, "Teleport to Sandbox City");
|
||||
}
|
||||
>>>>>>> origin/master
|
||||
break;
|
||||
|
||||
}
|
||||
@@ -1274,6 +1265,10 @@ public class DevService implements INetworkDispatch {
|
||||
case 166:
|
||||
core.simulationService.transferToPlanet(player, core.terrainService.getPlanetByName("dantooine"), new Point3D(-4211,18,-2349), player.getOrientation(), null);
|
||||
return;
|
||||
|
||||
case 167:
|
||||
core.simulationService.transferToPlanet(player, core.terrainService.getPlanetByName("dantooine"), new Point3D(-4211,18,-2349), player.getOrientation(), null);
|
||||
return;
|
||||
|
||||
case 123:
|
||||
TangibleObject arakydDroids = (TangibleObject) core.objectService.createObject("object/tangible/mission/shared_mission_bounty_droid_probot.iff", planet);
|
||||
@@ -1296,17 +1291,15 @@ public class DevService implements INetworkDispatch {
|
||||
inventory.add(swoopDeed);
|
||||
inventory.add(av21deed);
|
||||
return;
|
||||
<<<<<<< HEAD
|
||||
case 153:
|
||||
Point3D position = new Point3D(-6222,1,7380);
|
||||
core.simulationService.transferToPlanet(player, core.terrainService.getPlanetByName("dantooine"), position, player.getOrientation(), null);
|
||||
=======
|
||||
|
||||
case 140:
|
||||
TangibleObject guildRegistry = (TangibleObject) core.objectService.createObject("object/tangible/furniture/technical/shared_guild_registry_initial.iff", planet);
|
||||
inventory.add(guildRegistry);
|
||||
>>>>>>> origin/master
|
||||
return;
|
||||
|
||||
case 153:
|
||||
Point3D position = new Point3D(-6222,1,7380);
|
||||
core.simulationService.transferToPlanet(player, core.terrainService.getPlanetByName("dantooine"), position, player.getOrientation(), null);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -1310,7 +1310,7 @@ public class LootService implements INetworkDispatch {
|
||||
}
|
||||
|
||||
|
||||
public void handleContainer(SWGObject actor, int containerID, String lootPool, String planetName){
|
||||
public void handleContainer(int containerID, String lootPool, String planetName){
|
||||
|
||||
long objectId = containerID + 0xFFFFFFFF;
|
||||
TangibleObject containerObject = (TangibleObject) core.objectService.getObject(objectId);
|
||||
|
||||
@@ -339,6 +339,8 @@ public class SimulationService implements INetworkDispatch {
|
||||
return;
|
||||
}
|
||||
|
||||
CreatureObject creature = (CreatureObject) client.getParent();
|
||||
|
||||
CreatureObject object = (CreatureObject) client.getParent();
|
||||
|
||||
if (core.mountService.isMounted(object)) {
|
||||
@@ -358,8 +360,11 @@ public class SimulationService implements INetworkDispatch {
|
||||
move(object, oldPos.x, oldPos.z, newPos.x, newPos.z);
|
||||
Quaternion newOrientation = new Quaternion(dataTransform.getWOrientation(), dataTransform.getXOrientation(), dataTransform.getYOrientation(), dataTransform.getZOrientation());
|
||||
object.setPosition(newPos);
|
||||
creature.setPosition(newPos);
|
||||
object.setOrientation(newOrientation);
|
||||
creature.setOrientation(newOrientation);
|
||||
object.setMovementCounter(dataTransform.getMovementCounter());
|
||||
creature.setMovementCounter(dataTransform.getMovementCounter());
|
||||
}
|
||||
if(object.getContainer() != null) {
|
||||
object.getContainer()._remove(object);
|
||||
@@ -400,9 +405,25 @@ public class SimulationService implements INetworkDispatch {
|
||||
if(!updateAwareObjects.contains(obj) && obj != object && !object.getAwareObjects().contains(obj) && obj.getContainer() != object && obj.isInQuadtree()) {
|
||||
if(obj.getAttachment("bigSpawnRange") == null && obj.getWorldPosition().getDistance2D(newPos) > 200)
|
||||
continue;
|
||||
object.makeAware(obj);
|
||||
if(obj.getClient() != null)
|
||||
obj.makeAware(object);
|
||||
//object.makeAware(obj);
|
||||
|
||||
if (object.getOption(Options.MOUNT)){
|
||||
CreatureObject owner = (CreatureObject) core.objectService.getObject(object.getOwnerId());
|
||||
owner.makeAware(obj);
|
||||
}
|
||||
else {
|
||||
object.makeAware(obj);
|
||||
}
|
||||
|
||||
if(obj.getClient() != null){
|
||||
if (object.getOption(Options.MOUNT)){
|
||||
CreatureObject owner = (CreatureObject) core.objectService.getObject(object.getOwnerId());
|
||||
obj.makeAware(owner);
|
||||
}
|
||||
else {
|
||||
obj.makeAware(object);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -200,10 +200,20 @@ public class TerrainService {
|
||||
}
|
||||
|
||||
if (loaded && config.getInt("LOAD.BUILDOUT_OBJECTS") > 0) {
|
||||
try {
|
||||
core.objectService.loadBuildoutObjects(planet);
|
||||
} catch (InstantiationException | IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
if (! config.keyExists("LOAD.BUILDOUT_ONLY_FOR")){
|
||||
try {
|
||||
core.objectService.loadBuildoutObjects(planet);
|
||||
} catch (InstantiationException | IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
} else {
|
||||
if (planet.getName().equals(config.getString("LOAD.BUILDOUT_ONLY_FOR"))){
|
||||
try {
|
||||
core.objectService.loadBuildoutObjects(planet);
|
||||
} catch (InstantiationException | IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -25,6 +25,7 @@ import java.util.Collections;
|
||||
import java.util.Random;
|
||||
import java.util.Vector;
|
||||
|
||||
import resources.datatables.Options;
|
||||
import resources.datatables.Posture;
|
||||
import main.NGECore;
|
||||
import net.engio.mbassy.listener.Handler;
|
||||
@@ -60,14 +61,14 @@ public class DynamicSpawnArea extends SpawnArea {
|
||||
|
||||
SWGObject object = event.object;
|
||||
// ToDo: Mounted players must be handled too
|
||||
System.out.println("Entering object " + object.getClass().getName());
|
||||
//System.out.println("Entering object " + object.getClass().getName());
|
||||
if(object == null || !(object instanceof CreatureObject))
|
||||
return;
|
||||
|
||||
|
||||
CreatureObject creature = (CreatureObject) object;
|
||||
|
||||
if(creature.getSlottedObject("ghost") == null)
|
||||
if(creature.getSlottedObject("ghost") == null && !creature.getOption(Options.MOUNT))
|
||||
return;
|
||||
|
||||
creature.getEventBus().subscribe(this);
|
||||
@@ -121,7 +122,7 @@ public class DynamicSpawnArea extends SpawnArea {
|
||||
|
||||
CreatureObject creature = (CreatureObject) object;
|
||||
|
||||
if(creature.getSlottedObject("ghost") == null)
|
||||
if(creature.getSlottedObject("ghost") == null && !creature.getOption(Options.MOUNT))
|
||||
return;
|
||||
|
||||
creature.getEventBus().unsubscribe(this);
|
||||
@@ -133,12 +134,15 @@ public class DynamicSpawnArea extends SpawnArea {
|
||||
|
||||
SWGObject object = event.object;
|
||||
|
||||
if(object == null || !(object instanceof CreatureObject) || object.getContainer() != null)
|
||||
//if(object == null || !(object instanceof CreatureObject) || object.getContainer() != null)
|
||||
// return;
|
||||
// Mounts should not be excluded to trigger spawns as it was on live also
|
||||
if(object == null || !(object instanceof CreatureObject))
|
||||
return;
|
||||
|
||||
CreatureObject creature = (CreatureObject) object;
|
||||
|
||||
if(creature.getSlottedObject("ghost") == null)
|
||||
//System.out.println("MOUNT " + creature.getOption(Options.MOUNT) + " name " + creature.getTemplate());
|
||||
if(creature.getSlottedObject("ghost") == null && !creature.getOption(Options.MOUNT))
|
||||
return;
|
||||
|
||||
if (spawnGroups==null){
|
||||
@@ -162,7 +166,8 @@ public class DynamicSpawnArea extends SpawnArea {
|
||||
this.spawnGroup = spawnGroups.get(index);
|
||||
|
||||
Vector<CreatureObject> groupMembers = new Vector<CreatureObject>();
|
||||
Point3D randomGroupPosition = getRandomPosition(creature.getWorldPosition(), 32, 100);
|
||||
//Point3D randomGroupPosition = getRandomPosition(creature.getWorldPosition(), 32, 100);
|
||||
Point3D randomGroupPosition = getRandomPosition(creature.getWorldPosition(), 32, spawnGroup.getMinSpawnDistance()+10);
|
||||
int spawnCount = spawnGroup.getGroupMembersNumber();
|
||||
if (spawnCount<0){
|
||||
int spawnCount2 = 1;
|
||||
@@ -296,6 +301,7 @@ public class DynamicSpawnArea extends SpawnArea {
|
||||
for(CreatureObject mobile : mobiles) {
|
||||
if(mobile.getWorldPosition().getDistance(randomPosition) < spawnGroup.getMinSpawnDistance() && ! groupMembers.contains(mobile)){
|
||||
minDistViolated = true; // Distance to other nearby groups
|
||||
//System.out.println("minDistViolated " + mobile.getWorldPosition().getDistance(randomPosition) + "mobile: " + mobile.getTemplate());
|
||||
}
|
||||
}
|
||||
if (minDistViolated)
|
||||
@@ -318,7 +324,11 @@ public class DynamicSpawnArea extends SpawnArea {
|
||||
CreatureObject spawnedCreature = core.spawnService.spawnCreature(template, getPlanet().getName(), 0, randomPosition.x, randomPosition.y, randomPosition.z);
|
||||
if(spawnedCreature != null){
|
||||
mobiles.add(spawnedCreature);
|
||||
} else {System.out.println("Creature not spawned" + template);}
|
||||
System.err.println("Creature ADDED " + spawnedCreature.getTemplate());
|
||||
} else
|
||||
{
|
||||
System.out.println("Creature not spawned" + template);
|
||||
}
|
||||
|
||||
return spawnedCreature;
|
||||
}
|
||||
|
||||
@@ -29,6 +29,7 @@ import net.engio.mbassy.listener.Handler;
|
||||
import resources.common.collidables.AbstractCollidable;
|
||||
import resources.common.collidables.AbstractCollidable.EnterEvent;
|
||||
import resources.common.collidables.AbstractCollidable.ExitEvent;
|
||||
import resources.datatables.Options;
|
||||
import resources.objects.creature.CreatureObject;
|
||||
import services.SimulationService.MoveEvent;
|
||||
import services.TerrainService;
|
||||
@@ -115,7 +116,7 @@ public class LairSpawnArea extends SpawnArea {
|
||||
|
||||
CreatureObject creature = (CreatureObject) object;
|
||||
|
||||
if(creature.getSlottedObject("ghost") == null)
|
||||
if(creature.getSlottedObject("ghost") == null && !creature.getOption(Options.MOUNT))
|
||||
return;
|
||||
|
||||
spawnLair(creature);
|
||||
@@ -134,7 +135,7 @@ public class LairSpawnArea extends SpawnArea {
|
||||
|
||||
CreatureObject creature = (CreatureObject) object;
|
||||
|
||||
if(creature.getSlottedObject("ghost") == null)
|
||||
if(creature.getSlottedObject("ghost") == null && !creature.getOption(Options.MOUNT))
|
||||
return;
|
||||
|
||||
creature.getEventBus().unsubscribe(this);
|
||||
@@ -146,12 +147,15 @@ public class LairSpawnArea extends SpawnArea {
|
||||
|
||||
SWGObject object = event.object;
|
||||
|
||||
if(object == null || !(object instanceof CreatureObject) || object.getContainer() != null)
|
||||
//if(object == null || !(object instanceof CreatureObject) || object.getContainer() != null)
|
||||
// return;
|
||||
|
||||
if(object == null || !(object instanceof CreatureObject))
|
||||
return;
|
||||
|
||||
CreatureObject creature = (CreatureObject) object;
|
||||
|
||||
if(creature.getSlottedObject("ghost") == null)
|
||||
if(creature.getSlottedObject("ghost") == null && !creature.getOption(Options.MOUNT))
|
||||
return;
|
||||
|
||||
if(new Random().nextFloat() <= 0.05)
|
||||
|
||||
@@ -116,8 +116,12 @@ public class SpawnService {
|
||||
if(level != -1)
|
||||
creature.setLevel(level);
|
||||
else {
|
||||
creature.setLevel(mobileTemplate.getLevel());
|
||||
level = mobileTemplate.getLevel();
|
||||
if (mobileTemplate.getLevel()!=0){
|
||||
level = mobileTemplate.getLevel();
|
||||
creature.setLevel(level);
|
||||
} else {
|
||||
level = -1;
|
||||
}
|
||||
}
|
||||
|
||||
if (mobileTemplate.getMinLevel()!=0 && mobileTemplate.getMaxLevel()!=0 && level == -1){
|
||||
|
||||
Reference in New Issue
Block a user