Example:
I really do not understand how to do this! And I've been looking for something else I could not understand
Someone is opposed to helping me?
Please, I'm asking for help so I beg you not to insult me
EDIT: Attempts
Result:
Java:
public void Sound(String s, Player p) {
p.playSound(p.getLocation(), Sound.valueOf(s), 1, 1);
}
code_language.skript:
Skript.registerEffect(TestSound.class, "play test [sound] %string% to %player%");
I really do not understand how to do this! And I've been looking for something else I could not understand
Someone is opposed to helping me?
Please, I'm asking for help so I beg you not to insult me
EDIT: Attempts
Java:
package me.filipenock.ponte;
import org.bukkit.Sound;
import org.bukkit.entity.Player;
import org.bukkit.event.Event;
import org.eclipse.jdt.annotation.Nullable;
import ch.njol.skript.lang.Effect;
import ch.njol.skript.lang.Expression;
import ch.njol.skript.lang.SkriptParser.ParseResult;
import ch.njol.util.Kleenean;
public class TestSound extends Effect{
private Expression<String> sound;
private Expression<Player> player;
@SuppressWarnings("unchecked")
@Override
public boolean init(Expression<?>[] var, int arg1, Kleenean param, ParseResult ParseResult) {
this.sound = (Expression<String>) var[0];
this.player = (Expression<Player>) var[1];
return true;
}
@Override
public String toString(@Nullable Event arg0, boolean arg1) {
return null;
}
@Override
protected void execute(Event e) {
((Player) player).playSound(((Player)this.player.getSingle(e)).getLocation(), Sound.valueOf(((String)this.sound.getSingle(e))), 1, 1);
}
}
code_language.skript:
java.lang.ClassCastException: ch.njol.skript.expressions.ExprEntity cannot be cast to org.bukkit.entity.Player
Last edited: