[Android] Problem att sätta färg på text

Permalänk
Medlem

[Android] Problem att sätta färg på text

Ska rita ut en string i mitt spel, men kan fasen inte byta färg på fanskapet... testat getColor & setColor men de duger ej.

public void paint(float deltaTime) { Graphics g = game.getGraphics(); Graphics h = game.getGraphics(); g.drawImage(Assets.background, bg1.getBgX(), bg1.getBgY()); g.drawImage(Assets.background, bg2.getBgX(), bg2.getBgY()); paintTiles(g); ArrayList projectiles = robot.getProjectiles(); for (int i = 0; i < projectiles.size(); i++) { Projectile p = (Projectile) projectiles.get(i); g.drawRect(p.getX(), p.getY(), 10, 5, Color.BLACK); } // First draw the game elements. g.drawImage(currentSprite, robot.getCenterX() - 61, robot.getCenterY() - 63); g.drawImage(hanim.getImage(), hb.getCenterX() - 48, hb.getCenterY() - 48); g.drawImage(hanim.getImage(), hb2.getCenterX() - 48, hb2.getCenterY() - 48); g.drawString("Points:", 350, 600, paint); // Example: // g.drawImage(Assets.background, 0, 0); // g.drawImage(Assets.character, characterX, characterY); // Secondly, draw the UI above the game elements. if (state == GameState.Ready) drawReadyUI(); if (state == GameState.Running) drawRunningUI(); if (state == GameState.Paused) drawPausedUI(); if (state == GameState.GameOver) drawGameOverUI();

Permalänk
Medlem

Gissar på att du vill göra någor liknande

g.setColor(Color.BLACK); g.fillRect(0, 0, 600, 600); g.setColor(Color.WHITE); g.drawString("Score: " +score, 20, 20);

Fungerar inte en liknande lösning får du nog beskriva på vilket sätt setColor inte fungerar.

Visa signatur

i7-6700K | MSI Z170A | MSI 1080 8GB | 16GB Kingston HyperX | Intel 600P 256GB | Samsung EVO Basic 840 250GB x2 raid 0 | Corsair RM 750W | 3 x Dell U2414H

Permalänk
Medlem
Skrivet av gn1p:

Gissar på att du vill göra någor liknande

g.setColor(Color.BLACK); g.fillRect(0, 0, 600, 600); g.setColor(Color.WHITE); g.drawString("Score: " +score, 20, 20);

Fungerar inte en liknande lösning får du nog beskriva på vilket sätt setColor inte fungerar.

Testade det där. Fick "The method setColor() is undefined for the type Graphics"...

Permalänk
Medlem

Det är väl ditt Paint objekt som du ska sätta color etc på?

Visa signatur

Corsair 16GB (4x4096MB) CL9 1600Mhz | Asus P8Z77-V PRO |
Samsung SSD Basic 830-Series 256GB | Intel Core i7 3770K 3,5Ghz |
Asus Xonar Essence STX | Noctua NH-U9B SE2 | Antec Performance One P280 | Corsair HX 850W 80+ Gold Modulär | MSI GTX 770

Permalänk
Medlem
Skrivet av Progrmor:

Ska rita ut en string i mitt spel, men kan fasen inte byta färg på fanskapet... testat getColor & setColor men de duger ej.

public void paint(float deltaTime) { Graphics g = game.getGraphics(); Graphics h = game.getGraphics(); g.drawImage(Assets.background, bg1.getBgX(), bg1.getBgY()); g.drawImage(Assets.background, bg2.getBgX(), bg2.getBgY()); paintTiles(g); ArrayList projectiles = robot.getProjectiles(); for (int i = 0; i < projectiles.size(); i++) { Projectile p = (Projectile) projectiles.get(i); g.drawRect(p.getX(), p.getY(), 10, 5, Color.BLACK); } // First draw the game elements. g.drawImage(currentSprite, robot.getCenterX() - 61, robot.getCenterY() - 63); g.drawImage(hanim.getImage(), hb.getCenterX() - 48, hb.getCenterY() - 48); g.drawImage(hanim.getImage(), hb2.getCenterX() - 48, hb2.getCenterY() - 48); g.drawString("Points:", 350, 600, paint); // Example: // g.drawImage(Assets.background, 0, 0); // g.drawImage(Assets.character, characterX, characterY); // Secondly, draw the UI above the game elements. if (state == GameState.Ready) drawReadyUI(); if (state == GameState.Running) drawRunningUI(); if (state == GameState.Paused) drawPausedUI(); if (state == GameState.GameOver) drawGameOverUI();

Vad är det för klass du får ifrån game.getGraphics()?

Visa signatur

~. Citera så jag hittar tillbaka .~