diff --git a/src/main/java/uno/mloluyu/characters/Alice.java b/src/main/java/uno/mloluyu/characters/Alice.java index 9f27ee6..c1ad1bb 100644 --- a/src/main/java/uno/mloluyu/characters/Alice.java +++ b/src/main/java/uno/mloluyu/characters/Alice.java @@ -13,6 +13,7 @@ public class Alice extends Fighter { maxHealth = 90; // 生命值较低 health = maxHealth; attackPower = 12; // 攻击力中等 + name = "alice"; } @Override @@ -53,4 +54,8 @@ public class Alice extends Fighter { protected boolean canAttack() { return super.canAttack() || currentAction == Action.JUMP || currentAction == Action.FALL; } + + public String getName() { + return this.name; + } } diff --git a/src/main/java/uno/mloluyu/characters/Fighter.java b/src/main/java/uno/mloluyu/characters/Fighter.java index aed4cdb..a2cd62b 100644 --- a/src/main/java/uno/mloluyu/characters/Fighter.java +++ b/src/main/java/uno/mloluyu/characters/Fighter.java @@ -21,6 +21,7 @@ public abstract class Fighter implements Disposable { SPECIAL1, SPECIAL2, DEATH } + protected String name; // 动画帧间隔(秒) protected static final float DEFAULT_FRAME_DURATION = 0.1f; @@ -351,6 +352,8 @@ public abstract class Fighter implements Disposable { return attackPower; } + public String getName(){ return ""; } + @Override public void dispose() { } diff --git a/src/main/java/uno/mloluyu/characters/FighterList.java b/src/main/java/uno/mloluyu/characters/FighterList.java new file mode 100644 index 0000000..aae0f3c --- /dev/null +++ b/src/main/java/uno/mloluyu/characters/FighterList.java @@ -0,0 +1,10 @@ +package uno.mloluyu.characters; + +import com.badlogic.gdx.Gdx; +import com.badlogic.gdx.graphics.g2d.TextureAtlas; + +public class FighterList { + + public static final TextureAtlas aliceAtlas = new TextureAtlas(Gdx.files.internal("src\\main\\resources\\character\\alice\\alice.atlas")); + +} diff --git a/src/main/java/uno/mloluyu/desktop/GameCore.java b/src/main/java/uno/mloluyu/desktop/GameCore.java index 331d2d6..e389b0f 100644 --- a/src/main/java/uno/mloluyu/desktop/GameCore.java +++ b/src/main/java/uno/mloluyu/desktop/GameCore.java @@ -5,43 +5,56 @@ import com.badlogic.gdx.Gdx; import com.badlogic.gdx.graphics.GL20; import com.badlogic.gdx.graphics.Texture; import com.badlogic.gdx.graphics.g2d.SpriteBatch; -import com.badlogic.gdx.graphics.g2d.TextureAtlas; +import com.badlogic.gdx.utils.viewport.ExtendViewport; +import com.badlogic.gdx.utils.viewport.Viewport; import uno.mloluyu.characters.Alice; +import uno.mloluyu.characters.FighterList; public class GameCore implements ApplicationListener { private SpriteBatch batch; - private TextureAtlas atlas; - private Alice alice1; - + private Viewport viewport; + private Gaming gaming; + private Texture texture; @Override public void create() { + viewport = new ExtendViewport(Launcher.width, Launcher.width); + texture = new Texture(Gdx.files.internal("src\\main\\resources\\backgrounds\\bg.png")); batch = new SpriteBatch(); - atlas = new TextureAtlas(Gdx.files.internal("src\\main\\resources\\character\\alice\\alice.atlas")); - alice1= new Alice(atlas); - + gaming = new Gaming(new Alice(FighterList.aliceAtlas), new Alice(FighterList.aliceAtlas)); + gaming.create(); } @Override public void render() { Gdx.gl.glClearColor(150, 150, 150, 1); Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); - - - alice1.update(Gdx.graphics.getDeltaTime()); + viewport.apply(); batch.begin(); - alice1.render(batch); + batch.draw(texture, 0, 0); +// alice1.update(Gdx.graphics.getDeltaTime()); +// batch.begin(); +// alice1.render(batch); +// batch.end(); + gaming.render(); batch.end(); } @Override public void dispose() { - alice1.dispose(); + gaming.dispose(); } @Override public void resize(int width, int height) { + float screenAspectRatio = (float) width / (float) height; + + float newWorldWidth = Launcher.height * screenAspectRatio; + float newWorldHeight = Launcher.width / screenAspectRatio; + + // 应用新的视口设置 + viewport.update((int)newWorldWidth, (int)newWorldHeight, true); // 第三个参数 true 表示相机居中 } @Override diff --git a/src/main/java/uno/mloluyu/desktop/Gaming.java b/src/main/java/uno/mloluyu/desktop/Gaming.java index d8a836f..f2d3e75 100644 --- a/src/main/java/uno/mloluyu/desktop/Gaming.java +++ b/src/main/java/uno/mloluyu/desktop/Gaming.java @@ -1,5 +1,38 @@ package uno.mloluyu.desktop; +import com.badlogic.gdx.ApplicationListener; +import com.badlogic.gdx.Gdx; +import com.badlogic.gdx.graphics.g2d.SpriteBatch; +import com.badlogic.gdx.utils.viewport.ExtendViewport; +import com.badlogic.gdx.utils.viewport.Viewport; +import uno.mloluyu.characters.Fighter; + public class Gaming { + private Fighter selfFighter; + private Fighter frontFighter; + private SpriteBatch batch; + + public Gaming(Fighter selfFighter, Fighter frontFighter) { + this.selfFighter = selfFighter; + this.frontFighter = frontFighter; + } + + public void create() { + batch = new SpriteBatch(); + } + + public void render() { + selfFighter.update(Gdx.graphics.getDeltaTime()); + frontFighter.update(Gdx.graphics.getDeltaTime()); + batch.begin(); + selfFighter.render(batch); + selfFighter.render(batch); + batch.end(); + } + + public void dispose() { + selfFighter.dispose(); + frontFighter.dispose(); + } } diff --git a/src/main/java/uno/mloluyu/desktop/Launcher.java b/src/main/java/uno/mloluyu/desktop/Launcher.java index 1ff1802..598a3f7 100644 --- a/src/main/java/uno/mloluyu/desktop/Launcher.java +++ b/src/main/java/uno/mloluyu/desktop/Launcher.java @@ -1,15 +1,17 @@ package uno.mloluyu.desktop; + import com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application; import com.badlogic.gdx.backends.lwjgl3.Lwjgl3ApplicationConfiguration; + public class Launcher { - private static int width; - private static int height; + public static final int width = 640; + public static final int height = 480; public static void main(String[] args) { Lwjgl3ApplicationConfiguration configuration = new Lwjgl3ApplicationConfiguration(); configuration.setTitle("Test Game"); - configuration.setWindowedMode(1200, 800); + configuration.setWindowedMode(width, height); configuration.setForegroundFPS(60); configuration.useVsync(true); new Lwjgl3Application(new GameCore(), configuration); diff --git a/src/main/java/uno/mloluyu/network/ConnectServer.java b/src/main/java/uno/mloluyu/network/ConnectServer.java index 979f9c5..65bd5b9 100644 --- a/src/main/java/uno/mloluyu/network/ConnectServer.java +++ b/src/main/java/uno/mloluyu/network/ConnectServer.java @@ -1,5 +1,45 @@ package uno.mloluyu.network; -public class ConnectServer { +import com.badlogic.gdx.Gdx; +import com.badlogic.gdx.Net; +import com.badlogic.gdx.net.Socket; +import uno.mloluyu.desktop.Gaming; +import java.io.InputStream; +import java.io.OutputStream; + +public class ConnectServer { + private static Socket socket; + private static String host = ""; + private static int port = 10800; + + public static void connectServer() { + new Thread(new Runnable() { + @Override + public void run() { + try { + socket = Gdx.net.newClientSocket(Net.Protocol.TCP, host, port, null); + OutputStream outputStream = socket.getOutputStream();//读取套接字的数据流 + InputStream inputStream = socket.getInputStream(); + //Gaming gaming = new Gaming(); //进入游戏界面 + //gaming.render(); + + Gdx.app.postRunnable(new Runnable() { + @Override + public void run() { + + } + }); + + } catch (Exception e) { + + } finally { + if (socket != null) { + socket.dispose(); + } + } + } + }); + + } } diff --git a/src/main/resources/assets/backgrounds/badlogic.jpg b/src/main/resources/assets/backgrounds/badlogic.jpg deleted file mode 100644 index 5917b38..0000000 Binary files a/src/main/resources/assets/backgrounds/badlogic.jpg and /dev/null differ diff --git a/src/main/resources/assets/backgrounds/bg.png b/src/main/resources/assets/backgrounds/bg.png deleted file mode 100644 index b54cda3..0000000 Binary files a/src/main/resources/assets/backgrounds/bg.png and /dev/null differ diff --git a/src/main/resources/assets/backgrounds/inner/innerbg.atlas b/src/main/resources/assets/backgrounds/inner/innerbg.atlas deleted file mode 100644 index 4884d77..0000000 --- a/src/main/resources/assets/backgrounds/inner/innerbg.atlas +++ /dev/null @@ -1,67 +0,0 @@ -innerbg.png -size:1536,1024 -repeat:none -0000_00 -bounds:0,0,256,256 -0000_01 -bounds:256,0,256,256 -0000_02 -bounds:512,0,256,256 -0000_03 -bounds:768,0,256,256 -0000_04 -bounds:1024,0,256,256 -0000_05 -bounds:1280,0,120,256 -0000_06 -bounds:0,256,256,256 -0000_07 -bounds:256,256,256,256 -0000_08 -bounds:512,256,256,256 -0000_09 -bounds:768,256,256,256 -0000_10 -bounds:1024,256,256,256 -0000_11 -bounds:1280,256,120,256 -0000_12 -bounds:0,512,256,256 -0000_13 -bounds:256,512,256,256 -0000_14 -bounds:512,512,256,256 -0000_15 -bounds:768,512,256,256 -0000_16 -bounds:1024,512,256,256 -0000_17 -bounds:1280,512,120,256 -0000_18 -bounds:0,768,256,256 -0000_19 -bounds:256,768,256,256 -0000_20 -bounds:512,768,256,256 -0000_21 -bounds:768,768,256,256 -0000_22 -bounds:1024,768,256,256 -0000_23 -bounds:1280,768,120,256 - -innerbg2.png -size:1536,256 -repeat:none -0000_24 -bounds:0,0,256,176 -0000_25 -bounds:256,0,256,176 -0000_26 -bounds:512,0,256,176 -0000_27 -bounds:768,0,256,176 -0000_28 -bounds:1024,0,256,176 -0000_29 -bounds:1280,0,120,176 diff --git a/src/main/resources/assets/backgrounds/inner/innerbg.png b/src/main/resources/assets/backgrounds/inner/innerbg.png deleted file mode 100644 index 7503a26..0000000 Binary files a/src/main/resources/assets/backgrounds/inner/innerbg.png and /dev/null differ diff --git a/src/main/resources/assets/backgrounds/inner/innerbg2.png b/src/main/resources/assets/backgrounds/inner/innerbg2.png deleted file mode 100644 index 55e86c2..0000000 Binary files a/src/main/resources/assets/backgrounds/inner/innerbg2.png and /dev/null differ diff --git a/target/classes/assets/backgrounds/badlogic.jpg b/target/classes/assets/backgrounds/badlogic.jpg deleted file mode 100644 index 5917b38..0000000 Binary files a/target/classes/assets/backgrounds/badlogic.jpg and /dev/null differ diff --git a/target/classes/assets/backgrounds/bg.png b/target/classes/assets/backgrounds/bg.png deleted file mode 100644 index b54cda3..0000000 Binary files a/target/classes/assets/backgrounds/bg.png and /dev/null differ diff --git a/target/classes/assets/backgrounds/inner/innerbg.atlas b/target/classes/assets/backgrounds/inner/innerbg.atlas deleted file mode 100644 index 4884d77..0000000 --- a/target/classes/assets/backgrounds/inner/innerbg.atlas +++ /dev/null @@ -1,67 +0,0 @@ -innerbg.png -size:1536,1024 -repeat:none -0000_00 -bounds:0,0,256,256 -0000_01 -bounds:256,0,256,256 -0000_02 -bounds:512,0,256,256 -0000_03 -bounds:768,0,256,256 -0000_04 -bounds:1024,0,256,256 -0000_05 -bounds:1280,0,120,256 -0000_06 -bounds:0,256,256,256 -0000_07 -bounds:256,256,256,256 -0000_08 -bounds:512,256,256,256 -0000_09 -bounds:768,256,256,256 -0000_10 -bounds:1024,256,256,256 -0000_11 -bounds:1280,256,120,256 -0000_12 -bounds:0,512,256,256 -0000_13 -bounds:256,512,256,256 -0000_14 -bounds:512,512,256,256 -0000_15 -bounds:768,512,256,256 -0000_16 -bounds:1024,512,256,256 -0000_17 -bounds:1280,512,120,256 -0000_18 -bounds:0,768,256,256 -0000_19 -bounds:256,768,256,256 -0000_20 -bounds:512,768,256,256 -0000_21 -bounds:768,768,256,256 -0000_22 -bounds:1024,768,256,256 -0000_23 -bounds:1280,768,120,256 - -innerbg2.png -size:1536,256 -repeat:none -0000_24 -bounds:0,0,256,176 -0000_25 -bounds:256,0,256,176 -0000_26 -bounds:512,0,256,176 -0000_27 -bounds:768,0,256,176 -0000_28 -bounds:1024,0,256,176 -0000_29 -bounds:1280,0,120,176 diff --git a/target/classes/assets/backgrounds/inner/innerbg.png b/target/classes/assets/backgrounds/inner/innerbg.png deleted file mode 100644 index 7503a26..0000000 Binary files a/target/classes/assets/backgrounds/inner/innerbg.png and /dev/null differ diff --git a/target/classes/assets/backgrounds/inner/innerbg2.png b/target/classes/assets/backgrounds/inner/innerbg2.png deleted file mode 100644 index 55e86c2..0000000 Binary files a/target/classes/assets/backgrounds/inner/innerbg2.png and /dev/null differ diff --git a/target/classes/uno/mloluyu/characters/Alice.class b/target/classes/uno/mloluyu/characters/Alice.class index 91c5846..51745cf 100644 Binary files a/target/classes/uno/mloluyu/characters/Alice.class and b/target/classes/uno/mloluyu/characters/Alice.class differ diff --git a/target/classes/uno/mloluyu/characters/Fighter$Action.class b/target/classes/uno/mloluyu/characters/Fighter$Action.class index 7df1185..28c6da3 100644 Binary files a/target/classes/uno/mloluyu/characters/Fighter$Action.class and b/target/classes/uno/mloluyu/characters/Fighter$Action.class differ diff --git a/target/classes/uno/mloluyu/characters/Fighter.class b/target/classes/uno/mloluyu/characters/Fighter.class index ca89213..a3bb85f 100644 Binary files a/target/classes/uno/mloluyu/characters/Fighter.class and b/target/classes/uno/mloluyu/characters/Fighter.class differ diff --git a/target/classes/uno/mloluyu/desktop/GameCore.class b/target/classes/uno/mloluyu/desktop/GameCore.class deleted file mode 100644 index d0a90c3..0000000 Binary files a/target/classes/uno/mloluyu/desktop/GameCore.class and /dev/null differ diff --git a/target/classes/uno/mloluyu/desktop/Gaming.class b/target/classes/uno/mloluyu/desktop/Gaming.class deleted file mode 100644 index b67490e..0000000 Binary files a/target/classes/uno/mloluyu/desktop/Gaming.class and /dev/null differ diff --git a/target/classes/uno/mloluyu/desktop/Launcher.class b/target/classes/uno/mloluyu/desktop/Launcher.class deleted file mode 100644 index 20b958e..0000000 Binary files a/target/classes/uno/mloluyu/desktop/Launcher.class and /dev/null differ diff --git a/target/classes/uno/mloluyu/network/ConnectServer.class b/target/classes/uno/mloluyu/network/ConnectServer.class deleted file mode 100644 index b3d8e25..0000000 Binary files a/target/classes/uno/mloluyu/network/ConnectServer.class and /dev/null differ diff --git a/target/classes/uno/mloluyu/network/CreateServer$1.class b/target/classes/uno/mloluyu/network/CreateServer$1.class deleted file mode 100644 index 3b0ed48..0000000 Binary files a/target/classes/uno/mloluyu/network/CreateServer$1.class and /dev/null differ diff --git a/target/classes/uno/mloluyu/network/CreateServer.class b/target/classes/uno/mloluyu/network/CreateServer.class deleted file mode 100644 index 59270f4..0000000 Binary files a/target/classes/uno/mloluyu/network/CreateServer.class and /dev/null differ diff --git a/target/classes/uno/mloluyu/util/SimpleFormatter.class b/target/classes/uno/mloluyu/util/SimpleFormatter.class deleted file mode 100644 index 8c9bab2..0000000 Binary files a/target/classes/uno/mloluyu/util/SimpleFormatter.class and /dev/null differ