1
0
mirror of https://github.com/Klagarge/PokeHES.git synced 2024-11-23 09:53:28 +00:00

Merge branch 'master' into more-entities

This commit is contained in:
Rémi Heredero 2022-06-08 20:19:41 +02:00 committed by GitHub
commit 659096b3e2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
28 changed files with 246 additions and 18 deletions

View File

@ -3,5 +3,6 @@
"java.project.outputPath": "bin", "java.project.outputPath": "bin",
"java.project.referencedLibraries": [ "java.project.referencedLibraries": [
"lib/**/*.jar" "lib/**/*.jar"
] ],
"java.configuration.updateBuildConfiguration": "interactive"
} }

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,7 @@
attaque,contre-attaque 1,contre-attaque 2,contre-attaque 3,contre-attaque 4,1
df,sdfs,dfs,df,sdf,10
sdf,sdf,sd,sdf,sdfs,3
sdf,sdf,fsd,sdf,dfs,45
sd,fsdf,fsd,f,dfsd,4
sdfsf,df,sdf,sdf,fsdf,6
sdf,sdf,sdf,sdfs,df,3
1 attaque contre-attaque 1 contre-attaque 2 contre-attaque 3 contre-attaque 4 1
2 df sdfs dfs df sdf 10
3 sdf sdf sd sdf sdfs 3
4 sdf sdf fsd sdf dfs 45
5 sd fsdf fsd f dfsd 4
6 sdfsf df sdf sdf fsdf 6
7 sdf sdf sdf sdfs df 3

Binary file not shown.

Binary file not shown.

BIN
resources/font/Starjedi.ttf Normal file

Binary file not shown.

BIN
resources/font/Timeless.ttf Normal file

Binary file not shown.

Binary file not shown.

View File

