File tree Expand file tree Collapse file tree 4 files changed +29
-6
lines changed
src/us/mcparks/showscript Expand file tree Collapse file tree 4 files changed +29
-6
lines changed Original file line number Diff line number Diff line change @@ -143,7 +143,9 @@ private void setupCloud() {
143143
144144 }
145145
146-
146+ public RegionListener getRegionListener () {
147+ return regionListener ;
148+ }
147149
148150
149151 public void addActiveShow (ShowScheduler show ) {
Original file line number Diff line number Diff line change 1313import org .bukkit .event .player .*;
1414import org .bukkit .event .vehicle .VehicleExitEvent ;
1515import org .bukkit .event .vehicle .VehicleMoveEvent ;
16- import java .util .HashMap ;
17- import java .util .HashSet ;
18- import java .util .Map ;
19- import java .util .Set ;
16+
17+ import java .util .*;
18+ import java .util .stream .Collectors ;
2019
2120public class RegionListener implements Listener {
2221 public static Map <Player , Set <ProtectedRegion >> regionMap ;
@@ -32,6 +31,17 @@ public RegionListener(WorldGuardPlugin wgp) {
3231 Bukkit .getPluginManager ().registerEvents (this , Main .getPlugin (Main .class ));
3332 }
3433
34+ public Collection <Player > getPlayersInRegion (String regionId ) {
35+ return regionMap .entrySet ().stream ()
36+ .filter (entry -> entry .getValue ().stream ().anyMatch (region -> region .getId ().equals (regionId )))
37+ .map (Map .Entry ::getKey )
38+ .collect (Collectors .toList ());
39+ }
40+
41+ public Collection <String > getRegionsForPlayer (Player player ) {
42+ return regionMap .get (player ).stream ().map (ProtectedRegion ::getId ).collect (Collectors .toList ());
43+ }
44+
3545 @ EventHandler
3646 public void onMove (PlayerMoveEvent e ) {
3747 updateRegions (e .getPlayer (), MovementType .MOVE , e .getTo ());
Original file line number Diff line number Diff line change @@ -40,7 +40,6 @@ public void show(@DelegatesTo(value = LinkedHashMap.class) Closure<?> closure) {
4040 closure .setResolveStrategy (Closure .DELEGATE_FIRST );
4141 closure .setDelegate (map );
4242 closure .call ();
43- System .out .println (map );
4443 ensureMapHasKeys (map , Lists .newArrayList ("name" ));
4544 actions .add (new GroovyShowAction (ShowActionType .SHOW , map ));
4645 }
Original file line number Diff line number Diff line change @@ -183,6 +183,18 @@ public double tan(double angle) {
183183 return Math .tan (Math .toRadians (angle ));
184184 }
185185
186+ public Collection <Player > playersInRegion (String regionName ) {
187+ return Main .getPlugin (Main .class ).getRegionListener ().getPlayersInRegion (regionName );
188+ }
189+
190+ public Collection <String > playerRegions (Player player ) {
191+ return Main .getPlugin (Main .class ).getRegionListener ().getRegionsForPlayer (player );
192+ }
193+
194+ public Collection <String > playerRegions (String playerName ) {
195+ return Main .getPlugin (Main .class ).getRegionListener ().getRegionsForPlayer (player (playerName ));
196+ }
197+
186198 public Collection <ShowScheduler > runningShows () {
187199 return Main .getPlugin (Main .class ).getActiveShows ();
188200 }
You can’t perform that action at this time.
0 commit comments