@@ -52,42 +52,51 @@ public CompletableFuture<Void> runAsync(Runnable runnable) {
5252 return future ;
5353 }
5454
55+ @ Override
56+ public WrappedTask runLater (Runnable runnable , long delay ) {
57+ return new WrappedFoliaTask (this .globalRegionScheduler .runDelayed (plugin , task -> runnable .run (), delay ));
58+ }
59+
5560 @ Override
5661 public WrappedTask runLater (Runnable runnable , long delay , TimeUnit unit ) {
62+ return this .runLater (runnable , TimeConverter .toTicks (delay , unit ));
63+ }
64+
65+ @ Override
66+ public WrappedTask runLaterAsync (Runnable runnable , long delay ) {
67+ return this .runLaterAsync (runnable , TimeConverter .toMillis (delay ), TimeUnit .MILLISECONDS );
68+ }
69+
70+ @ Override
71+ public WrappedTask runLaterAsync (Runnable runnable , long delay , TimeUnit unit ) {
5772 return new WrappedFoliaTask (
58- this .globalRegionScheduler .runDelayed (
59- plugin , task -> runnable .run (), TimeConverter .toTicks (delay , unit )
60- )
73+ this .asyncScheduler .runDelayed (plugin , task -> runnable .run (), delay , unit )
6174 );
6275 }
6376
6477 @ Override
65- public WrappedTask runLaterAsync (Runnable runnable , long delay , TimeUnit unit ) {
78+ public WrappedTask runTimer (Runnable runnable , long delay , long period ) {
6679 return new WrappedFoliaTask (
67- this .asyncScheduler .runDelayed (
68- plugin , task -> runnable .run (), delay , unit
69- )
80+ this .globalRegionScheduler .runAtFixedRate (plugin , task -> runnable .run (), delay , period )
7081 );
7182 }
7283
7384 @ Override
7485 public WrappedTask runTimer (Runnable runnable , long delay , long period , TimeUnit unit ) {
75- return new WrappedFoliaTask (
76- this .globalRegionScheduler .runAtFixedRate (
77- plugin , task -> runnable .run (),
78- TimeConverter .toTicks (delay , unit ),
79- TimeConverter .toTicks (period , unit )
80- )
86+ return this .runTimer (runnable , TimeConverter .toTicks (delay , unit ), TimeConverter .toTicks (period , unit ));
87+ }
88+
89+ @ Override
90+ public WrappedTask runTimerAsync (Runnable runnable , long delay , long period ) {
91+ return this .runTimerAsync (
92+ runnable , TimeConverter .toMillis (delay ), TimeConverter .toMillis (period ), TimeUnit .MILLISECONDS
8193 );
8294 }
8395
8496 @ Override
8597 public WrappedTask runTimerAsync (Runnable runnable , long delay , long period , TimeUnit unit ) {
8698 return new WrappedFoliaTask (
87- this .asyncScheduler .runAtFixedRate (
88- plugin , task -> runnable .run (),
89- delay , period , unit
90- )
99+ this .asyncScheduler .runAtFixedRate (plugin , task -> runnable .run (), delay , period , unit )
91100 );
92101 }
93102
@@ -104,26 +113,29 @@ public CompletableFuture<Void> runAtLocation(Location location, Runnable runnabl
104113 }
105114
106115 @ Override
107- public WrappedTask runAtLocationLater (Location location , Runnable runnable , long delay , TimeUnit unit ) {
116+ public WrappedTask runAtLocationLater (Location location , Runnable runnable , long delay ) {
108117 return new WrappedFoliaTask (
109- this .plugin .getServer ().getRegionScheduler ().runDelayed (
110- plugin , location , task -> runnable .run (),
111- TimeConverter .toTicks (delay , unit )
112- )
118+ this .plugin .getServer ().getRegionScheduler ().runDelayed (plugin , location , task -> runnable .run (), delay )
113119 );
114120 }
115121
116122 @ Override
117- public WrappedTask runAtLocationTimer (Location location , Runnable runnable , long delay , long period , TimeUnit unit ) {
123+ public WrappedTask runAtLocationLater (Location location , Runnable runnable , long delay , TimeUnit unit ) {
124+ return this .runAtLocationLater (location , runnable , TimeConverter .toTicks (delay , unit ));
125+ }
126+
127+ @ Override
128+ public WrappedTask runAtLocationTimer (Location location , Runnable runnable , long delay , long period ) {
118129 return new WrappedFoliaTask (
119- this .plugin .getServer ().getRegionScheduler ().runAtFixedRate (
120- plugin , location , task -> runnable .run (),
121- TimeConverter .toTicks (delay , unit ),
122- TimeConverter .toTicks (period , unit )
123- )
130+ this .plugin .getServer ().getRegionScheduler ().runAtFixedRate (plugin , location , task -> runnable .run (), delay , period )
124131 );
125132 }
126133
134+ @ Override
135+ public WrappedTask runAtLocationTimer (Location location , Runnable runnable , long delay , long period , TimeUnit unit ) {
136+ return this .runAtLocationTimer (location , runnable , TimeConverter .toTicks (delay , unit ), TimeConverter .toTicks (period , unit ));
137+ }
138+
127139 @ Override
128140 public CompletableFuture <EntityTaskResult > runAtEntity (Entity entity , Runnable runnable ) {
129141 CompletableFuture <EntityTaskResult > future = new CompletableFuture <>();
@@ -159,29 +171,26 @@ public CompletableFuture<EntityTaskResult> runAtEntityWithFallback(Entity entity
159171 return future ;
160172 }
161173
174+ @ Override
175+ public WrappedTask runAtEntityLater (Entity entity , Runnable runnable , long delay ) {
176+ return new WrappedFoliaTask (entity .getScheduler ().runDelayed (plugin , task -> runnable .run (), null , delay ));
177+ }
178+
162179 @ Override
163180 public WrappedTask runAtEntityLater (Entity entity , Runnable runnable , long delay , TimeUnit unit ) {
181+ return this .runAtEntityLater (entity , runnable , TimeConverter .toTicks (delay , unit ));
182+ }
183+
184+ @ Override
185+ public WrappedTask runAtEntityTimer (Entity entity , Runnable runnable , long delay , long period ) {
164186 return new WrappedFoliaTask (
165- entity .getScheduler ().runDelayed (
166- plugin ,
167- task -> runnable .run (),
168- null ,
169- TimeConverter .toTicks (delay , unit )
170- )
187+ entity .getScheduler ().runAtFixedRate (plugin , task -> runnable .run (), null , delay , period )
171188 );
172189 }
173190
174191 @ Override
175192 public WrappedTask runAtEntityTimer (Entity entity , Runnable runnable , long delay , long period , TimeUnit unit ) {
176- return new WrappedFoliaTask (
177- entity .getScheduler ().runAtFixedRate (
178- plugin ,
179- task -> runnable .run (),
180- null ,
181- TimeConverter .toTicks (delay , unit ),
182- TimeConverter .toTicks (period , unit )
183- )
184- );
193+ return this .runAtEntityTimer (entity , runnable , TimeConverter .toTicks (delay , unit ), TimeConverter .toTicks (period , unit ));
185194 }
186195
187196 @ Override
0 commit comments