Fixed several miscellaneous bugs

- Recolored Test:Stones to better match granite textures
- Selection box restored
- Controls no longer get stuck after player entity is reloaded
- Moved test spawn location a little down so chunks would load
conveniently
- Moved test spawn variable into TestContent
This commit is contained in:
OLEGSHA 2021-01-06 21:44:54 +03:00
parent 890dd16ec6
commit 339e11d3ac
5 changed files with 17 additions and 11 deletions

View File

@ -158,7 +158,7 @@ public class LayerWorld extends Layer {
final float f = 1e-2f;
final float scale = 1 - f/2;
final Vec4 color = new Vec4(1, 1, 1, 1).mul(0);
final Vec4 color = new Vec4(0, 0, 0, 1);
for (float phi = 0; phi < 2*FloatMathUtils.PI_F; phi += FloatMathUtils.PI_F/2) {
Mat4 rot = new Mat4().identity().rotateZ(phi).scale(scale);

View File

@ -5,8 +5,6 @@ import java.util.Collection;
import java.util.Collections;
import glm.vec._2.Vec2;
import glm.vec._3.Vec3;
import glm.vec._3.i.Vec3i;
import ru.windcorp.progressia.common.util.crash.CrashReports;
import ru.windcorp.progressia.common.world.entity.EntityData;
import ru.windcorp.progressia.common.world.entity.EntityDataRegistry;
@ -30,8 +28,6 @@ public class PlayerManager {
this.players.add(player);
}
private static final Vec3i SPAWN = new Vec3i(8, 8, 900);
public EntityData conjurePlayerEntity(String login) {
// TODO Live up to the name
if (TestContent.PLAYER_LOGIN.equals(login)) {
@ -46,7 +42,7 @@ public class PlayerManager {
EntityData player = EntityDataRegistry.getInstance().create("Test:Player");
player.setEntityId(TestContent.PLAYER_ENTITY_ID);
player.setPosition(new Vec3(SPAWN.x, SPAWN.y, SPAWN.z));
player.setPosition(TestContent.SPAWN);
player.setDirection(new Vec2(
Math.toRadians(40), Math.toRadians(10)
));

View File

@ -7,6 +7,7 @@ import java.util.function.Consumer;
import org.lwjgl.glfw.GLFW;
import glm.vec._3.Vec3;
import glm.vec._3.i.Vec3i;
import ru.windcorp.progressia.client.ClientState;
import ru.windcorp.progressia.client.audio.SoundEffect;
@ -36,6 +37,7 @@ public class TestContent {
public static final String PLAYER_LOGIN = "Sasha";
public static final long PLAYER_ENTITY_ID = 0x42;
public static final long STATIE_ENTITY_ID = 0xDEADBEEF;
public static final Vec3 SPAWN = new Vec3(8, 8, 880);
public static void registerContent() {
registerWorldContent();

View File

@ -30,7 +30,7 @@ public class TestPlayerControls {
private TestPlayerControls() {}
private static final double MODE_SWITCH_MAX_DELAY = 300 * Units.MILLISECONDS;
private static final double MIN_JUMP_DELAY = 400 * Units.MILLISECONDS;
private static final double MIN_JUMP_DELAY = 300 * Units.MILLISECONDS;
// Horizontal and vertical max control speed when flying
private static final float FLYING_SPEED = 6.0f * Units.METERS_PER_SECOND;
@ -107,10 +107,6 @@ public class TestPlayerControls {
}
public void handleInput(Input input) {
if (ClientState.getInstance() == null || !ClientState.getInstance().isReady()) {
return;
}
InputEvent event = input.getEvent();
if (event instanceof KeyEvent) {
@ -193,6 +189,10 @@ public class TestPlayerControls {
}
private void jump() {
if (ClientState.getInstance() == null || !ClientState.getInstance().isReady()) {
return;
}
getEntity().getVelocity().add(0, 0, JUMP_VELOCITY * (useMinecraftGravity ? 2 : 1));
}
@ -214,6 +214,10 @@ public class TestPlayerControls {
}
private void handleCameraMode() {
if (ClientState.getInstance() == null || !ClientState.getInstance().isReady()) {
return;
}
if (ClientState.getInstance().getCamera().hasAnchor()) {
ClientState.getInstance().getCamera().selectNextMode();
updateGUI();
@ -227,6 +231,10 @@ public class TestPlayerControls {
private void onMouseMoved(CursorMoveEvent event) {
if (!captureMouse) return;
if (ClientState.getInstance() == null || !ClientState.getInstance().isReady()) {
return;
}
final float yawScale = -0.002f;
final float pitchScale = yawScale;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.8 KiB

After

Width:  |  Height:  |  Size: 8.3 KiB