This repository was archived by the owner on Sep 29, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 12
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
7 changed files
with
198 additions
and
74 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
package me.sharpjaws.sharpSK; | ||
|
||
import java.util.ArrayList; | ||
|
||
import org.bukkit.event.Event; | ||
import org.eclipse.jdt.annotation.Nullable; | ||
|
||
import ch.njol.skript.lang.Expression; | ||
import ch.njol.skript.lang.SkriptParser.ParseResult; | ||
import ch.njol.skript.lang.util.SimpleExpression; | ||
import ch.njol.util.Kleenean; | ||
import me.sharpjaws.sharpSK.Threads.CTimerThread; | ||
|
||
public class ExprAllTimers extends SimpleExpression<String>{ | ||
|
||
@Override | ||
public boolean isSingle() { | ||
return false; | ||
} | ||
|
||
@Override | ||
public Class<? extends String> getReturnType() { | ||
return String.class; | ||
} | ||
|
||
@Override | ||
public boolean init(Expression<?>[] exprs, int matchedPattern, Kleenean isDelayed, ParseResult parseResult) { | ||
return true; | ||
} | ||
|
||
@Override | ||
public String toString(@Nullable Event e, boolean debug) { | ||
return ""; | ||
} | ||
|
||
@Override | ||
@Nullable | ||
protected String[] get(Event e) { | ||
|
||
ArrayList<String> timers = new ArrayList<>(); | ||
|
||
for (Thread t : Thread.getAllStackTraces().keySet()) { | ||
if (t instanceof CTimerThread) { | ||
timers.add(t.getName()); | ||
|
||
} | ||
} | ||
return timers.toArray(new String[timers.size()]); | ||
} | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,105 @@ | ||
package me.sharpjaws.sharpSK; | ||
|
||
import org.bukkit.Location; | ||
import org.bukkit.entity.Entity; | ||
import org.bukkit.event.Event; | ||
import org.eclipse.jdt.annotation.Nullable; | ||
|
||
import ch.njol.skript.classes.Changer; | ||
import ch.njol.skript.lang.Expression; | ||
import ch.njol.skript.lang.SkriptParser.ParseResult; | ||
import ch.njol.skript.lang.util.SimpleExpression; | ||
import ch.njol.skript.util.Timespan; | ||
import ch.njol.util.Kleenean; | ||
import ch.njol.util.coll.CollectionUtils; | ||
import me.sharpjaws.sharpSK.Threads.CTimerThread; | ||
|
||
public class ExprTimerTime extends SimpleExpression<Integer>{ | ||
private Expression<String> timer; | ||
@Override | ||
public boolean isSingle() { | ||
return true; | ||
} | ||
|
||
@Override | ||
public Class<? extends Integer> getReturnType() { | ||
return Integer.class; | ||
} | ||
|
||
@SuppressWarnings("unchecked") | ||
@Override | ||
public boolean init(Expression<?>[] expr, int matchedPattern, Kleenean isDelayed, ParseResult parseResult) { | ||
timer = (Expression<String>) expr[0]; | ||
return true; | ||
} | ||
|
||
@Override | ||
public String toString(@Nullable Event e, boolean debug) { | ||
return "time of timer %string%"; | ||
} | ||
|
||
@Override | ||
@Nullable | ||
protected Integer[] get(Event e) { | ||
int a = 0; | ||
for (Thread t : Thread.getAllStackTraces().keySet()) { | ||
if (t instanceof CTimerThread) { | ||
if (t.getName().contains(timer.getSingle(e))){ | ||
a = ((CTimerThread) t).getTime(); | ||
|
||
} | ||
|
||
} | ||
} | ||
return new Integer[] {a}; | ||
} | ||
|
||
@Override | ||
public void change(Event e, Object[] delta, Changer.ChangeMode mode) { | ||
if (mode == Changer.ChangeMode.SET) { | ||
for (Thread t : Thread.getAllStackTraces().keySet()) { | ||
if (t instanceof CTimerThread) { | ||
if (t.getName().contains(timer.getSingle(e))){ | ||
((CTimerThread) t).setTime(((Timespan)delta[0]).getTicks()/20); | ||
|
||
} | ||
|
||
} | ||
} | ||
} | ||
if (mode == Changer.ChangeMode.ADD) { | ||
for (Thread t : Thread.getAllStackTraces().keySet()) { | ||
if (t instanceof CTimerThread) { | ||
if (t.getName().contains(timer.getSingle(e))){ | ||
((CTimerThread) t).addTime(((Timespan)delta[0]).getTicks()/20); | ||
|
||
} | ||
|
||
} | ||
} | ||
} | ||
if (mode == Changer.ChangeMode.REMOVE) { | ||
for (Thread t : Thread.getAllStackTraces().keySet()) { | ||
if (t instanceof CTimerThread) { | ||
if (t.getName().contains(timer.getSingle(e))){ | ||
((CTimerThread) t).removeTime(((Timespan)delta[0]).getTicks()/20); | ||
|
||
} | ||
|
||
} | ||
} | ||
} | ||
} | ||
|
||
@Override | ||
public Class<?>[] acceptChange(Changer.ChangeMode mode) { | ||
if (mode == Changer.ChangeMode.SET) | ||
return CollectionUtils.array(new Class[] { Timespan.class }); | ||
if (mode == Changer.ChangeMode.ADD) | ||
return CollectionUtils.array(new Class[] { Timespan.class }); | ||
if (mode == Changer.ChangeMode.REMOVE) | ||
return CollectionUtils.array(new Class[] { Timespan.class }); | ||
return null; | ||
} | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters