1
0
Fork 0
This commit is contained in:
Florian Richer (MrDev023) 2015-12-27 16:29:42 +01:00
parent a00f214911
commit fa79114e3e
21 changed files with 1075 additions and 21 deletions

View file

@ -1,7 +1,11 @@
package mrdev023.gameengine;
import java.io.*;
import mrdev023.audio.*;
import mrdev023.gameengine.gamestate.main.*;
import mrdev023.network.client.*;
import mrdev023.network.common.*;
import mrdev023.network.packet.*;
import mrdev023.opengl.*;
@ -28,8 +32,19 @@ public class GameEngine {
}
public static void init(){
// try{
// File file = new File("/log/" + System.currentTimeMillis() + ".txt");
// if(!file.exists()){
// file.createNewFile();
// }
// PrintStream out = new PrintStream(file);
// System.setOut(out);
// }catch(Exception e){e.printStackTrace();}
Input.init();
current = System.nanoTime();
state.init();
Texture.init();
Audio.create();
}
public static void loop(){
@ -48,6 +63,7 @@ public class GameEngine {
if(elapsedTicks >= 1000000000/60){
frame.updateEvent();
Input.update();
state.updateKeyboard();
state.updateMouse();
state.update();
@ -83,7 +99,10 @@ public class GameEngine {
public static void destroy(){
state.destroy();
Audio.destroy();
Input.destroy();
frame.destroy();
MainClient.send(new ClientDisconnect(MainClient.pseudo));
MainClient.client.destroy();
}

View file

@ -1,9 +1,23 @@
package mrdev023.gameengine.gamestate;
import static org.lwjgl.glfw.GLFW.*;
import java.awt.*;
import java.util.*;
import javax.swing.*;
import mrdev023.gameengine.*;
import mrdev023.gameengine.gamestate.main.*;
import mrdev023.network.client.*;
import mrdev023.network.packet.*;
import mrdev023.opengl.*;
import mrdev023.opengl.gui.*;
public class MainState implements IGameState{
public static ArrayList<Message> messages = new ArrayList<Message>();
public void init() {
}
@ -21,7 +35,9 @@ public class MainState implements IGameState{
}
public void renderGUI() {
for(int i = 0;i < messages.size();i++){
messages.get(i).render(10, 10 + i * 20);
}
}
public void render2D() {
@ -29,11 +45,28 @@ public class MainState implements IGameState{
}
public void update() {
ArrayList<Message> rmList = new ArrayList<Message>();
for(Message m : messages){
if(m.isTimeOut()){
rmList.add(m);
}
}
for(Message m : rmList){
messages.remove(m);
}
rmList.clear();
}
public void updateKeyboard() {
if(Input.isKeyDown(GLFW_KEY_M)){
try {
MainClient.client.send(new MessagePacket(JOptionPane.showInputDialog(null, "Entrez votre message :"),MainClient.pseudo));
} catch (HeadlessException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
}
public void updateMouse() {