diff --git a/src/main/java/cactusServer/entities/Object.java b/src/main/java/cactusServer/entities/Object.java index 0a9c5b0..f3b7e88 100644 --- a/src/main/java/cactusServer/entities/Object.java +++ b/src/main/java/cactusServer/entities/Object.java @@ -98,6 +98,7 @@ private boolean moveable; // �“� private double cof; // ���C�W�� + @SuppressWarnings("unused") private Attribute() { } diff --git a/src/main/java/cactusServer/models/CollisionManager.java b/src/main/java/cactusServer/models/CollisionManager.java index 35fb215..cba64af 100644 --- a/src/main/java/cactusServer/models/CollisionManager.java +++ b/src/main/java/cactusServer/models/CollisionManager.java @@ -33,16 +33,14 @@ return result; } - public void collisionRun() { - for (Map.Entry instance : instances.entrySet()) { + public void collisionRun(long interval) { + for (Instance instance : instances.values()) { + instance.getUniverse().update(interval); result.clear(); - HashMap objects = instance.getValue().getObjects(); - HashMap characters = instance.getValue().getCharacters(); - for (Map.Entry object : objects.entrySet()) { - for (Map.Entry character : characters.entrySet()) { - result.add(PhysicsUtility.checkCollision(character.getValue().getObject(), "", - object.getValue().getObject(), "")); - objectmove(instance.getValue(), object.getValue(), character.getValue()); + for (Object object : instance.getObjects().values()) { + for (Character character : instance.getCharacters().values()) { + result.add(PhysicsUtility.checkCollision(character.getObject(), "", object.getObject(), "")); + objectmove(instance, object, character); } } } @@ -55,7 +53,7 @@ position.setX(position.getX() + current.length * current.normal.x); position.setY(position.getY() + current.length * current.normal.y); position.setZ(position.getZ() + current.length * current.normal.z); - + } } diff --git a/src/main/java/cactusServer/resources/AccountsRest.java b/src/main/java/cactusServer/resources/AccountsRest.java index 8837022..659f3bc 100644 --- a/src/main/java/cactusServer/resources/AccountsRest.java +++ b/src/main/java/cactusServer/resources/AccountsRest.java @@ -1,7 +1,5 @@ package cactusServer.resources; -import java.util.ArrayList; - import javax.ws.rs.*; import javax.ws.rs.core.MediaType; diff --git a/src/main/java/cactusServer/utils/App.java b/src/main/java/cactusServer/utils/App.java index 2c2aa6c..fbfc240 100644 --- a/src/main/java/cactusServer/utils/App.java +++ b/src/main/java/cactusServer/utils/App.java @@ -34,6 +34,7 @@ @ApplicationPath("/rest") public class App extends ResourceConfig implements Runnable { private ScheduledThreadPoolExecutor task = new ScheduledThreadPoolExecutor(1000); + private long lasttime = System.currentTimeMillis(); public App() { ObjectModelManager.getInstance(); @@ -49,8 +50,9 @@ @Override public void run() { // System.out.println("�^�X�N�����s"); - CollisionManager.getCollision().collisionRun(); + CollisionManager.getCollision().collisionRun(System.currentTimeMillis() - lasttime); removeInactivePlayers(); + lasttime = System.currentTimeMillis(); } public void start(int interval) {