forked from SteamWar/SteamWar
Place lobby particle entries relative to the body
Entries get a World/Body setting. In body mode offsets, heights and wings follow the body's facing and lie along the body while gliding or swimming, so wings stay on the back. Rings circle the body but keep their world angle, so they do not turn with the player. New wings default to body; presets and rewards stay in world mode and look exactly as before.
This commit is contained in:
@@ -37,6 +37,12 @@ public class EntryParameters {
|
||||
ALWAYS,
|
||||
}
|
||||
|
||||
// Body places offsets, heights, rings and wings around the player's body, even while gliding or swimming
|
||||
public enum Placement {
|
||||
WORLD,
|
||||
BODY,
|
||||
}
|
||||
|
||||
public enum Movement {
|
||||
ANY(element -> element),
|
||||
MOVING(element -> data -> {
|
||||
@@ -183,6 +189,7 @@ public class EntryParameters {
|
||||
public final DoubleParameter OFFSET_Y = new DoubleParameter("offsetY", "PARTICLE_PARAM_OFFSET_Y", 0, -3, 3, 0.1);
|
||||
public final DoubleParameter OFFSET_Z = new DoubleParameter("offsetZ", "PARTICLE_PARAM_OFFSET_Z", 0, -3, 3, 0.1);
|
||||
public final IntParameter INTERVAL = new IntParameter("interval", "PARTICLE_PARAM_INTERVAL", 1, 1, 100);
|
||||
public final ChoiceParameter<Placement> PLACEMENT = ChoiceParameter.ofEnum("placement", "PARTICLE_PARAM_PLACEMENT", Placement.WORLD);
|
||||
public final ChoiceParameter<TickMode> TICK_MODE = ChoiceParameter.ofEnum("tickMode", "PARTICLE_PARAM_TICK_MODE", TickMode.MOVE);
|
||||
public final ChoiceParameter<Movement> MOVEMENT = ChoiceParameter.ofEnum("movement", "PARTICLE_PARAM_MOVEMENT", Movement.ANY);
|
||||
public final ChoiceParameter<Gliding> GLIDING = ChoiceParameter.ofEnum("gliding", "PARTICLE_PARAM_GLIDING", Gliding.ANY);
|
||||
@@ -192,7 +199,7 @@ public class EntryParameters {
|
||||
|
||||
public final List<Parameter<?>> ALL = List.of(
|
||||
PARTICLE, COUNT, SPREAD_X, SPREAD_Y, SPREAD_Z, SPEED, COLORS, BLOCK,
|
||||
OFFSET_X, OFFSET_Y, OFFSET_Z, INTERVAL, TICK_MODE,
|
||||
OFFSET_X, OFFSET_Y, OFFSET_Z, PLACEMENT, INTERVAL, TICK_MODE,
|
||||
MOVEMENT, GLIDING, GROUND, SNEAK, VISIBILITY
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user