DiornanR Posted December 30, 2023 Share Posted December 30, 2023 (edited) FIX Edited January 3 by DiornanR Link to comment Share on other sites More sharing options...
Kamish Posted February 18 Share Posted February 18 Who can help me adapt these lines to frozen or orion please, it's the only thing I'm missing, because several players enter and they all stay in the same area and can see each other Index: java/net/sf/l2j/gameserver/model/WorldObject.java =================================================================== --- java/net/sf/l2j/gameserver/model/WorldObject.java (revision 17) +++ java/net/sf/l2j/gameserver/model/WorldObject.java (working copy) @@ -15,6 +15,9 @@ import net.sf.l2j.gameserver.model.actor.Creature; import net.sf.l2j.gameserver.model.actor.Playable; import net.sf.l2j.gameserver.model.actor.Player; +import net.sf.l2j.gameserver.model.actor.instance.Fence; +import net.sf.l2j.gameserver.model.entity.events.instance.Instance; +import net.sf.l2j.gameserver.model.entity.events.instance.InstanceManager; import net.sf.l2j.gameserver.model.location.Location; import net.sf.l2j.gameserver.model.location.SpawnLocation; import net.sf.l2j.gameserver.model.zone.type.subtype.ZoneType; @@ -393,6 +396,11 @@ } } + for (WorldObject object : getDifferentInstanceObjects()) + { + object.removeKnownObject(this); + removeKnownObject(object); + } // For every new surrounding area NOT SHARED with old surrounding areas. for (WorldRegion region : newAreas) { @@ -405,9 +413,8 @@ // Update all objects. for (WorldObject obj : region.getObjects()) { - if (obj == this) + if (obj == this || obj.getInstance().getId() != getInstance().getId()) continue; - obj.addKnownObject(this); addKnownObject(obj); } @@ -487,6 +494,8 @@ { if (obj == this || !type.isAssignableFrom(obj.getClass())) continue; + if (obj.getInstance().getId() != getInstance().getId() && !(obj instanceof Fence)) + continue; result.add((A) obj); } @@ -517,6 +526,8 @@ { if (obj == this || !type.isAssignableFrom(obj.getClass()) || !predicate.test((A) obj)) continue; + if (obj.getInstance().getId() != getInstance().getId() && !(obj instanceof Fence)) + continue; result.add((A) obj); } @@ -547,6 +558,8 @@ { if (obj == this || !type.isAssignableFrom(obj.getClass()) || !MathUtil.checkIfInRange(radius, this, obj, true)) continue; + if (obj.getInstance().getId() != getInstance().getId() && !(obj instanceof Fence)) + continue; result.add((A) obj); } @@ -807,6 +820,46 @@ } + private Instance _instance = InstanceManager.getInstance().getInstance(0); + + public void setInstance(Instance instance, boolean silent) + { + _instance = instance; + + if (!silent) + { + decayMe(); + spawnMe(); + } + } + + public Instance getInstance() + { + return _instance; + } + + private final List<WorldObject> getDifferentInstanceObjects() + { + final WorldRegion region = _region; + if (region == null) + return Collections.emptyList(); + + final List<WorldObject> result = new ArrayList<>(); + + for (WorldRegion reg : region.getSurroundingRegions()) + { + for (WorldObject obj : reg.getObjects()) + { + if (obj == this || obj.getInstance().getId() == getInstance().getId() || obj instanceof Fence) + continue; + + result.add(obj); + } + } + + return result; + } + public void onActionShift(Player player) { player.sendPacket(ActionFailed.STATIC_PACKET); Link to comment Share on other sites More sharing options...
optimousprime Posted February 25 Share Posted February 25 Please if any one can fix this event when you enter on zone is not protection when you whant to Unstuck from the Zone like you can unstuck from the zone or use soe and if you have a flag zone area your player get flag if you leave from zone your flag dosen't desapear's is stucked the time dosen't stop some one need to fix those things when player days or use unstuck or soe the event to stop , and clean the even't Link to comment Share on other sites More sharing options...
Kamish Posted February 25 Share Posted February 25 I have it almost fixed but I only need the dimensions to be able to publish it 3 hours ago, optimousprime said: Please if any one can fix this event when you enter on zone is not protection when you whant to Unstuck from the Zone like you can unstuck from the zone or use soe and if you have a flag zone area your player get flag if you leave from zone your flag dosen't desapear's is stucked the time dosen't stop some one need to fix those things when player days or use unstuck or soe the event to stop , and clean the even't I have it almost fixed but I only need the dimensions to be able to publish it 3 hours ago, optimousprime said: Please if any one can fix this event when you enter on zone is not protection when you whant to Unstuck from the Zone like you can unstuck from the zone or use soe and if you have a flag zone area your player get flag if you leave from zone your flag dosen't desapear's is stucked the time dosen't stop some one need to fix those things when player days or use unstuck or soe the event to stop , and clean the even't Link to comment Share on other sites More sharing options...
optimousprime Posted February 25 Share Posted February 25 5 hours ago, Kamish said: I have it almost fixed but I only need the dimensions to be able to publish it I have it almost fixed but I only need the dimensions to be able to publish it Please if any good dev can fix this problem ... to help us Link to comment Share on other sites More sharing options...
Banshee Garnet Posted February 25 Share Posted February 25 2 hours ago, optimousprime said: Please if any good dev can fix this problem ... to help us just call a userinfo / charinfo broadcast update... Link to comment Share on other sites More sharing options...
optimousprime Posted February 26 Share Posted February 26 19 hours ago, Banshee Garnet said: just call a userinfo / charinfo broadcast update... my java knowloge is poor my friend Link to comment Share on other sites More sharing options...
Banshee Garnet Posted February 28 Share Posted February 28 On 2/26/2024 at 8:42 PM, optimousprime said: my java knowloge is poor my friend check in other place where it broadcasts and use it on the method Link to comment Share on other sites More sharing options...
joseinacio Posted March 27 Share Posted March 27 I added the event to l2jMega but the players are not instantiating it Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now