From 12504fe320e0d5b797b02911bc5cf96e308dab62 Mon Sep 17 00:00:00 2001 From: Treeku Date: Mon, 1 Sep 2014 02:19:12 +0100 Subject: [PATCH 1/4] Fixed issue where NPC weapon was equipped wrongly. --- src/services/spawn/SpawnService.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/services/spawn/SpawnService.java b/src/services/spawn/SpawnService.java index e790004d..feeeb648 100644 --- a/src/services/spawn/SpawnService.java +++ b/src/services/spawn/SpawnService.java @@ -106,8 +106,8 @@ public class SpawnService { /*if(mobileTemplate.getCustomWeapon() != null) { - creature.addObjectToEquipList(mobileTemplate.getCustomWeapon()); creature.add(mobileTemplate.getCustomWeapon()); + creature.addObjectToEquipList(mobileTemplate.getCustomWeapon()); creature.setWeaponId(mobileTemplate.getCustomWeapon().getObjectID()); }*/ @@ -183,12 +183,12 @@ public class SpawnService { defaultWeapon.setMinDamage(creature.getLevel() * 22); } - creature.addObjectToEquipList(defaultWeapon); creature.add(defaultWeapon); + creature.addObjectToEquipList(defaultWeapon); creature.setWeaponId(defaultWeapon.getObjectID()); - creature.addObjectToEquipList(inventory); creature.add(inventory); - + creature.addObjectToEquipList(inventory); + int customHealth = mobileTemplate.getHealth(); if(difficulty > 0 && customHealth == 0) { if(difficulty == 1) { @@ -282,8 +282,8 @@ public class SpawnService { /*if(mobileTemplate.getCustomWeapon() != null) { - creature.addObjectToEquipList(mobileTemplate.getCustomWeapon()); creature.add(mobileTemplate.getCustomWeapon()); + creature.addObjectToEquipList(mobileTemplate.getCustomWeapon()); creature.setWeaponId(mobileTemplate.getCustomWeapon().getObjectID()); }*/ @@ -368,11 +368,11 @@ public class SpawnService { defaultWeapon.setMinDamage(creature.getLevel() * 22); } - creature.addObjectToEquipList(defaultWeapon); creature.add(defaultWeapon); + creature.addObjectToEquipList(defaultWeapon); creature.setWeaponId(defaultWeapon.getObjectID()); - creature.addObjectToEquipList(inventory); creature.add(inventory); + creature.addObjectToEquipList(inventory); int customHealth = mobileTemplate.getHealth(); if(difficulty > 0 && customHealth == 0) { From e770daeae84dc24323afc62ca2e85db261389d30 Mon Sep 17 00:00:00 2001 From: Treeku Date: Mon, 1 Sep 2014 19:26:08 +0100 Subject: [PATCH 2/4] Fixed a crash when removing.objects from SWGLists. --- src/resources/objects/SWGList.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/resources/objects/SWGList.java b/src/resources/objects/SWGList.java index 790232f2..383394cf 100644 --- a/src/resources/objects/SWGList.java +++ b/src/resources/objects/SWGList.java @@ -233,7 +233,7 @@ public class SWGList extends Delta implements List { int index = list.indexOf(o); if (list.remove(o)) { - queue(item(1, index, null, true, false)); + queue(item(0, index, null, true, false)); return true; } else { return false; @@ -245,7 +245,7 @@ public class SWGList extends Delta implements List { synchronized(objectMutex) { E element = list.remove(index); - queue(item(1, index, null, true, false)); + queue(item(0, index, null, true, false)); return (E) element; } From c32f2980dcdb07a380496d32ee266454c8af7a22 Mon Sep 17 00:00:00 2001 From: Treeku Date: Mon, 1 Sep 2014 19:44:43 +0100 Subject: [PATCH 3/4] Fixed potential client null with appearance items. --- scripts/commands/transferitemarmor.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/scripts/commands/transferitemarmor.py b/scripts/commands/transferitemarmor.py index c78c862c..af54cb57 100644 --- a/scripts/commands/transferitemarmor.py +++ b/scripts/commands/transferitemarmor.py @@ -40,13 +40,13 @@ def run(core, actor, target, commandString): if object != None: actor.transferTo(actor, oldContainer, object) - oldContainer.transferTo(actor, container, target) - if oldContainer == actor.getSlottedObject('appearance_inventory'): actor.removeObjectFromAppearanceEquipList(target) - + + oldContainer.transferTo(actor, container, target) + if container == actor.getSlottedObject('appearance_inventory'): actor.addObjectToAppearanceEquipList(target) - + return - \ No newline at end of file + From b0ada28769e783c73e81ef3d67672f39246e0ec6 Mon Sep 17 00:00:00 2001 From: Treeku Date: Mon, 1 Sep 2014 19:46:29 +0100 Subject: [PATCH 4/4] Fixed potential client null with appearance items. --- scripts/commands/transferitemmisc.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/scripts/commands/transferitemmisc.py b/scripts/commands/transferitemmisc.py index d1dee497..6036bfb5 100644 --- a/scripts/commands/transferitemmisc.py +++ b/scripts/commands/transferitemmisc.py @@ -78,13 +78,13 @@ def run(core, actor, target, commandString): if object != None: container.transferTo(actor, container, object) - - oldContainer.transferTo(actor, container, target) if oldContainer == actor.getSlottedObject('appearance_inventory'): actor.removeObjectFromAppearanceEquipList(target) + oldContainer.transferTo(actor, container, target) + if container == actor.getSlottedObject('appearance_inventory'): - actor.addObjectToAppearanceEquipList(target) - + actor.addObjectToAppearanceEquipList(target) + return