mirror of
https://github.com/Klagarge/PokeHES.git
synced 2024-11-26 19:13:27 +00:00
commit
8d074674da
@ -23,7 +23,7 @@ public class PokeMudry extends PortableApplication {
|
|||||||
private long beginTime;
|
private long beginTime;
|
||||||
private long lastMesure;
|
private long lastMesure;
|
||||||
|
|
||||||
public static boolean front_montant = false;
|
public static boolean risingFront = false;
|
||||||
|
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
@ -138,14 +138,14 @@ public class PokeMudry extends PortableApplication {
|
|||||||
@Override
|
@Override
|
||||||
public void onKeyDown(int keycode) {
|
public void onKeyDown(int keycode) {
|
||||||
super.onKeyDown(keycode);
|
super.onKeyDown(keycode);
|
||||||
front_montant = true;
|
risingFront = true;
|
||||||
controller.keyStatus.put(keycode, true);
|
controller.keyStatus.put(keycode, true);
|
||||||
sp.screenManager.getActiveScreen().onKeyUp(keycode);
|
sp.screenManager.getActiveScreen().onKeyUp(keycode);
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public void onKeyUp(int keycode) {
|
public void onKeyUp(int keycode) {
|
||||||
super.onKeyUp(keycode);
|
super.onKeyUp(keycode);
|
||||||
front_montant = false;
|
risingFront = false;
|
||||||
controller.keyStatus.put(keycode, false);
|
controller.keyStatus.put(keycode, false);
|
||||||
sp.screenManager.getActiveScreen().onKeyDown(keycode);
|
sp.screenManager.getActiveScreen().onKeyDown(keycode);
|
||||||
}
|
}
|
||||||
|
@ -33,7 +33,7 @@ public class ScreenBattle extends RenderingScreen{
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onInit() {
|
public void onInit() {
|
||||||
//display the question
|
//generate the fonts
|
||||||
unbuntuRegularBlack = generateFont("./Data/font/Ubuntu-Regular.ttf", 30, Color.BLACK);
|
unbuntuRegularBlack = generateFont("./Data/font/Ubuntu-Regular.ttf", 30, Color.BLACK);
|
||||||
unbuntuRegularWhite = generateFont("./Data/font/Ubuntu-Regular.ttf", 45, Color.WHITE);
|
unbuntuRegularWhite = generateFont("./Data/font/Ubuntu-Regular.ttf", 45, Color.WHITE);
|
||||||
}
|
}
|
||||||
@ -41,7 +41,9 @@ public class ScreenBattle extends RenderingScreen{
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onGraphicRender(GdxGraphics g) {
|
public void onGraphicRender(GdxGraphics g) {
|
||||||
|
//color the background in black
|
||||||
g.clear(Color.BLACK);
|
g.clear(Color.BLACK);
|
||||||
|
//display the dialog, theenemy and the player
|
||||||
displayDialog(g);
|
displayDialog(g);
|
||||||
displayEnemy(g);
|
displayEnemy(g);
|
||||||
displayPlayer(g);
|
displayPlayer(g);
|
||||||
@ -53,16 +55,18 @@ public class ScreenBattle extends RenderingScreen{
|
|||||||
unbuntuRegularWhite.dispose();
|
unbuntuRegularWhite.dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//set the images for the player and the enemy
|
||||||
public void setImg(){
|
public void setImg(){
|
||||||
enemyImg = new BitmapImage(b.e.getImgBattle()); //width : 192, height : 240
|
enemyImg = new BitmapImage(b.e.getImgBattle()); //width : 192, height : 240
|
||||||
playerImg = new BitmapImage(b.player.getImgBattle());
|
playerImg = new BitmapImage(b.player.getImgBattle()); //width : 192, height : 240
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//set the battle
|
||||||
public void setBattle(Battle battle) {
|
public void setBattle(Battle battle) {
|
||||||
this.b = battle;
|
this.b = battle;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//create a font with a file .ttf , a height and a color
|
||||||
public BitmapFont generateFont(String file, int height, Color c ){
|
public BitmapFont generateFont(String file, int height, Color c ){
|
||||||
//Generate font with the file .ttf
|
//Generate font with the file .ttf
|
||||||
BitmapFont font;
|
BitmapFont font;
|
||||||
@ -78,48 +82,38 @@ public class ScreenBattle extends RenderingScreen{
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void displayDialog(GdxGraphics g){
|
public void displayDialog(GdxGraphics g){
|
||||||
//dialog background
|
//draw the background
|
||||||
g.drawFilledRectangle(Settings.SIDE/2, HEIGHT_DIALOG/2 + EDGE, WIDTH_DIALOG, HEIGHT_DIALOG, 0);
|
g.drawFilledRectangle(Settings.SIDE/2, HEIGHT_DIALOG/2 + EDGE, WIDTH_DIALOG, HEIGHT_DIALOG, 0);
|
||||||
|
//draw the dialog
|
||||||
//dialog
|
|
||||||
if(b == null) return;
|
if(b == null) return;
|
||||||
if(b.getLine() == null) return;
|
if(b.getLine() == null) return;
|
||||||
g.drawString(15, 260, b.getLine(), unbuntuRegularBlack);
|
g.drawString(15, 260, b.getLine(), unbuntuRegularBlack);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void displayEnemy(GdxGraphics g){
|
public void displayEnemy(GdxGraphics g){
|
||||||
//draw image
|
//draw image
|
||||||
g.drawPicture(Settings.SIDE - (192/2), Settings.SIDE-240/2, enemyImg);
|
g.drawPicture(Settings.SIDE - (192/2), Settings.SIDE-240/2, enemyImg);
|
||||||
//draw pv
|
//draw pv
|
||||||
g.drawString(300, Settings.SIDE - 15 , "PV : " + b.pvEnemy + " / " + b.e.getPvInit(), unbuntuRegularWhite);
|
g.drawString(300, Settings.SIDE - 15 , "PV : " + b.pvEnemy + " / " + b.e.getPvInit(), unbuntuRegularWhite);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void displayPlayer(GdxGraphics g){
|
public void displayPlayer(GdxGraphics g){
|
||||||
//draw image
|
//draw image
|
||||||
|
|
||||||
g.drawPicture((192/2), HEIGHT_DIALOG + 10 + 240/2, playerImg);
|
g.drawPicture((192/2), HEIGHT_DIALOG + 10 + 240/2, playerImg);
|
||||||
//draw pv
|
//draw pv and xp
|
||||||
g.drawString(255, HEIGHT_DIALOG + 100 , "XP : " + b.xpPlayer + " / " + b.player.getXpMax() + "\nPV : " + b.player.getPv() + " / " + Settings.TIME*60, unbuntuRegularWhite);
|
g.drawString(255, HEIGHT_DIALOG + 100 , "XP : " + b.xpPlayer + " / " + b.player.getXpMax() + "\nPV : " + b.player.getPv() + " / " + Settings.TIME*60, unbuntuRegularWhite);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public void manage(Controller c, Battle battle){
|
public void manage(Controller c, Battle battle){
|
||||||
if(PokeMudry.front_montant){
|
//add a rising front to have one impulsion
|
||||||
|
if(PokeMudry.risingFront){
|
||||||
|
//the enemi is attacking
|
||||||
if( battle.getAttackOn() == false){
|
if( battle.getAttackOn() == false){
|
||||||
if (c.keyStatus.get(Input.Keys.SPACE)){
|
if (c.keyStatus.get(Input.Keys.SPACE)){
|
||||||
battle.action(-1);
|
battle.action(-1);
|
||||||
}
|
}
|
||||||
if (c.keyStatus.get(Input.Keys.ENTER)){
|
|
||||||
battle.screenBattleOn = battle.screenBattleOn;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
//the enemi is speaking
|
||||||
if(battle.getAttackOn() == true){
|
if(battle.getAttackOn() == true){
|
||||||
if (c.keyStatus.get(Input.Keys.NUM_1)){
|
if (c.keyStatus.get(Input.Keys.NUM_1)){
|
||||||
battle.action(1);
|
battle.action(1);
|
||||||
@ -132,17 +126,10 @@ public class ScreenBattle extends RenderingScreen{
|
|||||||
}
|
}
|
||||||
else if (c.keyStatus.get(Input.Keys.NUM_4)){
|
else if (c.keyStatus.get(Input.Keys.NUM_4)){
|
||||||
battle.action(4);
|
battle.action(4);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//mettre le front à false jusqu'à ce que le bouton soit relâché
|
//mettre le front à false jusqu'à ce que le bouton soit relâché
|
||||||
PokeMudry.front_montant = false;
|
PokeMudry.risingFront = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,20 +1,15 @@
|
|||||||
package Screen;
|
package Screen;
|
||||||
|
|
||||||
import com.badlogic.gdx.Gdx;
|
import com.badlogic.gdx.Gdx;
|
||||||
import com.badlogic.gdx.Input;
|
|
||||||
import com.badlogic.gdx.files.FileHandle;
|
import com.badlogic.gdx.files.FileHandle;
|
||||||
import com.badlogic.gdx.graphics.Color;
|
import com.badlogic.gdx.graphics.Color;
|
||||||
import com.badlogic.gdx.graphics.g2d.BitmapFont;
|
import com.badlogic.gdx.graphics.g2d.BitmapFont;
|
||||||
import com.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGenerator;
|
import com.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGenerator;
|
||||||
import com.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGenerator.FreeTypeFontParameter;
|
import com.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGenerator.FreeTypeFontParameter;
|
||||||
|
|
||||||
import Control.Controller;
|
|
||||||
import Entity.Player;
|
import Entity.Player;
|
||||||
import Game.Battle;
|
|
||||||
import Main.PokeMudry;
|
|
||||||
import Main.Settings;
|
import Main.Settings;
|
||||||
|
|
||||||
import ch.hevs.gdx2d.components.bitmaps.BitmapImage;
|
|
||||||
import ch.hevs.gdx2d.components.screen_management.RenderingScreen;
|
import ch.hevs.gdx2d.components.screen_management.RenderingScreen;
|
||||||
import ch.hevs.gdx2d.lib.GdxGraphics;
|
import ch.hevs.gdx2d.lib.GdxGraphics;
|
||||||
|
|
||||||
@ -23,16 +18,19 @@ public class ScreenEnd extends RenderingScreen{
|
|||||||
private String textEnd = null;
|
private String textEnd = null;
|
||||||
private BitmapFont unbuntuRegularWhite;
|
private BitmapFont unbuntuRegularWhite;
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onInit() {
|
public void onInit() {
|
||||||
|
//generate a new font
|
||||||
unbuntuRegularWhite = generateFont("./Data/font/Ubuntu-Regular.ttf", 30, Color.WHITE);
|
unbuntuRegularWhite = generateFont("./Data/font/Ubuntu-Regular.ttf", 30, Color.WHITE);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onGraphicRender(GdxGraphics g) {
|
protected void onGraphicRender(GdxGraphics g) {
|
||||||
|
//color the background in black
|
||||||
g.clear(Color.BLACK);
|
g.clear(Color.BLACK);
|
||||||
|
|
||||||
|
//display the text
|
||||||
if(textEnd != null) g.drawStringCentered(Settings.SIDE/2, textEnd, unbuntuRegularWhite);
|
if(textEnd != null) g.drawStringCentered(Settings.SIDE/2, textEnd, unbuntuRegularWhite);
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -42,6 +40,7 @@ public class ScreenEnd extends RenderingScreen{
|
|||||||
unbuntuRegularWhite.dispose();
|
unbuntuRegularWhite.dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//set a different text if the player win or loose
|
||||||
public void setText(Player p){
|
public void setText(Player p){
|
||||||
if(p.getXp() >= p.getXpMax()){
|
if(p.getXp() >= p.getXpMax()){
|
||||||
textEnd = "Bravo, tu as réussi ton année avec " + p.getXp()/100.0 + " crédits en " + (Settings.TIME*60-p.getPv()) + " secondes.\n\nMais, seras-tu près pour le prochain....";
|
textEnd = "Bravo, tu as réussi ton année avec " + p.getXp()/100.0 + " crédits en " + (Settings.TIME*60-p.getPv()) + " secondes.\n\nMais, seras-tu près pour le prochain....";
|
||||||
@ -51,7 +50,7 @@ public class ScreenEnd extends RenderingScreen{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//create a font with a file .ttf , a height and a color
|
||||||
public BitmapFont generateFont(String file, int height, Color c ){
|
public BitmapFont generateFont(String file, int height, Color c ){
|
||||||
//Generate font with the file .ttf
|
//Generate font with the file .ttf
|
||||||
BitmapFont font;
|
BitmapFont font;
|
||||||
|
@ -30,10 +30,12 @@ public class Attack {
|
|||||||
return attack+ " " + answer1+ " " + answer2+ " " + answer3+ " " + answer4+ " " + xp;
|
return attack+ " " + answer1+ " " + answer2+ " " + answer3+ " " + answer4+ " " + xp;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//return the answer with teh number i in the array s
|
||||||
public String getAnswer(int i){
|
public String getAnswer(int i){
|
||||||
return s[i];
|
return s[i];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//return the true answer to verify the answer of the player
|
||||||
public String getTrueAnswer(){
|
public String getTrueAnswer(){
|
||||||
return answer1;
|
return answer1;
|
||||||
}
|
}
|
||||||
|
@ -12,13 +12,10 @@ public class FightData {
|
|||||||
private File file;
|
private File file;
|
||||||
private static String regex = ";";
|
private static String regex = ";";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public int nbre_line =0;
|
public int nbre_line =0;
|
||||||
|
|
||||||
public FightData(String branch) {
|
public FightData(String branch) {
|
||||||
file = new File("./Data/Battle/Fight/" + branch + ".csv");
|
file = new File("./Data/Battle/Fight/" + branch + ".csv");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void readFile() {
|
public void readFile() {
|
||||||
@ -54,7 +51,7 @@ public class FightData {
|
|||||||
return attacks;
|
return attacks;
|
||||||
}
|
}
|
||||||
|
|
||||||
//return the vector with one attak
|
//return the vector with one attack
|
||||||
public Attack getAttack(int a){
|
public Attack getAttack(int a){
|
||||||
return attacks.get(a);
|
return attacks.get(a);
|
||||||
}
|
}
|
||||||
|
@ -4,6 +4,7 @@ public class Line {
|
|||||||
public String line;
|
public String line;
|
||||||
public boolean attackOn;
|
public boolean attackOn;
|
||||||
|
|
||||||
|
//in the battle screen the line is played and attack on is used by the button
|
||||||
Line( String line, boolean attackOn){
|
Line( String line, boolean attackOn){
|
||||||
this.line = line;
|
this.line = line;
|
||||||
this.attackOn = attackOn;
|
this.attackOn = attackOn;
|
||||||
|
@ -11,22 +11,21 @@ public class SpeechData {
|
|||||||
Vector<String> speechs = new Vector<String>();
|
Vector<String> speechs = new Vector<String>();
|
||||||
File file;
|
File file;
|
||||||
|
|
||||||
|
|
||||||
public SpeechData(String name){
|
public SpeechData(String name){
|
||||||
file = new File("./Data/Battle/Speech/" + name + ".txt");
|
file = new File("./Data/Battle/Speech/" + name + ".txt");
|
||||||
}
|
}
|
||||||
|
|
||||||
public void readFile() {
|
public void readFile() {
|
||||||
String line = "";
|
String line = "";
|
||||||
|
|
||||||
|
// try to read the file of the speech of the enemy
|
||||||
try {
|
try {
|
||||||
FileReader f = new FileReader(file, StandardCharsets.UTF_8);
|
FileReader f = new FileReader(file, StandardCharsets.UTF_8);
|
||||||
BufferedReader bf = new BufferedReader(f);
|
BufferedReader bf = new BufferedReader(f);
|
||||||
|
//read and add a new line in the vector speechs
|
||||||
line = bf.readLine();
|
line = bf.readLine();
|
||||||
while(line != null){
|
while(line != null){
|
||||||
|
|
||||||
speechs.add(line);
|
speechs.add(line);
|
||||||
|
|
||||||
line = bf.readLine();
|
line = bf.readLine();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -37,6 +36,7 @@ public class SpeechData {
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
//return the element i an teh vector speechs
|
||||||
public String getSpeechs(int i) {
|
public String getSpeechs(int i) {
|
||||||
return speechs.elementAt(i);
|
return speechs.elementAt(i);
|
||||||
}
|
}
|
||||||
|
@ -1,12 +1,8 @@
|
|||||||
package Text;
|
package Text;
|
||||||
|
|
||||||
import java.util.Vector;
|
|
||||||
|
|
||||||
import Entity.Enemy;
|
import Entity.Enemy;
|
||||||
import Entity.Character.Direction;
|
|
||||||
|
|
||||||
import java.text.Normalizer;
|
import java.util.Vector;
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
|
|
||||||
public class TextEnemy {
|
public class TextEnemy {
|
||||||
@ -21,16 +17,6 @@ public class TextEnemy {
|
|||||||
|
|
||||||
private Vector<int[]> currentData;
|
private Vector<int[]> currentData;
|
||||||
|
|
||||||
public static void main(String[] args) {
|
|
||||||
TextEnemy t = new TextEnemy(new Enemy("Mudry", 10, 15, "lumberjack_sheet32", "desert", 25, "informatique", Direction.NULL));
|
|
||||||
|
|
||||||
t.generateText();
|
|
||||||
|
|
||||||
for(Line l : t.lines) {
|
|
||||||
System.out.println(l.line);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public TextEnemy(Enemy e){
|
public TextEnemy(Enemy e){
|
||||||
//generate the vector of fight
|
//generate the vector of fight
|
||||||
fightData = new FightData(e.getBranch());
|
fightData = new FightData(e.getBranch());
|
||||||
@ -45,6 +31,7 @@ public class TextEnemy {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//generate a random array width different number
|
||||||
public static int[] randomGenerate( int min, int max, int nbreRandom){
|
public static int[] randomGenerate( int min, int max, int nbreRandom){
|
||||||
//create an array with all the number I need
|
//create an array with all the number I need
|
||||||
int[] a = new int[max-min+1];
|
int[] a = new int[max-min+1];
|
||||||
@ -79,21 +66,23 @@ public class TextEnemy {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//generate the text who is displays in battle screen
|
||||||
public void generateText(){
|
public void generateText(){
|
||||||
int i =1;
|
int i =1;
|
||||||
|
|
||||||
|
|
||||||
//introduction line
|
//introduction line
|
||||||
String introduction = formatLine(speechData.getSpeechs(0), CUT);
|
String introduction = formatLine(speechData.getSpeechs(0), CUT);
|
||||||
lines.add(new Line(introduction, false));
|
lines.add(new Line(introduction, false));
|
||||||
|
|
||||||
|
//generate a random array for determin the order of the attack
|
||||||
orderAttack = randomGenerate(0, fightData.nbre_line-1, 4);
|
orderAttack = randomGenerate(0, fightData.nbre_line-1, 4);
|
||||||
|
|
||||||
|
//go trough which attack
|
||||||
for(int j=0; j<4;j++){
|
for(int j=0; j<4;j++){
|
||||||
int[] currentRandom = new int[5];
|
int[] currentRandom = new int[5];
|
||||||
currentRandom[0] = orderAttack[j];
|
currentRandom[0] = orderAttack[j];
|
||||||
|
|
||||||
//generate the order of the answer
|
//generate a random array to determin the order of the answer
|
||||||
orderAnswer = randomGenerate(0, 3, 4);
|
orderAnswer = randomGenerate(0, 3, 4);
|
||||||
|
|
||||||
//save the order of answer and attack
|
//save the order of answer and attack
|
||||||
@ -111,13 +100,15 @@ public class TextEnemy {
|
|||||||
//attack and answer (number on vector : 1-4)
|
//attack and answer (number on vector : 1-4)
|
||||||
lines.add(new Line(attack + "\n" +answer1 + "\n" + answer2 + "\n" + answer3 + "\n" + answer4, true));
|
lines.add(new Line(attack + "\n" +answer1 + "\n" + answer2 + "\n" + answer3 + "\n" + answer4, true));
|
||||||
|
|
||||||
|
//save the order of the answer
|
||||||
currentData.add(currentRandom);
|
currentData.add(currentRandom);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
for(int[] a : currentData){
|
for(int[] a : currentData){
|
||||||
System.out.println(Arrays.toString(a));
|
System.out.println(Arrays.toString(a));
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
//finish (win and death)
|
//finish (win and death)
|
||||||
String dead = formatLine(speechData.getSpeechs(5),CUT);
|
String dead = formatLine(speechData.getSpeechs(5),CUT);
|
||||||
@ -126,11 +117,12 @@ public class TextEnemy {
|
|||||||
lines.add(new Line(alive, false));
|
lines.add(new Line(alive, false));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//get the saved order of the attacks and answer
|
||||||
public Vector<int[]> getCurrentData() {
|
public Vector<int[]> getCurrentData() {
|
||||||
return currentData;
|
return currentData;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//format a String with a specific length of char
|
||||||
public String formatLine(String line, int cut){
|
public String formatLine(String line, int cut){
|
||||||
|
|
||||||
String cutLine = "";
|
String cutLine = "";
|
||||||
@ -139,20 +131,20 @@ public class TextEnemy {
|
|||||||
int startC = 0;
|
int startC = 0;
|
||||||
int stoppC = cut;
|
int stoppC = cut;
|
||||||
|
|
||||||
|
//check if the line is shorter than the character limit
|
||||||
if(cut>line.length()-1){
|
if(cut>line.length()-1){
|
||||||
newLine =line;
|
newLine =line;
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
|
||||||
|
//create a array with the line
|
||||||
char[] c = new char[line.length()];
|
char[] c = new char[line.length()];
|
||||||
|
|
||||||
for(int i=0; i<c.length;i++){
|
for(int i=0; i<c.length;i++){
|
||||||
c[i] = line.charAt(i);
|
c[i] = line.charAt(i);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
while(true){
|
while(true){
|
||||||
|
//cut the line only if there is a space
|
||||||
for(int i =stoppC; i>=startC; i--){
|
for(int i =stoppC; i>=startC; i--){
|
||||||
if(c[i] == ' '){
|
if(c[i] == ' '){
|
||||||
stoppC = i;
|
stoppC = i;
|
||||||
@ -163,17 +155,19 @@ public class TextEnemy {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//découper le mot
|
//cut the line
|
||||||
for(int i=startC;i<=stoppC;i++){
|
for(int i=startC;i<=stoppC;i++){
|
||||||
cutLine += c[i];
|
cutLine += c[i];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//rebuild the line with the line breaks
|
||||||
newLine += cutLine+"\n";
|
newLine += cutLine+"\n";
|
||||||
cutLine = "";
|
cutLine = "";
|
||||||
|
|
||||||
|
//increase the start of the cut
|
||||||
startC = stoppC + 1;
|
startC = stoppC + 1;
|
||||||
|
|
||||||
|
//check if we can cut with the number specific or if it is shorter or it is finished
|
||||||
if(c.length-1-stoppC <=0){
|
if(c.length-1-stoppC <=0){
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -1,107 +0,0 @@
|
|||||||
|
|
||||||
import Text.*;
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.Collections;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.ListIterator;
|
|
||||||
import java.util.Random;
|
|
||||||
import java.util.RandomAccess;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class testYann{
|
|
||||||
public static void main(String[] args) {
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
String text = "aaaaaa aaaaaa\naaaaaa aaaaaa";
|
|
||||||
String newText ="";
|
|
||||||
String cutLine = "";
|
|
||||||
String newLine = "";
|
|
||||||
|
|
||||||
int cut = 6;
|
|
||||||
|
|
||||||
int startC = 0;
|
|
||||||
int stoppC = cut;
|
|
||||||
|
|
||||||
String[] s = text.split("\n");
|
|
||||||
|
|
||||||
for(String line : s){
|
|
||||||
System.out.println(line);
|
|
||||||
|
|
||||||
if(cut>line.length()-1){
|
|
||||||
newLine =line;
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
|
|
||||||
char[] c = new char[line.length()];
|
|
||||||
|
|
||||||
for(int i=0; i<c.length;i++){
|
|
||||||
c[i] = line.charAt(i);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
while(true){
|
|
||||||
for(int i =stoppC; i>=startC; i--){
|
|
||||||
if(c[i] == ' '){
|
|
||||||
stoppC = i;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
else if(stoppC == c.length-1){
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//découper le mot
|
|
||||||
for(int i=startC;i<=stoppC;i++){
|
|
||||||
cutLine += c[i];
|
|
||||||
}
|
|
||||||
|
|
||||||
newLine += cutLine+"\n";
|
|
||||||
cutLine = "";
|
|
||||||
|
|
||||||
startC = stoppC + 1;
|
|
||||||
|
|
||||||
|
|
||||||
if(c.length-1-stoppC <=0){
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
else if(c.length-1-stoppC <= cut){
|
|
||||||
stoppC = c.length-1;
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
stoppC += cut;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
newText += newLine + "\n";
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
System.out.println(newText);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user