11package ch .njol .skript .expressions ;
22
3- import ch .njol .skript .classes .Changer ;
4- import ch .njol .skript .doc .Description ;
5- import ch .njol .skript .doc .Examples ;
6- import ch .njol .skript .doc .Name ;
7- import ch .njol .skript .doc .Since ;
8- import ch .njol .skript .expressions .base .SimplePropertyExpression ;
9- import ch .njol .util .coll .CollectionUtils ;
10- import org .bukkit .GameMode ;
11- import org .bukkit .entity .Entity ;
12- import org .bukkit .entity .Player ;
13- import org .bukkit .event .Event ;
14- import org .jetbrains .annotations .Nullable ;
15-
16- import com .destroystokyo .paper .event .player .PlayerStartSpectatingEntityEvent ;
17- import com .destroystokyo .paper .event .player .PlayerStopSpectatingEntityEvent ;
18-
193import ch .njol .skript .Skript ;
4+ import ch .njol .skript .classes .Changer ;
205import ch .njol .skript .classes .Changer .ChangeMode ;
21- import ch .njol .skript .classes .data .DefaultChangers ;
22- import ch .njol .skript .doc .Description ;
23- import ch .njol .skript .doc .Examples ;
24- import ch .njol .skript .doc .Name ;
25- import ch .njol .skript .doc .RequiredPlugins ;
26- import ch .njol .skript .doc .Since ;
6+ import ch .njol .skript .doc .*;
277import ch .njol .skript .effects .Delay ;
288import ch .njol .skript .lang .Expression ;
299import ch .njol .skript .lang .ExpressionType ;
3212import ch .njol .skript .registrations .EventValues ;
3313import ch .njol .util .Kleenean ;
3414import ch .njol .util .coll .CollectionUtils ;
15+ import com .destroystokyo .paper .event .player .PlayerStartSpectatingEntityEvent ;
16+ import com .destroystokyo .paper .event .player .PlayerStopSpectatingEntityEvent ;
17+ import org .bukkit .GameMode ;
18+ import org .bukkit .entity .Entity ;
19+ import org .bukkit .entity .Player ;
20+ import org .bukkit .event .Event ;
21+ import org .jetbrains .annotations .Nullable ;
22+ import org .skriptlang .skript .bukkit .base .types .EntityClassInfo ;
3523
3624@ Name ("Spectator Target" )
3725@ Description ("Grabs the spectator target entity of the players." )
@@ -57,6 +45,7 @@ public class ExprSpectatorTarget extends SimpleExpression<Entity> {
5745 }
5846
5947 private Expression <Player > players ;
48+ private static final Changer <Entity > ENTITY_CHANGER = new EntityClassInfo .EntityChanger ();
6049
6150 @ Override
6251 @ SuppressWarnings ("unchecked" )
@@ -99,7 +88,7 @@ protected Entity[] get(Event event) {
9988 public Class <?>[] acceptChange (ChangeMode mode ) {
10089 // Make 'spectator target' act as an entity changer. Will error in init for unsupported server platform.
10190 if (players == null )
102- return DefaultChangers . entityChanger .acceptChange (mode );
91+ return ENTITY_CHANGER .acceptChange (mode );
10392 if (mode == ChangeMode .SET || mode == ChangeMode .RESET || mode == ChangeMode .DELETE )
10493 return CollectionUtils .array (Entity .class );
10594 return null ;
@@ -112,7 +101,7 @@ public void change(Event event, @Nullable Object[] delta, ChangeMode mode) {
112101 Entity [] entities = get (event );
113102 if (entities .length == 0 )
114103 return ;
115- DefaultChangers . entityChanger .change (entities , delta , mode );
104+ ENTITY_CHANGER .change (entities , delta , mode );
116105 return ;
117106 }
118107 switch (mode ) {
0 commit comments