Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: remove finite check from LocalPlayer #4795

Merged
merged 19 commits into from
Oct 5, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
19 commits
Select commit Hold shift + click to select a range
f877186
chore: remove finite check from LocalPlayer
pollend May 12, 2021
d8ac7c2
fix null exception
pollend May 13, 2021
2d79235
Merge branch 'develop' into chore/remove-checks-LocalPlayer
pollend May 16, 2021
6be545f
Merge branch 'develop' into chore/remove-checks-LocalPlayer
pollend May 23, 2021
e148fbb
Merge branch 'develop' of github.com:MovingBlocks/Terasology into cho…
pollend Jun 5, 2021
f1854b4
Merge branch 'develop' into chore/remove-checks-LocalPlayer
pollend Jun 7, 2021
5694e0f
Merge branch 'develop' into chore/remove-checks-LocalPlayer
pollend Jun 14, 2021
beec7a8
Merge branch 'develop' into chore/remove-checks-LocalPlayer
jdrueckert Jun 15, 2021
e2a9b2c
Merge branch 'develop' into chore/remove-checks-LocalPlayer
skaldarnar Jun 17, 2021
f00fcb0
Merge branch 'develop' into chore/remove-checks-LocalPlayer
pollend Jun 27, 2021
a909ef1
Merge branch 'develop' into chore/remove-checks-LocalPlayer
pollend Jul 5, 2021
878d3cc
Merge branch 'develop' of github.com:MovingBlocks/Terasology into cho…
pollend Jul 5, 2021
bcd0a2f
handle invalid player
pollend Jul 5, 2021
ba2b3cf
Merge branch 'chore/remove-checks-LocalPlayer' of github.com:MovingBl…
pollend Jul 5, 2021
4023585
Merge branch 'develop' of github.com:MovingBlocks/Terasology into cho…
pollend Jul 28, 2021
161d4ae
Merge branch 'develop' into chore/remove-checks-LocalPlayer
pollend Aug 1, 2021
fe4f7bd
Merge branch 'develop' into chore/remove-checks-LocalPlayer
pollend Aug 10, 2021
39bb039
Merge branch 'develop' into chore/remove-checks-LocalPlayer
keturn Aug 22, 2021
da6966b
Merge branch 'develop' into chore/remove-checks-LocalPlayer
jdrueckert Oct 5, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,11 @@
import org.terasology.engine.logic.characters.CharacterComponent;
import org.terasology.engine.logic.characters.CharacterMovementComponent;
import org.terasology.engine.logic.characters.CharacterSystem;
import org.terasology.engine.logic.characters.events.ActivationPredicted;
import org.terasology.engine.logic.characters.events.ActivationRequest;
import org.terasology.engine.logic.common.ActivateEvent;
import org.terasology.engine.logic.common.RangeComponent;
import org.terasology.engine.logic.location.LocationComponent;
import org.terasology.engine.logic.characters.events.ActivationPredicted;
import org.terasology.engine.logic.characters.events.ActivationRequest;
import org.terasology.engine.math.Direction;
import org.terasology.engine.network.ClientComponent;
import org.terasology.engine.physics.HitResult;
Expand Down Expand Up @@ -100,13 +100,7 @@ public boolean isValid() {
*/
public Vector3f getPosition(Vector3f dest) {
LocationComponent location = getCharacterEntity().getComponent(LocationComponent.class);
if (location != null) {
Vector3f result = location.getWorldPosition(new Vector3f());
if (result.isFinite()) { //TODO: MP finite check seems to hide a larger underlying problem
dest.set(result);
}
}
return dest;
return location.getWorldPosition(dest);
}

/**
Expand All @@ -117,13 +111,7 @@ public Vector3f getPosition(Vector3f dest) {
*/
public Quaternionf getRotation(Quaternionf dest) {
LocationComponent location = getCharacterEntity().getComponent(LocationComponent.class);
if (location != null) {
Quaternionf result = location.getWorldRotation(new Quaternionf());
if (result.isFinite()) { //TODO: MP finite check seems to hide a larger underlying problem
dest.set(result);
}
}
return dest;
return location.getWorldRotation(dest);
}

/**
Expand All @@ -134,18 +122,8 @@ public Quaternionf getRotation(Quaternionf dest) {
*/
public Vector3f getViewPosition(Vector3f dest) {
ClientComponent clientComponent = getClientEntity().getComponent(ClientComponent.class);
if (clientComponent == null) {
return dest;
}
LocationComponent location = clientComponent.camera.getComponent(LocationComponent.class);
if (location != null) {
Vector3f result = location.getWorldPosition(new Vector3f());
if (result.isFinite()) { //TODO: MP finite check seems to hide a larger underlying problem
dest.set(result);
return dest;
}
}
return getPosition(dest);
return location.getWorldPosition(dest);
}

/**
Expand All @@ -156,18 +134,8 @@ public Vector3f getViewPosition(Vector3f dest) {
*/
public Quaternionf getViewRotation(Quaternionf dest) {
ClientComponent clientComponent = getClientEntity().getComponent(ClientComponent.class);
if (clientComponent == null) {
return new Quaternionf();
}
LocationComponent location = clientComponent.camera.getComponent(LocationComponent.class);
if (location != null) {
Quaternionf result = location.getWorldRotation(new Quaternionf());
if (result.isFinite()) { //TODO: MP finite check seems to hide a larger underlying problem
dest.set(result);
return dest;
}
}
return getRotation(dest);
return location.getWorldRotation(dest);
}

/**
Expand All @@ -183,10 +151,7 @@ public Vector3f getViewDirection(Vector3f dest) {

public Vector3f getVelocity(Vector3f dest) {
CharacterMovementComponent movement = getCharacterEntity().getComponent(CharacterMovementComponent.class);
if (movement != null) {
return dest.set(movement.getVelocity());
}
return dest;
return dest.set(movement.getVelocity());
}


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,9 @@ public String get() {
debugLine3.bindText(new ReadOnlyBinding<String>() {
@Override
public String get() {
if (!localPlayer.isValid()) {
return "";
}
Vector3f pos = localPlayer.getPosition(new Vector3f());
Vector3i chunkPos = Chunks.toChunkPos(pos, new Vector3i());
Vector3f rotation = localPlayer.getViewDirection(new Vector3f());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -206,6 +206,10 @@ public int compare(Future<Chunk> o1, Future<Chunk> o2) {
}

private int score(PositionFuture<?> task) {
if (!localPlayer.isValid()) {
return 1;
}

return (int) Chunks.toChunkPos(localPlayer.getPosition(new Vector3f()), new Vector3i()).distance(task.getPosition());
}
}
Expand Down