use of org.spongepowered.api.scheduler.Task in project Skree by Skelril.
the class WildernessDropPool method run.
@Override
public boolean run(int timesL) {
dropper.dropStackSnapshots(itemStackProvider.get(), SpawnTypes.DROPPED_ITEM);
float volumeLevel = Math.min(1, (((float) timesL / times) * .6F) + ((float) 1 / times));
IntegratedRunnable music = new IntegratedRunnable() {
@Override
public boolean run(int musicPitchT) {
getExtent().playSound(SoundTypes.BLOCK_NOTE_HARP, getPos(), volumeLevel, (musicPitchT / 3) + 1);
return true;
}
@Override
public void end() {
}
};
TimedRunnable<IntegratedRunnable> runnable = new TimedRunnable<>(music, 3);
Task task = Task.builder().execute(runnable).intervalTicks(3).submit(SkreePlugin.inst());
runnable.setTask(task);
return true;
}
use of org.spongepowered.api.scheduler.Task in project Skree by Skelril.
the class DropClearServiceImpl method dropClear.
private boolean dropClear(World world, int seconds, boolean overwrite) {
TimedRunnable<EntityCleanupTask> runnable = getActiveTask(world);
// Check for old task, and overwrite if allowed
if (runnable != null) {
if (overwrite) {
runnable.setTimes(seconds);
return true;
}
return false;
}
EntityCleanupTask cleanupTask = pickDropClear(world);
// Setup new task
runnable = new TimedRunnable<EntityCleanupTask>(cleanupTask, seconds) {
@Override
public void cancel(boolean withEnd) {
super.cancel(withEnd);
if (withEnd) {
entityCount.put(world, 0L);
// TODO send to the yet to be made, Entity Stats service
// lastClear.put(world, getBaseTask().getLastProfile());
}
timers.remove(world);
}
};
// Offset this by one to prevent the drop clear from triggering twice
Task task = Task.builder().execute(runnable).delayTicks(1).interval(1, TimeUnit.SECONDS).submit(SkreePlugin.inst());
runnable.setTask(task);
timers.put(world, runnable);
return true;
}
use of org.spongepowered.api.scheduler.Task in project Skree by Skelril.
the class AntiPeskListener method punish.
private void punish(Player player) {
player.sendMessage(Text.of(TextColors.RED, "Command forbidden..."));
player.sendMessage(Text.of(TextColors.RED, "... prepare to hate your life ..."));
IntegratedRunnable integratedRunnable = new IntegratedRunnable() {
@Override
public boolean run(int times) {
player.setVelocity(new Vector3d(Probability.getRangedRandom(-3.0, 3.0), Probability.getRangedRandom(-3.0, 3.0), Probability.getRangedRandom(-3.0, 3.0)));
return true;
}
@Override
public void end() {
player.kick(Text.of("How about you don't do that again, K?"));
}
};
TimedRunnable<IntegratedRunnable> runnable = new TimedRunnable<>(integratedRunnable, 12);
Task task = Task.builder().execute(runnable).interval(1, TimeUnit.SECONDS).delay(5, TimeUnit.SECONDS).submit(SkreePlugin.inst());
runnable.setTask(task);
}
Aggregations