Here is the full error
java.lang.IllegalArgumentException: input == null!
at javax.imageio.ImageIO.read(Unknown Source)
at me.spacekid434.Exordium.Art.getTexture(Art.java:33)
at me.spacekid434.Exordium.Game.paint(Game.java:45)
at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
at javax.swing.RepaintManager.prePaintDirtyRegions(Unknown Source)
at javax.swing.RepaintManager.access$700(Unknown Source)
at javax.swing.RepaintManager$ProcessingRunnable.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$000(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.run(Unknown Source)[/quote]
And here are the two functions
public static Image getTexture(String filename){
Image img = null;
img = Toolkit.getDefaultToolkit().createImage(filename);
System.out.println("Image!");
return img;
}
public static Image getTexture(String filename, int indexX, int indexY){
BufferedImage tempImg = null;
Image img = null;
if(filename == null)
return null;
try{
tempImg = ImageIO.read(Art.class.getResource(filename));
img = tempImg.getSubimage((indexX * TEX_WIDTH), (indexY * TEX_HEIGHT), TEX_WIDTH, TEX_HEIGHT);
}catch(Exception e){
e.printStackTrace();
}
return img;
}
and the paint method:
public void paint(Graphics g){
super.paint(g);
if(gamestate == Gamestate.MainMenu){
g.drawImage(MainMenu.background, 0, 0, this);
g.drawImage((Art.getTexture("GUI/tile.png", 1, 1)), 0, 20, this);
MainMenu.play.setVisible(true);
MainMenu.options.setVisible(true);
MainMenu.load.setVisible(true);
}
else if(gamestate == Gamestate.Credits){
g.setColor(Color.BLACK);
g.fillRect(0, 0, WIDTH, HEIGHT);
}
else if(gamestate == Gamestate.Settings){
g.drawImage(SettingsMenu.background, 0, 20, this);
}
if(OverlayMenu){
g.setColor(new Color(0, 0, 0, 126));
g.fillRect(0, 0, WIDTH, HEIGHT);
}
}