@@ -45,21 +45,22 @@ public FoliaScheduler(Plugin pluginBukkit) {
4545 periodTicks = 1 ;
4646 }
4747 ScheduledTask scheduledTask ;
48+ boolean isSynchronous = !schedulerType .equals (SchedulerType .ASYNC );
4849 if (schedulerType .equals (SchedulerType .ASYNC )) {
4950 scheduledTask = Bukkit .getAsyncScheduler ().runAtFixedRate (this .plugin , task -> {
50- SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task );
51+ SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task , isSynchronous );
5152 mapSchedulerTask .put (schedulerTask .getTaskId (), schedulerTask );
5253 callBack .run (schedulerTask );
5354 }, initialDelayTicks * 50 , periodTicks * 50 , TimeUnit .MILLISECONDS );
5455
5556 } else {
5657 scheduledTask = Bukkit .getGlobalRegionScheduler ().runAtFixedRate (this .plugin , task -> {
57- SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task );
58+ SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task , isSynchronous );
5859 mapSchedulerTask .put (schedulerTask .getTaskId (), schedulerTask );
5960 callBack .run (schedulerTask );
6061 }, initialDelayTicks , periodTicks );
6162 }
62- return new FoliaSchedulerTask (scheduledTask );
63+ return new FoliaSchedulerTask (scheduledTask , isSynchronous );
6364 }
6465
6566 @ Override
@@ -74,11 +75,11 @@ public FoliaScheduler(Plugin pluginBukkit) {
7475 periodTicks = 1 ;
7576 }
7677 ScheduledTask scheduledTask = Bukkit .getRegionScheduler ().runAtFixedRate (this .plugin , worldChunk .world (), worldChunk .chunkX (), worldChunk .chunkZ (), task -> {
77- SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task );
78+ SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task , true );
7879 mapSchedulerTask .put (schedulerTask .getTaskId (), schedulerTask );
7980 callBack .run (schedulerTask );
8081 }, initialDelayTicks , periodTicks );
81- return new FoliaSchedulerTask (scheduledTask );
82+ return new FoliaSchedulerTask (scheduledTask , true );
8283 }
8384 }
8485
@@ -94,11 +95,11 @@ public FoliaScheduler(Plugin pluginBukkit) {
9495 periodTicks = 1 ;
9596 }
9697 ScheduledTask scheduledTask = Bukkit .getRegionScheduler ().runAtFixedRate (this .plugin , location , task -> {
97- SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task );
98+ SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task , true );
9899 mapSchedulerTask .put (schedulerTask .getTaskId (), schedulerTask );
99100 callBack .run (schedulerTask );
100101 }, initialDelayTicks , periodTicks );
101- return new FoliaSchedulerTask (scheduledTask );
102+ return new FoliaSchedulerTask (scheduledTask , true );
102103 }
103104 }
104105
@@ -114,11 +115,11 @@ public FoliaScheduler(Plugin pluginBukkit) {
114115 periodTicks = 1 ;
115116 }
116117 ScheduledTask scheduledTask = entity .getScheduler ().runAtFixedRate (this .plugin , task -> {
117- SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task );
118+ SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task , true );
118119 mapSchedulerTask .put (schedulerTask .getTaskId (), schedulerTask );
119120 callBack .run (schedulerTask );
120121 }, retired , initialDelayTicks , periodTicks );
121- return new FoliaSchedulerTask (scheduledTask );
122+ return new FoliaSchedulerTask (scheduledTask , true );
122123 }
123124 }
124125
@@ -128,20 +129,21 @@ public FoliaScheduler(Plugin pluginBukkit) {
128129 delayTicks = 1 ;
129130 }
130131 ScheduledTask scheduledTask ;
132+ boolean isSynchronous = !schedulerType .equals (SchedulerType .ASYNC );
131133 if (schedulerType .equals (SchedulerType .ASYNC )) {
132134 scheduledTask = Bukkit .getAsyncScheduler ().runDelayed (this .plugin , task -> {
133- SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task );
135+ SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task , isSynchronous );
134136 mapSchedulerTask .put (schedulerTask .getTaskId (), schedulerTask );
135137 callBack .run (schedulerTask );
136138 }, delayTicks * 50 , TimeUnit .MILLISECONDS );
137139 } else {
138140 scheduledTask = Bukkit .getGlobalRegionScheduler ().runDelayed (this .plugin , task -> {
139- SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task );
141+ SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task , isSynchronous );
140142 mapSchedulerTask .put (schedulerTask .getTaskId (), schedulerTask );
141143 callBack .run (schedulerTask );
142144 }, delayTicks );
143145 }
144- return new FoliaSchedulerTask (scheduledTask );
146+ return new FoliaSchedulerTask (scheduledTask , isSynchronous );
145147 }
146148
147149 @ Override
@@ -153,11 +155,11 @@ public FoliaScheduler(Plugin pluginBukkit) {
153155 delayTicks = 1 ;
154156 }
155157 ScheduledTask scheduledTask = Bukkit .getRegionScheduler ().runDelayed (this .plugin , worldChunk .world (), worldChunk .chunkX (), worldChunk .chunkZ (), task -> {
156- SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task );
158+ SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task , true );
157159 mapSchedulerTask .put (schedulerTask .getTaskId (), schedulerTask );
158160 callBack .run (schedulerTask );
159161 }, delayTicks );
160- return new FoliaSchedulerTask (scheduledTask );
162+ return new FoliaSchedulerTask (scheduledTask , true );
161163 }
162164 }
163165
@@ -170,11 +172,11 @@ public FoliaScheduler(Plugin pluginBukkit) {
170172 delayTicks = 1 ;
171173 }
172174 ScheduledTask scheduledTask = Bukkit .getRegionScheduler ().runDelayed (this .plugin , location , task -> {
173- SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task );
175+ SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task , true );
174176 mapSchedulerTask .put (schedulerTask .getTaskId (), schedulerTask );
175177 callBack .run (schedulerTask );
176178 }, delayTicks );
177- return new FoliaSchedulerTask (scheduledTask );
179+ return new FoliaSchedulerTask (scheduledTask , true );
178180 }
179181 }
180182
@@ -187,31 +189,32 @@ public FoliaScheduler(Plugin pluginBukkit) {
187189 delayTicks = 1 ;
188190 }
189191 ScheduledTask scheduledTask = entity .getScheduler ().runDelayed (this .plugin , task -> {
190- SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task );
192+ SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task , true );
191193 mapSchedulerTask .put (schedulerTask .getTaskId (), schedulerTask );
192194 callBack .run (schedulerTask );
193195 }, retired , delayTicks );
194- return new FoliaSchedulerTask (scheduledTask );
196+ return new FoliaSchedulerTask (scheduledTask , true );
195197 }
196198 }
197199
198200 @ Override
199201 public @ Nullable SchedulerTaskInter runTask (@ NotNull SchedulerType schedulerType , SchedulerCallBack callBack ) {
200202 ScheduledTask scheduledTask ;
203+ boolean isSynchronous = !schedulerType .equals (SchedulerType .ASYNC );
201204 if (schedulerType .equals (SchedulerType .ASYNC )) {
202205 scheduledTask = Bukkit .getAsyncScheduler ().runNow (this .plugin , task -> {
203- SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task );
206+ SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task , isSynchronous );
204207 mapSchedulerTask .put (schedulerTask .getTaskId (), schedulerTask );
205208 callBack .run (schedulerTask );
206209 });
207210 } else {
208211 scheduledTask = Bukkit .getGlobalRegionScheduler ().run (this .plugin , task -> {
209- SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task );
212+ SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task , isSynchronous );
210213 mapSchedulerTask .put (schedulerTask .getTaskId (), schedulerTask );
211214 callBack .run (schedulerTask );
212215 });
213216 }
214- return new FoliaSchedulerTask (scheduledTask );
217+ return new FoliaSchedulerTask (scheduledTask , isSynchronous );
215218 }
216219
217220 @ Override
@@ -220,11 +223,11 @@ public FoliaScheduler(Plugin pluginBukkit) {
220223 return this .runTask (schedulerType , callBack );
221224 } else {
222225 ScheduledTask scheduledTask = Bukkit .getRegionScheduler ().run (this .plugin , worldChunk .world (), worldChunk .chunkX (), worldChunk .chunkZ (), task -> {
223- SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task );
226+ SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task , true );
224227 mapSchedulerTask .put (schedulerTask .getTaskId (), schedulerTask );
225228 callBack .run (schedulerTask );
226229 });
227- return new FoliaSchedulerTask (scheduledTask );
230+ return new FoliaSchedulerTask (scheduledTask , true );
228231 }
229232 }
230233
@@ -234,11 +237,11 @@ public FoliaScheduler(Plugin pluginBukkit) {
234237 return this .runTask (schedulerType , callBack );
235238 } else {
236239 ScheduledTask scheduledTask = Bukkit .getRegionScheduler ().run (this .plugin , location , task -> {
237- SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task );
240+ SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task , true );
238241 mapSchedulerTask .put (schedulerTask .getTaskId (), schedulerTask );
239242 callBack .run (schedulerTask );
240243 });
241- return new FoliaSchedulerTask (scheduledTask );
244+ return new FoliaSchedulerTask (scheduledTask , true );
242245 }
243246 }
244247
@@ -248,11 +251,11 @@ public FoliaScheduler(Plugin pluginBukkit) {
248251 return this .runTask (schedulerType , callBack );
249252 } else {
250253 ScheduledTask scheduledTask = entity .getScheduler ().run (this .plugin , task -> {
251- SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task );
254+ SchedulerTaskInter schedulerTask = new FoliaSchedulerTask (task , true );
252255 mapSchedulerTask .put (schedulerTask .getTaskId (), schedulerTask );
253256 callBack .run (schedulerTask );
254257 }, retired );
255- return new FoliaSchedulerTask (scheduledTask );
258+ return new FoliaSchedulerTask (scheduledTask , true );
256259 }
257260 }
258261
0 commit comments