2012-08-10 69 views
0

我需要一個生命條根據角色剩餘的HP進行減值。不過我不會 知道如何,因爲我的方式遊戲加載圖像將生命條添加到角色

ImageIcon ii = new ImageIcon("Textures/Health/Health100.png"); 
healthBar = ii.getImage(); 

我需要改變與人物當前的健康,以取代100「Health100.png」做到這一點。 但我不認爲我可以用變量替換100,所以我不知道該怎麼做。

在此先感謝您的幫助。

+0

你可以有健康的各個級別的圖像,並與相應的一個 – Daniel 2012-08-10 19:28:16

+0

1.替換當前的一個,當你不需要......你婉什麼,否則不要使用'ImageIcon' t可以通過'Toolkit.getImage'完成。 2.您可以像'Toolkit.getDefaultToolkit()的getImage(「紋理/保健/」 + currentHealth +「巴紐」)' – oldrinb 2012-08-10 19:28:32

+0

你也可以預載的圖片到一個數組,只是引用相應的一個,當你需要它 – jeff 2012-08-10 19:29:07

回答

3

你能不能簡單地串聯健康成字符串?例如

int health = 100; // change this variable as appropriate 
ImageIcon ii = new ImageIcon("Textures/Health/Health" + health + ".png"); 
+0

工作。謝謝。 – 2012-08-10 19:31:41

5

而是具有圖像的每一個健康的增量,而是所有這些圖像加載到內存中(無論是一次一個或查詢清單)你可以創建正確尺寸的BufferedImage實例(寬度/ height)並使用Java2D API直接繪製到其Graphics對象上。您可以在角色健康狀況發生變化時刷新圖像,而無需依賴物理圖像文件。

3

您可以預加載,這將是比健康波動重裝圖像更好的圖像。

當你加載你的遊戲

for (int i = 0; i < 100; ++i) 
    healthImg[i] = new ImageIcon("Textures/Health/Health" + health + ".png"); 

然後在你的遊戲循環

healthBar = healthImg[health]; 

但隨着其他傑夫認爲,它可能是更好地爲您只是不除非您的健康使用圖片(酒吧是很花哨)

相關問題