25 lines
948 B
Java
25 lines
948 B
Java
package com.thebrokenrail.scriptcraft.api.bridge;
|
|
|
|
import com.thebrokenrail.scriptcraft.core.ScriptCraftCore;
|
|
import net.minecraft.entity.LivingEntity;
|
|
import net.minecraft.entity.damage.DamageSource;
|
|
import net.minecraft.entity.player.PlayerEntity;
|
|
|
|
import java.util.Locale;
|
|
|
|
class DamageSourceBridges {
|
|
static void register() {
|
|
ScriptCraftCore.addBridge("DamageSource.create", args -> {
|
|
try {
|
|
String id = ((String) args[0]).toUpperCase(Locale.ROOT);
|
|
return DamageSource.class.getField(id).get(null);
|
|
} catch (NoSuchFieldException | IllegalAccessException e) {
|
|
throw new RuntimeException(e);
|
|
}
|
|
});
|
|
|
|
ScriptCraftCore.addBridge("DamageSource.createFromPlayer", args -> DamageSource.player((PlayerEntity) args[1]));
|
|
ScriptCraftCore.addBridge("DamageSource.createFromMob", args -> DamageSource.mob((LivingEntity) args[1]));
|
|
}
|
|
}
|