@@ -31,6 +31,7 @@ public class MarkersComponent extends ClientComponent {
3131 private MarkerSet spawnbedset ;
3232 private MarkerIcon spawnbedicon ;
3333 private String spawnbedformat ;
34+ private boolean removebedonplayerleave ;
3435 private long maxofflineage ;
3536 private boolean showSpawn ;
3637 private boolean showBorder ;
@@ -180,23 +181,25 @@ public void playerEvent(DynmapPlayer p) {
180181
181182 spawnbedicon = api .getMarkerIcon (configuration .getString ("spawnbedicon" , "bed" ));
182183 spawnbedformat = configuration .getString ("spawnbedformat" , "%name%'s bed" );
183-
184+ removebedonplayerleave = configuration . getBoolean ( "spawnbedremoveonplayerleave" , true );
184185 /* Add listener for players coming and going */
185186 core .listenerManager .addListener (EventType .PLAYER_JOIN , new PlayerEventListener () {
186187 @ Override
187188 public void playerEvent (DynmapPlayer p ) {
188189 updatePlayer (p );
189190 }
190191 });
191- core .listenerManager .addListener (EventType .PLAYER_QUIT , new PlayerEventListener () {
192- @ Override
193- public void playerEvent (DynmapPlayer p ) {
194- Marker m = spawnbedset .findMarker (p .getName ()+"_bed" );
195- if (m != null ) {
196- m .deleteMarker ();
192+ if (removebedonplayerleave ) {
193+ core .listenerManager .addListener (EventType .PLAYER_QUIT , new PlayerEventListener () {
194+ @ Override
195+ public void playerEvent (DynmapPlayer p ) {
196+ Marker m = spawnbedset .findMarker (p .getName () + "_bed" );
197+ if (m != null ) {
198+ m .deleteMarker ();
199+ }
197200 }
198- }
199- });
201+ });
202+ }
200203 core .listenerManager .addListener (EventType .PLAYER_BED_LEAVE , new PlayerEventListener () {
201204 @ Override
202205 public void playerEvent (final DynmapPlayer p ) {
0 commit comments