adjusting to 1.16

This commit is contained in:
gnembon committed 2020-07-19 02:18:36 -03:00
1 parent 33651de9cd
commit c22c7b991a
2 files changed
+28 -12

No files matched your search

@@ -39,6 +39,7 @@ import carpet.script.value.NumericValue;
import carpet.script.value.StringValue; import carpet.script.value.StringValue;
import carpet.script.value.ThreadValue; import carpet.script.value.ThreadValue;
import carpet.script.value.Value; import carpet.script.value.Value;
import carpet.script.value.ValueConversions;
import carpet.utils.BlockInfo; import carpet.utils.BlockInfo;
import carpet.utils.Messenger; import carpet.utils.Messenger;
import carpet.utils.SpawnReporter; import carpet.utils.SpawnReporter;
@@ -3230,7 +3231,7 @@ public class CarpetExpression
this.expr.addLazyFunction("current_dimension", 0, (c, t, lv) -> { this.expr.addLazyFunction("current_dimension", 0, (c, t, lv) -> {
ServerCommandSource s = ((CarpetContext)c).s; ServerCommandSource s = ((CarpetContext)c).s;
Value retval = new StringValue(NBTSerializableValue.nameFromRegistryId(s.getWorld().getRegistryKey().getValue())); // getDImensionType Value retval = ValueConversions.dimName(s.getWorld());
return (cc, tt) -> retval; return (cc, tt) -> retval;
}); });
@@ -7,17 +7,19 @@ import net.minecraft.entity.ai.pathing.Path;
import net.minecraft.entity.ai.pathing.PathNode; import net.minecraft.entity.ai.pathing.PathNode;
import net.minecraft.entity.damage.DamageSource; import net.minecraft.entity.damage.DamageSource;
import net.minecraft.server.world.ServerWorld; import net.minecraft.server.world.ServerWorld;
import net.minecraft.util.GlobalPos;
import net.minecraft.util.Identifier; import net.minecraft.util.Identifier;
import net.minecraft.util.Timestamp;
import net.minecraft.util.dynamic.GlobalPos;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.util.registry.Registry; import net.minecraft.util.registry.RegistryKey;
import net.minecraft.world.dimension.DimensionType; import net.minecraft.world.World;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Locale; import java.util.Locale;
import java.util.Set; import java.util.Set;
import java.util.UUID;
import java.util.stream.Collectors; import java.util.stream.Collectors;
public class ValueConversions public class ValueConversions
@@ -29,12 +31,12 @@ public class ValueConversions
public static Value dimName(ServerWorld world) public static Value dimName(ServerWorld world)
{ {
return ofId(Registry.DIMENSION_TYPE.getId(world.getDimension().getType())); return ofId(world.getRegistryKey().getValue());
} }
public static Value dimName(DimensionType dim) public static Value dimName(RegistryKey<World> dim)
{ {
return ofId(Registry.DIMENSION_TYPE.getId(dim)); return ofId(dim.getValue());
} }
public static Value ofId(Identifier id) public static Value ofId(Identifier id)
@@ -83,13 +85,17 @@ public class ValueConversions
{ {
return new BlockValue(null, (ServerWorld) e.getEntityWorld(), (BlockPos) v); return new BlockValue(null, (ServerWorld) e.getEntityWorld(), (BlockPos) v);
}; };
if (v instanceof Timestamp) if (v instanceof Number)
{ {
return new NumericValue(((Timestamp) v).getTime()); return new NumericValue(((Number) v).doubleValue());
} }
if (v instanceof Long) if (v instanceof Boolean)
{ {
return new NumericValue((Long)v); return new NumericValue((Boolean) v);
}
if (v instanceof UUID)
{
return ofUUID( (ServerWorld) e.getEntityWorld(), (UUID)v);
} }
if (v instanceof DamageSource) if (v instanceof DamageSource)
{ {
@@ -135,4 +141,13 @@ public class ValueConversions
} }
return Value.NULL; return Value.NULL;
} }
private static Value ofUUID(ServerWorld entityWorld, UUID uuid)
{
Entity current = entityWorld.getEntity(uuid);
return ListValue.of(
current == null?Value.NULL:new EntityValue(current),
new StringValue(uuid.toString())
);
}
} }