2013-10-28 93 views
0

你會如何放置主紋理,然後在其上面粘貼另一個紋理?或者,我是否應該只用按鈕紋理創建主紋理,並檢查該區域的鼠標點擊?我正在使用lwjgl和slick2d。如何把按鈕紋理放在另一個紋理上?

+0

爲什麼要這樣做? – Kyle

+0

我想創建一個主菜單,該菜單上有用於退出和播放的按鈕,現在我我想我會檢查鼠標點擊。 –

回答

0

您可以在圖像上繪製圖像,只需將想要的圖像的代碼放在所需的代碼下面,然後將圖像代碼放在底部。像:

graphic.drawImage(Image, 25, 50); //Under 
graphic.drawImage(Image2, 25, 50); //Over 

是這樣的,因爲負載秩序,代碼加載從上到下,雖然使用了圖像的位置被假設是似乎更高效的我,這樣當圖像懸停一個字符串變量結束或點擊它可以將字符串更改爲不同的圖像。

int mousex = Mouse.getX(); 
int mousey = Mouse.getY(); 
String buttonimgloc = "unhoveredimagelocation.png"; 

public void render(GameContainer gc, StateBasedGame sbg, Graphics graphic) throws SlickException{ 
    Image button = new Image(buttonimgloc); 
    graphic.drawImage(button, 35, 140); 
} 

public void update(GameContainer gc, StateBasedGame sbg, int delta) throws SlickException{ 
    Input input = gc.getInput(); 
    mousex = Mouse.getX(); 
    mousey = Mouse.getY(); 

    if((mousex>53 && mousex<114) && (mousey>300 && mousey<320)){ 
     buttonimgloc = "hoveredimagelocation.png"; 
     } else { 
      buttonimgloc = "unhoveredimagelocation"; 
    } 
} 

爲mousex和像老鼠的座標是從遊戲,我一直在工作,你會希望將其更改爲您的影像就像是

((mousex>"leftedgeofimage" && mousex<"rightedgeofimage") && (mousey>"bottomedgeofimage" && mousey<"topedgeofimage")) 

不要添加「S並用該圖像邊緣的實際座標更改「edgeofimage」

相關問題