• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed "Krzywa" wyświetlana tablica 3D char [Java]

Object Storage Arubacloud
0 głosów
313 wizyt
pytanie zadane 26 czerwca 2016 w Java przez Mlorism Użytkownik (580 p.)
zamknięte 27 czerwca 2016 przez Mlorism

Uczę się Javy z tutoriali Derek Banasa, jestem na lekcji 8 
https://www.youtube.com/watch?v=_pUz-GJcdRU&index=8&list=PLE7E8B7F4856C9B19

jest tam tworzona tablica 3D, w której w każdym z "pudełek" znajduje się gwiazdka *, ale w 4 znajdują się litery (od 1 litery imienia potwora, którego reprezentuje). Wszystko działa, poza tym, że moja tablica nie jest równa. W miejscach, w których występują litery jako char szerokość jest inna, co powoduje, że tablica wyświetlana jest nierówno. Niestety nie jest ten problem poruszony przez Banasa. Nie wiem czy to problem z kodem (wątpię, bo piszę to tak jak Derek) czy może z ustawieniami Eclipse?

 

 

import java.util.Arrays;
import org.apache.commons.lang3.ArrayUtils;

public class Monster {

	static char[][] battleBoard = new char [10][10];
	
	public static void buildbattleBoard(){
		for (char[] wiersz:battleBoard){
			Arrays.fill(wiersz, '*');
		}
	}
	
	public static void redraw(){
		
	for (int p=0;p<30;p++){ System.out.print("-");
	}
	
	System.out.println();
	for( int i=0; i<battleBoard.length; i++){
		for (int j=0; j<battleBoard[i].length; j++){
			System.out.print( " | " + battleBoard[i][j] + " ");
		}
		System.out.print("|");
		System.out.println();
	}
	
	System.out.println();
	for (int p=0;p<30;p++){ System.out.print("-");
	}
	
	}
	
	public final String Tombstone = "Tu teży potwór";

	
	private int health = 500;
	private int attack  = 20;
	private int movement = 2;
	private boolean alive  = true;
	
	public String name = "Potwór";
	public char nameChar = 'P';
	public int xPosition = 0;
	public int yPosition = 0;
	public static int numOfMonsters=0;
	
	public int getAttack(){
		return attack;
	}
	
	public int getMovement(){
		return movement;
	}
	
	public int getHealth(){
		return health;
	}
	
	
	public void setHealth (int damage){
		health=health-damage;
		if (health<0){
			alive=false;
		}
	}
	
	public Monster (int newhealth, int newattack, int newmovement, String newName){
		health=newhealth;
		attack=newattack;
		movement=newmovement;
		name=newName;
		
		int maxXBoardSpace = battleBoard.length-1;
		int maxYBoardSpace = battleBoard[0].length-1;
		
		int randNumX, randNumY;
		
	do{
		randNumX = (int)(Math.random()*maxXBoardSpace);
		randNumY = (int)(Math.random()*maxYBoardSpace);
		} while (battleBoard[randNumX][randNumY] !='*');
	
	xPosition = randNumX;
	yPosition = randNumY;
	
	this.nameChar = this.name.charAt(0);
	
	battleBoard[this.yPosition][this.xPosition]=this.nameChar;
	numOfMonsters++;
	
	}
	
	public Monster() {
		numOfMonsters++;
	}
		
	public boolean getAlive(){
		return alive;
	}
	
	
	
}

 

komentarz zamknięcia: Udzielono odpowiedzi

1 odpowiedź

+1 głos
odpowiedź 26 czerwca 2016 przez mbabane Szeryf (79,300 p.)
wybrane 27 czerwca 2016 przez Mlorism
 
Najlepsza

nie rowna w sensie, ze sie wyswietla nierowno w konsoli? jesli tak, to zmien czcionke na czcionke o stalej szerokosci znakow np. czcionka o nazwie Courier New

komentarz 27 czerwca 2016 przez Mlorism Użytkownik (580 p.)
Dzięki! :)

Podobne pytania

0 głosów
3 odpowiedzi 339 wizyt
0 głosów
4 odpowiedzi 6,179 wizyt
pytanie zadane 23 października 2017 w Java przez Akiro Bywalec (2,910 p.)
0 głosów
2 odpowiedzi 1,868 wizyt
pytanie zadane 27 października 2016 w Java przez Lukasz95 Bywalec (2,160 p.)

92,755 zapytań

141,677 odpowiedzi

320,423 komentarzy

62,101 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...