| |
---|
| | // //PhysicsUtility.checkCollision(instance.) |
---|
| | // } |
---|
| | // } |
---|
| | // } |
---|
| | deletePlayerOfExceedTimeLimit(); |
---|
| | removeInactivePlayers(); |
---|
| | } |
---|
| | |
---|
| | public void start(int interval) { |
---|
| | task.scheduleWithFixedDelay(this, interval, interval, TimeUnit.MILLISECONDS); |
---|
| |
---|
| | Instances.getInstance().getPlayers().put("player2", player2); |
---|
| | // ダミーオブジェクト |
---|
| | Instances.getInstance().getInstance("test1").createObject(new Position3D(0, 0, 0), new Velocity3D(), |
---|
| | new AngularVelocity3D(), new Quaternion3D(), new Attribute(true,1), 0); |
---|
| | // 確認用 |
---|
| | // String player1Encode = JSON.encode(player1, true); |
---|
| | // String player2Encode = JSON.encode(player2, true); |
---|
| | // Player player1Decode = JSON.decode(player1Encode, Player.class); |
---|
| | // Player player2Decode = JSON.decode(player2Encode, Player.class); |
---|
| | // System.out.println(JSON.encode(player1Decode, true)); |
---|
| | // System.out.println(JSON.encode(player2Decode, true)); |
---|
| | // // 確認用 |
---|
| | // String player1Encode = JSON.encode(player1, true); |
---|
| | // String player2Encode = JSON.encode(player2, true); |
---|
| | // Player player1Decode = JSON.decode(player1Encode, Player.class); |
---|
| | // Player player2Decode = JSON.decode(player2Encode, Player.class); |
---|
| | // System.out.println(JSON.encode(player1Decode, true)); |
---|
| | // System.out.println(JSON.encode(player2Decode, true)); |
---|
| | |
---|
| | // JSON json = new JSON(); |
---|
| | // String characterId = player1.getCharacterID(); |
---|
| | // String encodeCharacterId = json.encode(characterId); |
---|
| | // System.out.println(characterId); |
---|
| | // System.out.println(encodeCharacterId); |
---|
| | // String position = json.encode(player1.getPosition()); |
---|
| | // System.out.println(position); |
---|
| | } |
---|
| | |
---|
| | private void deletePlayerOfExceedTimeLimit() { |
---|
| | private void removeInactivePlayers() { |
---|
| | long currentTime = System.nanoTime(); |
---|
| | Iterator<Map.Entry<String, Player>> it = Instances.getInstance().getPlayers().entrySet().iterator(); |
---|
| | while (it.hasNext()) { |
---|
| | Map.Entry<String, Player> entry = it.next(); |
---|
| | String playerId = entry.getKey(); |
---|
| | Player player = entry.getValue(); |
---|
| | long lastOperateTime = player.getLastOperateTime(); |
---|
| | System.out.println(currentTime + ", " + (lastOperateTime + Player.STOP_TIME_LIMIT) + " // playerId: " + playerId); |
---|
| | if (currentTime > (lastOperateTime + Player.STOP_TIME_LIMIT)) { |
---|
| | long lastUpdateTime = player.getLastUpdateTime(); |
---|
| | System.out.println(currentTime + ", " + (lastUpdateTime + Player.STOP_TIME_LIMIT) + " // playerId: " + playerId); |
---|
| | if (currentTime > (lastUpdateTime + Player.STOP_TIME_LIMIT)) { |
---|
| | System.out.println("delete started (playerId: " + playerId + ")"); |
---|
| | player.destroy(); |
---|
| | Instance instance = Instances.getInstance().getInstance(player.getInstanceID()); |
---|
| | instance.getUniverse().displace(player.getPlaceable()); |
---|
| |
---|
| | |
確認をお願いします.
確認しました
bf519c1
intomaster
fromPlayer
on 9 Oct 2018