@ -1,14 +1,23 @@
package Entity; package Entity;
import Text.FightData;
import com.badlogic.gdx.math.Vector2; import com.badlogic.gdx.math.Vector2;
import ch.hevs.gdx2d.lib.GdxGraphics; import ch.hevs.gdx2d.lib.GdxGraphics;
public class Enemy extends Character{ public class Enemy extends Character{
public FightData fightData;
public Enemy(String name, int x, int y, String img) { public Enemy(String name, int x, int y, String img) {
super(name, x, y, img); super(name, x, y, img);
turn(Character.Direction.DOWN); turn(Character.Direction.DOWN);
//generate the vector of fight
fightData = new FightData(name);
//TODO Auto-generated constructor stub
} }
public void setPosition(int x, int y){ public void setPosition(int x, int y){

View File

@ -1,3 +1,4 @@
import Screen.ScreenPlayer;
import ch.hevs.gdx2d.desktop.PortableApplication; import ch.hevs.gdx2d.desktop.PortableApplication;
import ch.hevs.gdx2d.lib.GdxGraphics; import ch.hevs.gdx2d.lib.GdxGraphics;
@ -6,21 +7,38 @@ public class PokeMudry extends PortableApplication{
public final int PLAYERS = 1; public final int PLAYERS = 1;
public static final int TIME = 10; // number of minutes for kill all enemy public static final int TIME = 10; // number of minutes for kill all enemy
/* private ScreenPlayer screenPlayer = new ScreenPlayer();
public static void main(String[] args) {
public static void main(String[] args) {
new PokeMudry();
} }
*/
PokeMudry(){
super(1000, 800);
}
@Override @Override
public void onInit() { public void onInit() {
// TODO Auto-generated method stub screenPlayer.init();
} }
@Override @Override
public void onGraphicRender(GdxGraphics g) { public void onGraphicRender(GdxGraphics g) {
// TODO Auto-generated method stub screenPlayer.render(g);
}
//key gestion
@Override
public void onKeyDown(int keycode) {
screenPlayer.screenManager.getActiveScreen().onKeyDown(keycode);
super.onKeyDown(keycode);
}
@Override
public void onKeyUp(int keycode) {
screenPlayer.screenManager.getActiveScreen().onKeyUp(keycode);
super.onKeyUp(keycode);
} }
} }

View File

@ -1,5 +1,51 @@
package Screen; package Screen;
public class ScreenBattle { import ch.hevs.gdx2d.components.screen_management.RenderingScreen;
import ch.hevs.gdx2d.lib.GdxGraphics;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.files.FileHandle;
import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.graphics.g2d.BitmapFont;
import com.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGenerator;
import com.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGenerator.FreeTypeFontParameter;
public class ScreenBattle extends RenderingScreen{
private BitmapFont optimus40;
@Override
public void onInit() {
//display the question
generateFont("resources//font//OptimusPrinceps.ttf", optimus40, 100, Color.WHITE);
}
@Override
public void onGraphicRender(GdxGraphics g) {
g.clear(Color.GREEN);
g.drawStringCentered(g.getScreenHeight()/2, "question", optimus40);
}
@Override
public void dispose() {
optimus40.dispose();
}
public void generateFont(String file, BitmapFont bitmapFont, int height, Color c ){
FileHandle fileHandle = Gdx.files.internal(file);
FreeTypeFontParameter parameter = new FreeTypeFontParameter();
FreeTypeFontGenerator generator = new FreeTypeFontGenerator(fileHandle);
parameter.size = generator.scaleForPixelHeight(height);
parameter.color = c;
optimus40 = generator.generateFont(parameter);
generator.dispose();
}
} }

View File

@ -17,9 +17,10 @@ import com.badlogic.gdx.maps.tiled.renderers.OrthogonalTiledMapRenderer;
import com.badlogic.gdx.math.Vector2; import com.badlogic.gdx.math.Vector2;
import Entity.Player; import Entity.Player;
import ch.hevs.gdx2d.components.screen_management.RenderingScreen;
import ch.hevs.gdx2d.lib.GdxGraphics; import ch.hevs.gdx2d.lib.GdxGraphics;
public class ScreenMap { public class ScreenMap extends RenderingScreen{
// tiles management // tiles management
private Vector<TiledMapTileLayer> tiledLayer = new Vector<>(); private Vector<TiledMapTileLayer> tiledLayer = new Vector<>();
@ -41,7 +42,8 @@ public class ScreenMap {
tMapRenderer.put(name,new OrthogonalTiledMapRenderer(tm)); tMapRenderer.put(name,new OrthogonalTiledMapRenderer(tm));
} }
public void init() { @Override
public void onInit() {
// Set initial zoom // Set initial zoom
zoom = 1; zoom = 1;
@ -51,7 +53,8 @@ public class ScreenMap {
createMap("desert"); createMap("desert");
} }
public void graphicRender(GdxGraphics g, Player p) { @Override
public void onGraphicRender(GdxGraphics g) {
tiledLayer.clear(); tiledLayer.clear();
for (int i = 0; i < 50; i++) { for (int i = 0; i < 50; i++) {
@ -69,7 +72,7 @@ public class ScreenMap {
// Camera follows the hero // Camera follows the hero
g.zoom(zoom); g.zoom(zoom);
g.moveCamera(p.getPosition().x, p.getPosition().y, width * tileWidth, height * tileHeight); //g.moveCamera(player.getPosition().x, player.getPosition().y, width * tileWidth, height * tileHeight);
// Render the tileMap // Render the tileMap
tMapRenderer.get(map).setView(g.getCamera()); tMapRenderer.get(map).setView(g.getCamera());
@ -78,6 +81,7 @@ public class ScreenMap {
g.drawFPS(); g.drawFPS();
} }
public Vector<TiledMapTile> getTile(Vector2 position, int offsetX, int offsetY) { public Vector<TiledMapTile> getTile(Vector2 position, int offsetX, int offsetY) {
Vector<TiledMapTile> tiles = new Vector<>(); Vector<TiledMapTile> tiles = new Vector<>();
for (TiledMapTileLayer tl : tiledLayer) { for (TiledMapTileLayer tl : tiledLayer) {

View File

@ -1,17 +1,26 @@
package Screen; package Screen;
import Entity.Player;
import ch.hevs.gdx2d.lib.GdxGraphics;
import ch.hevs.gdx2d.lib.ScreenManager; import ch.hevs.gdx2d.lib.ScreenManager;
public class ScreenPlayer { public class ScreenPlayer {
private ScreenManager screenManager; public ScreenManager screenManager = new ScreenManager();
private ScreenMap screenMap;
private ScreenBattle screenBattle; private Player player;
public void init(){ public void init(){
player = new Player(8, 15);
screenManager.registerScreen(ScreenMap.class);
screenManager.registerScreen(ScreenBattle.class);
} }
public void render(){ public void render(GdxGraphics g){
screenManager.render(g);
} }
} }

23
src/Text/Attack.java Normal file
View File

@ -0,0 +1,23 @@
package Text;
public class Attack {
String attack;
String answer1;
String answer2;
String answer3;
String answer4;
float xp;
Attack(String attack, String answer1,String answer2,String answer3, String answer4, float xp){
this.attack = attack;
this.answer1 = answer1;
this.answer2 = answer2;
this.answer3 = answer3;
this.answer4 = answer4;
this.xp = xp;
}
public String toString(){
return attack+ " " + answer1+ " " + answer2+ " " + answer3+ " " + answer4+ " " + xp;
}
}

64
src/Text/FightData.java Normal file
View File

@ -0,0 +1,64 @@
package Text;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.util.Vector;
public class FightData {
private Vector<Attack> attacks = new Vector<Attack>();
private File file;
private static final String REGEX = ",";
/*
public static void main(String[] args) {
FightData d = new FightData("enemi");
d.readFile();
for(Attack a : d.attacks){
System.out.println(a);
}
}
*/
public FightData(String name) {
file = new File("resources//fight//" + name + ".csv");
}
public void readFile() {
Attack attack;
String line = "";
try {
FileReader f = new FileReader(file);
BufferedReader bf = new BufferedReader(f);
line = bf.readLine();
while(line != null){
String[] a = line.split(REGEX);//change the regex if it is another
attack = new Attack(a[0], a[1], a[2], a[3], a[4], Float.valueOf(a[5]));
attacks.add(attack);
line = bf.readLine();
}
bf.close();
} catch (Exception e) {
e.printStackTrace();
}
}
//return the vector with all attaks of one enemi
public Vector<Attack> getAllAttacks(){
return attacks;
}
//return the vector with one attak
public Attack getAttacks(int a){
return attacks.get(a);
}
}

47
src/testYann.java Normal file
View File

@ -0,0 +1,47 @@
import Screen.ScreenBattle;
import ch.hevs.gdx2d.desktop.PortableApplication;
import ch.hevs.gdx2d.lib.GdxGraphics;
import ch.hevs.gdx2d.lib.ScreenManager;
public class testYann extends PortableApplication{
private ScreenManager s = new ScreenManager();
ScreenBattle b;
public static void main(String[] args) {
new testYann();
}
testYann(){
super(1000, 800);
}
@Override
public void onInit() {
b = new ScreenBattle();
s.registerScreen(b.getClass());
}
@Override
public void onGraphicRender(GdxGraphics g) {
s.render(g);
}
@Override
public void onKeyDown(int keycode) {
// TODO Auto-generated method stub
super.onKeyDown(keycode);
}
@Override
public void onKeyUp(int keycode) {
// TODO Auto-generated method stub
super.onKeyUp(keycode);
}
}