From 820dc765e806c4c0b37899c09e2c9c336e094665 Mon Sep 17 00:00:00 2001 From: Ziggeh Date: Sun, 13 Jul 2014 17:57:39 +0200 Subject: [PATCH 1/4] Removed item colouring for admins --- src/services/sui/SUIService.java | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/src/services/sui/SUIService.java b/src/services/sui/SUIService.java index 164f8ef9..5d6118d5 100644 --- a/src/services/sui/SUIService.java +++ b/src/services/sui/SUIService.java @@ -148,12 +148,6 @@ public class SUIService implements INetworkDispatch { sendRadial(owner, target, request.getRadialOptions(), request.getRadialCount()); return; } - - if(target.getTemplate().contains("object/tangible/wearables") && ((CreatureObject)owner).hasAbility("admin")) - { - core.scriptService.callScript("scripts/radial/", "item/recolorable", "createRadial", core, owner, target, request.getRadialOptions()); - if(getRadialFilename(target).equals("default")) sendRadial(owner, target, request.getRadialOptions(), request.getRadialCount()); - } core.scriptService.callScript("scripts/radial/", getRadialFilename(target), "createRadial", core, owner, target, request.getRadialOptions()); if(getRadialFilename(target).equals("default")) @@ -195,12 +189,6 @@ public class SUIService implements INetworkDispatch { core.scriptService.callScript("scripts/radial/", "structure/moveable", "handleSelection", core, owner, target, objMenuSelect.getSelection()); return; } - - - if(target.getTemplate().contains("object/tangible/wearables") && ((CreatureObject)owner).hasAbility("admin")) - { - core.scriptService.callScript("scripts/radial/", "item/recolorable", "handleSelection", core, owner, target, objMenuSelect.getSelection()); - } core.scriptService.callScript("scripts/radial/", getRadialFilename(target), "handleSelection", core, owner, target, objMenuSelect.getSelection()); From 71f66c0556f1342001b2be70eb3b8fed2dc7c8fc Mon Sep 17 00:00:00 2001 From: Ziggeh Date: Sun, 13 Jul 2014 17:59:49 +0200 Subject: [PATCH 2/4] Removed tertiary colouring from the recolour radial Only the SE goggles used this and they could only have two colours modified. --- scripts/radial/item/recolorable.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/scripts/radial/item/recolorable.py b/scripts/radial/item/recolorable.py index 6c16964f..bd13e64b 100644 --- a/scripts/radial/item/recolorable.py +++ b/scripts/radial/item/recolorable.py @@ -4,7 +4,6 @@ import sys def createRadial(core, owner, target, radials): radials.add(RadialOptions(0, 98, 0, 'Modify primary color')) radials.add(RadialOptions(0, 99, 0, 'Modify secondary color')) - radials.add(RadialOptions(0, 100, 0, 'Modify tertiary color')) return def handleSelection(core, owner, target, option): @@ -12,7 +11,5 @@ def handleSelection(core, owner, target, option): core.suiService.sendColorPicker(owner, target, '/private/index_color_1') if option == 99 and target: core.suiService.sendColorPicker(owner, target, '/private/index_color_2') - if option == 100 and target: - core.suiService.sendColorPicker(owner, target, '/private/index_color_3') return \ No newline at end of file From 02d03e2caac6ee7e634e426871bbea9e19ea16b4 Mon Sep 17 00:00:00 2001 From: Waverunner Date: Sun, 13 Jul 2014 14:21:17 -0400 Subject: [PATCH 3/4] Added a frog building outside of Mos Espa near West Shuttleport - spawns on server startup with 1 frog Removed frog from Mos Eisley Added "New Frog" option for GMs on CBT Added addToFrogAdminList argument for setGodMode for GMs - allows GMs to put down items inside the frog building (ie more frogs!) --- scripts/commands/setgodmode.py | 19 ++++++++++-- scripts/static_spawns/tatooine/tatooine.py | 2 +- src/main/NGECore.java | 2 +- src/services/DevService.java | 34 ++++++++++++++++++++-- src/services/SimulationService.java | 4 +-- 5 files changed, 53 insertions(+), 8 deletions(-) diff --git a/scripts/commands/setgodmode.py b/scripts/commands/setgodmode.py index 9874cbd3..b34f4cdb 100644 --- a/scripts/commands/setgodmode.py +++ b/scripts/commands/setgodmode.py @@ -50,9 +50,9 @@ def run(core, actor, target, commandString): core.playerService.grantLevel(actor, int(arg1)) elif command == 'setSpeed' and arg1: - actor.sendSystemMessage('Your speed was ' + str(actor.getSpeedMultiplierBase()) + '. Don\'t forget to set this back or it\'ll permanently imbalance your speed. Default without buffs or mods is 1.', 2) + #actor.sendSystemMessage("Your speed was " + str(actor.getSpeedMultiplierBase()) + ". Don\'t forget to set this back or it\'ll permanently imbalance your speed. Default without buffs or mods is 1.", 2) actor.setSpeedMultiplierBase(float(arg1)) - actor.sendSystemMessage('Your new speed is ' + str(actor.getSpeedMultiplierBase()) + '.', 2) + actor.sendSystemMessage('Your new speed is ' + arg1 + '.', 2) elif command == 'teleport' and arg2 and arg3 and arg4: position = Point3D(float(arg2), float(arg3), float(arg4)) @@ -146,10 +146,15 @@ def run(core, actor, target, commandString): planetName = actor.getPlanet().getName() actor.sendSystemMessage('Position.x : %s' % pos.x, 0) + print ('Position.x : %s' % pos.x, 0) actor.sendSystemMessage('Position.y : %s' % pos.y, 0) + print ('Position.y : %s' % pos.y, 0) actor.sendSystemMessage('Position.z : %s' % pos.z, 0) + print ('Position.z : %s' % pos.z, 0) actor.sendSystemMessage('Orientation.y : %s' % ori.y, 0) + print ('Orientation.y : %s' % ori.y, 0) actor.sendSystemMessage('Orientation.w : %s' % ori.w, 0) + print ('Orientation.w : %s' % ori.w, 0) if (actor.getContainer()): cid = actor.getContainer().getObjectID() cellid = cid @@ -185,4 +190,14 @@ def run(core, actor, target, commandString): playerObject.setCurrentRank(int(arg1)) print (playerObject.getCurrentRank()) return + + elif command == 'addToFrogAdminList': + frogBuilding = core.objectService.getObject(core.devService.getFrogBuildingId()) + + if frogBuilding is None: + return + + frogBuilding.addPlayerToAdminList(None, actor.getObjectID(), actor.getCustomName().split(' ')[0]) + actor.sendSystemMessage('You were added to the Admin list for the Frog Building.', 0) + return return diff --git a/scripts/static_spawns/tatooine/tatooine.py b/scripts/static_spawns/tatooine/tatooine.py index 9a45d308..6a723d35 100644 --- a/scripts/static_spawns/tatooine/tatooine.py +++ b/scripts/static_spawns/tatooine/tatooine.py @@ -10,7 +10,7 @@ def addPlanetSpawns(core, planet): ######################################################## stcSvc = core.staticService # Blue Frog: Uncomment only when needed for testing. - stcSvc.spawnObject('object/tangible/terminal/shared_terminal_character_builder.iff', 'tatooine', long(0), float(3525), float(4), float(-4801), float(0.70), float(0.71)) + #stcSvc.spawnObject('object/tangible/terminal/shared_terminal_character_builder.iff', 'tatooine', long(0), float(3525), float(4), float(-4801), float(0.70), float(0.71)) ######################################################## # DO NOT ADD ANYTHING ELSE TO THIS SCRIPT, PLEASE USE THE diff --git a/src/main/NGECore.java b/src/main/NGECore.java index 91f182ae..84a2a382 100644 --- a/src/main/NGECore.java +++ b/src/main/NGECore.java @@ -344,7 +344,6 @@ public class NGECore { skillModService = new SkillModService(this); equipmentService = new EquipmentService(this); entertainmentService = new EntertainmentService(this); - devService = new DevService(this); conversationService = new ConversationService(this); bazaarService = new BazaarService(this); housingService = new HousingService(this); @@ -561,6 +560,7 @@ public class NGECore { browserService = new BrowserService(this); //battlefieldService = new BattlefieldService(this); + devService = new DevService(this); DevLogQueuer devLogQueuer = new DevLogQueuer(); diff --git a/src/services/DevService.java b/src/services/DevService.java index e43ceb89..169da3c6 100644 --- a/src/services/DevService.java +++ b/src/services/DevService.java @@ -58,6 +58,7 @@ import engine.resources.container.NullPermissions; import engine.resources.objects.SWGObject; import engine.resources.scene.Planet; import engine.resources.scene.Point3D; +import engine.resources.scene.Quaternion; import engine.resources.service.INetworkDispatch; import engine.resources.service.INetworkRemoteEvent; @@ -65,9 +66,11 @@ import engine.resources.service.INetworkRemoteEvent; public class DevService implements INetworkDispatch { private NGECore core; - + private long frogBuildingId = 0; + public DevService(NGECore core) { this.core = core; + loadFrogBuilding(); } public void sendCharacterBuilderSUI(CreatureObject creature, int childMenu) @@ -82,6 +85,8 @@ public class DevService implements INetworkDispatch { suiOptions.put((long) 3, "Locations"); if (System.getProperty("user.name").equals("Charon")) suiOptions.put((long) 4, "Treasure chest test"); + if (creature.getClient().isGM()) + suiOptions.put((long) 200, "Get new CBT"); break; case 1: // Character suiOptions.put((long) 10, "Set combat level to 90"); @@ -214,7 +219,7 @@ public class DevService implements INetworkDispatch { //treasureContainer.add(droppedItem); return; - + // Character case 10: // Set combat level to 90 core.playerService.grantLevel(player, 90); // Commented out until fixed @@ -1359,6 +1364,11 @@ public class DevService implements INetworkDispatch { core.lootService.prepInv2(player); return; + case 200: + TangibleObject frog = (TangibleObject) core.objectService.createObject("object/tangible/terminal/shared_terminal_character_builder.iff", planet); + + inventory.add(frog); + return; } } }); @@ -1366,6 +1376,26 @@ public class DevService implements INetworkDispatch { core.suiService.openSUIWindow(window); } + private void loadFrogBuilding() { + BuildingObject building = (BuildingObject) core.objectService.createObject("object/building/tatooine/shared_association_hall_civilian_tatooine_02.iff", 0, core.terrainService.getPlanetByName("tatooine"), + new Point3D(-3308, 5, 2174), new Quaternion((float) 0.7323, 0, (float) 0.680961, 0)); + + core.simulationService.add(building, building.getPosition().x, building.getPosition().z); + + this.frogBuildingId = building.getObjectID(); + + building.setAttachment("structureOwner", 0); + + TangibleObject frog = (TangibleObject) core.objectService.createObject("object/tangible/terminal/shared_terminal_character_builder.iff", core.terrainService.getPlanetByID(building.getPlanetId())); + frog.setPosition(new Point3D((float)-1.10475, (float)0.51, (float)-4.3665)); + frog.setOrientation(new Quaternion((float) 0.9965, 0, (float)-0.09, 0)); + building.getCellByCellNumber(2).add(frog); + } + + public long getFrogBuildingId() { + return this.frogBuildingId; + } + @Override public void insertOpcodes(Map swgOpcodes, Map objControllerOpcodes) { } diff --git a/src/services/SimulationService.java b/src/services/SimulationService.java index 052e1b6c..3939b461 100644 --- a/src/services/SimulationService.java +++ b/src/services/SimulationService.java @@ -550,8 +550,8 @@ public class SimulationService implements INetworkDispatch { object.getContainer()._remove(object); if (object.getClient() == null) System.err.println("Client is null! This is a very strange error."); - if (object.getClient() != null && object.getClient().isGM() && parent != null && parent instanceof CellObject && parent.getContainer() != null) - object.sendSystemMessage("BuildingId - Dec: " + parent.getContainer().getObjectID() + " Hex: " + Long.toHexString(parent.getContainer().getObjectID()) + " CellNumber: " + ((CellObject) parent).getCellNumber(), DisplayType.Broadcast); + //if (object.getClient() != null && object.getClient().isGM() && parent != null && parent instanceof CellObject && parent.getContainer() != null) + //object.sendSystemMessage("BuildingId - Dec: " + parent.getContainer().getObjectID() + " Hex: " + Long.toHexString(parent.getContainer().getObjectID()) + " CellNumber: " + ((CellObject) parent).getCellNumber(), DisplayType.Broadcast); parent._add(object); } object.setPosition(newPos); From 5321b916ea4c958e3de593f8f4783396b9cc4239 Mon Sep 17 00:00:00 2001 From: Waverunner Date: Sun, 13 Jul 2014 14:57:05 -0400 Subject: [PATCH 4/4] Fixed Null Planet error from MissionObject --- src/resources/objects/mission/MissionObject.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/resources/objects/mission/MissionObject.java b/src/resources/objects/mission/MissionObject.java index cb1a855d..010d9654 100644 --- a/src/resources/objects/mission/MissionObject.java +++ b/src/resources/objects/mission/MissionObject.java @@ -80,7 +80,7 @@ public class MissionObject extends IntangibleObject implements Serializable { baseline.put("repeatCounter", 0); baseline.put("missionType", 0); baseline.put("targetName", ""); - baseline.put("waypoint", (WaypointObject) NGECore.getInstance().objectService.createObject("object/waypoint/base/shared_base_waypoint.iff", NGECore.getInstance().terrainService.getPlanetByID(0))); + baseline.put("waypoint", (WaypointObject) NGECore.getInstance().objectService.createObject("object/waypoint/base/shared_base_waypoint.iff", NGECore.getInstance().terrainService.getPlanetByID(1))); return baseline; }