2727import org .spongepowered .api .block .BlockType ;
2828import org .spongepowered .api .fluid .FluidType ;
2929import org .spongepowered .api .registry .DefaultedRegistryReference ;
30+ import org .spongepowered .api .util .Ticks ;
3031import org .spongepowered .math .vector .Vector3i ;
3132
3233import java .time .Duration ;
@@ -186,6 +187,57 @@ default ScheduledUpdate<T> schedule(
186187 */
187188 ScheduledUpdate <T > schedule (int x , int y , int z , T target , Duration delay , TaskPriority priority );
188189
190+ /**
191+ *
192+ * @param x The x coordinate
193+ * @param y The y coordinate
194+ * @param z The z coordinate
195+ * @param target The target
196+ * @param ticks The delay, in {@link Ticks}
197+ * @param priority The priority of the scheduled update
198+ * @return The scheduled update
199+ */
200+ default ScheduledUpdate <T > schedule (
201+ final int x , final int y , final int z , final T target , final Ticks ticks , final DefaultedRegistryReference <? extends TaskPriority > priority ) {
202+ return this .schedule (x , y , z , target , ticks , priority .get ());
203+ }
204+
205+ /**
206+ *
207+ * @param x The x coordinate
208+ * @param y The y coordinate
209+ * @param z The z coordinate
210+ * @param target The target
211+ * @param delay The delay
212+ * @return The scheduled update
213+ */
214+ default ScheduledUpdate <T > schedule (int x , int y , int z , final T target , final Ticks delay ) {
215+ return this .schedule (x , y , z , target , delay , TaskPriorities .NORMAL .get ());
216+ }
217+
218+ /**
219+ *
220+ * @param pos The position
221+ * @param target The target
222+ * @param delay The delay
223+ * @return The scheduled update
224+ */
225+ default ScheduledUpdate <T > schedule (final Vector3i pos , final T target , final Ticks delay ) {
226+ return this .schedule (pos .x (), pos .y (), pos .z (), target , delay , TaskPriorities .NORMAL .get ());
227+ }
228+
229+ /**
230+ *
231+ * @param pos The position
232+ * @param target The target
233+ * @param delay The delay
234+ * @param priority The priority of the scheduled update
235+ * @return The scheduled update
236+ */
237+ default ScheduledUpdate <T > schedule (final Vector3i pos , final T target , final Ticks delay , final TaskPriority priority ) {
238+ return this .schedule (pos .x (), pos .y (), pos .z (), target , delay , priority );
239+ }
240+
189241 /**
190242 *
191243 * @param x The x coordinate
@@ -200,6 +252,20 @@ default ScheduledUpdate<T> schedule(final int x, final int y, final int z, final
200252 return this .schedule (x , y , z , target , delay , priority .get ());
201253 }
202254
255+ /**
256+ * Schedules a new update at the desired position after the specified
257+ * number of {@link Ticks}.
258+ *
259+ * @param x The x coordinate
260+ * @param y The y coordinate
261+ * @param z The z coordinate
262+ * @param target The target
263+ * @param delay The delay, in {@link Ticks}
264+ * @param priority The priority of the scheduled update
265+ * @return The scheduled update
266+ */
267+ ScheduledUpdate <T > schedule (int x , int y , int z , T target , Ticks delay , TaskPriority priority );
268+
203269 /**
204270 * Gets whether there's a scheduled update at the desired position with the provided target.
205271 *
0 commit comments