Drawer.getImage() added. AbstractDrawer.java added to contain image for
XXXDrawers. ImagePanel.java removed.
This commit is contained in:
		@@ -1,29 +1,25 @@
 | 
				
			|||||||
package cicaprojekt;
 | 
					package cicaprojekt;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import java.awt.Graphics;
 | 
					 | 
				
			||||||
import java.awt.image.BufferedImage;
 | 
					import java.awt.image.BufferedImage;
 | 
				
			||||||
import java.io.File;
 | 
					import java.io.File;
 | 
				
			||||||
import java.io.IOException;
 | 
					import java.io.IOException;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import javax.imageio.ImageIO;
 | 
					import javax.imageio.ImageIO;
 | 
				
			||||||
import javax.swing.JPanel;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
public class ImagePanel extends JPanel{
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public abstract class AbstractDrawer implements Drawer {
 | 
				
			||||||
    private BufferedImage image;
 | 
					    private BufferedImage image;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public ImagePanel(String path) throws IOException {                
 | 
					    public AbstractDrawer(String path) throws IOException {                
 | 
				
			||||||
        image = ImageIO.read(new File(path));
 | 
					        image = ImageIO.read(new File(path));
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					 | 
				
			||||||
    @Override
 | 
					 | 
				
			||||||
    protected void paintComponent(Graphics g) {
 | 
					 | 
				
			||||||
        super.paintComponent(g);
 | 
					 | 
				
			||||||
        g.drawImage(image, 0, 0, null); // see javadoc for more info on the parameters            
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    public void changeImage(String path) throws IOException {
 | 
					    public void changeImage(String path) throws IOException {
 | 
				
			||||||
        image = ImageIO.read(new File(path));
 | 
					        image = ImageIO.read(new File(path));
 | 
				
			||||||
        repaint();
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Override
 | 
				
			||||||
 | 
					    public BufferedImage getImage() {
 | 
				
			||||||
 | 
					        return image;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@@ -1,5 +1,6 @@
 | 
				
			|||||||
package cicaprojekt;
 | 
					package cicaprojekt;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.awt.image.BufferedImage;
 | 
				
			||||||
import java.io.IOException;
 | 
					import java.io.IOException;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
public interface Drawer {
 | 
					public interface Drawer {
 | 
				
			||||||
@@ -7,4 +8,5 @@ public interface Drawer {
 | 
				
			|||||||
    public void draw() throws IOException;
 | 
					    public void draw() throws IOException;
 | 
				
			||||||
    public int getTileX();
 | 
					    public int getTileX();
 | 
				
			||||||
    public int getTileY();
 | 
					    public int getTileY();
 | 
				
			||||||
 | 
					    public BufferedImage getImage();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2,14 +2,12 @@ package cicaprojekt;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import java.io.IOException;
 | 
					import java.io.IOException;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
public class FieldDrawer extends ImagePanel implements Drawer {
 | 
					public class FieldDrawer extends AbstractDrawer {
 | 
				
			||||||
 | 
					 | 
				
			||||||
    Field field;
 | 
					    Field field;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    public FieldDrawer(Field f) throws IOException {
 | 
					    public FieldDrawer(Field f) throws IOException {
 | 
				
			||||||
        super("Field.png");
 | 
					        super("Field.png");
 | 
				
			||||||
        field = f;
 | 
					        field = f;
 | 
				
			||||||
        setVisible(false);
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
@@ -19,9 +17,7 @@ public class FieldDrawer extends ImagePanel implements Drawer {
 | 
				
			|||||||
        else if(field.hasZPM())
 | 
					        else if(field.hasZPM())
 | 
				
			||||||
            changeImage("ZPM.png");
 | 
					            changeImage("ZPM.png");
 | 
				
			||||||
        else
 | 
					        else
 | 
				
			||||||
            changeImage("Field.png");
 | 
					            changeImage("Field.png");       
 | 
				
			||||||
        
 | 
					 | 
				
			||||||
        setVisible(true);
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
@@ -34,4 +30,5 @@ public class FieldDrawer extends ImagePanel implements Drawer {
 | 
				
			|||||||
        return field.getY();
 | 
					        return field.getY();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2,19 +2,17 @@ package cicaprojekt;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import java.io.IOException;
 | 
					import java.io.IOException;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
public class GapDrawer extends ImagePanel implements Drawer{
 | 
					public class GapDrawer extends AbstractDrawer {
 | 
				
			||||||
 | 
					 | 
				
			||||||
    private Gap gap;
 | 
					    private Gap gap;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    public GapDrawer(Gap g) throws IOException {
 | 
					    public GapDrawer(Gap g) throws IOException {
 | 
				
			||||||
        super("Gap.png");
 | 
					        super("Gap.png");
 | 
				
			||||||
        gap = g; 
 | 
					        gap = g; 
 | 
				
			||||||
        setVisible(false);
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
    public void draw() {
 | 
					    public void draw() {
 | 
				
			||||||
        setVisible(true);   
 | 
					        //TODO ezzel csinálni kéne valamit.
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2,14 +2,12 @@ package cicaprojekt;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import java.io.IOException;
 | 
					import java.io.IOException;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
public class GateDrawer extends ImagePanel implements Drawer{
 | 
					public class GateDrawer extends AbstractDrawer {
 | 
				
			||||||
 | 
					 | 
				
			||||||
    Gate gate;
 | 
					    Gate gate;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    public GateDrawer(Gate g) throws IOException {
 | 
					    public GateDrawer(Gate g) throws IOException {
 | 
				
			||||||
        super("ClosedGate.png");
 | 
					        super("ClosedGate.png");
 | 
				
			||||||
        gate = g;
 | 
					        gate = g;
 | 
				
			||||||
        setVisible(false);
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
@@ -17,9 +15,7 @@ public class GateDrawer extends ImagePanel implements Drawer{
 | 
				
			|||||||
        if(gate.isOpen())
 | 
					        if(gate.isOpen())
 | 
				
			||||||
            changeImage("Field.png");  //TODO picture for open gate.
 | 
					            changeImage("Field.png");  //TODO picture for open gate.
 | 
				
			||||||
        else 
 | 
					        else 
 | 
				
			||||||
            changeImage("ClosedGate.png");
 | 
					            changeImage("ClosedGate.png"); 
 | 
				
			||||||
        
 | 
					 | 
				
			||||||
        setVisible(true);
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2,13 +2,12 @@ package cicaprojekt;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import java.io.IOException;
 | 
					import java.io.IOException;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
public class PlayerBaseDrawer extends ImagePanel implements Drawer {
 | 
					public class PlayerBaseDrawer extends AbstractDrawer implements Drawer {
 | 
				
			||||||
    PlayerBase playerbase;
 | 
					    PlayerBase playerbase;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    public PlayerBaseDrawer(PlayerBase pb) throws IOException {
 | 
					    public PlayerBaseDrawer(PlayerBase pb) throws IOException {
 | 
				
			||||||
        super("Replicator.png");
 | 
					        super("Replicator.png");
 | 
				
			||||||
        playerbase = pb;
 | 
					        playerbase = pb;
 | 
				
			||||||
        setVisible(false);
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
@@ -31,9 +30,7 @@ public class PlayerBaseDrawer extends ImagePanel implements Drawer {
 | 
				
			|||||||
                        changeImage("Replicator_west.png");
 | 
					                        changeImage("Replicator_west.png");
 | 
				
			||||||
                        break;
 | 
					                        break;
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
        }
 | 
					        }       
 | 
				
			||||||
        
 | 
					 | 
				
			||||||
        setVisible(true);        
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2,13 +2,12 @@ package cicaprojekt;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import java.io.IOException;
 | 
					import java.io.IOException;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
public class PlayerDrawer extends ImagePanel implements Drawer {
 | 
					public class PlayerDrawer extends AbstractDrawer implements Drawer {
 | 
				
			||||||
    Player player;
 | 
					    Player player;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    public PlayerDrawer(Player p) throws IOException {
 | 
					    public PlayerDrawer(Player p) throws IOException {
 | 
				
			||||||
        super("ONeill.png");
 | 
					        super("ONeill.png");
 | 
				
			||||||
        player = p;
 | 
					        player = p;
 | 
				
			||||||
        setVisible(false);
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
@@ -49,9 +48,7 @@ public class PlayerDrawer extends ImagePanel implements Drawer {
 | 
				
			|||||||
                        break;
 | 
					                        break;
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
                break;
 | 
					                break;
 | 
				
			||||||
        }
 | 
					        }     
 | 
				
			||||||
        
 | 
					 | 
				
			||||||
        setVisible(true);
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2,14 +2,12 @@ package cicaprojekt;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import java.io.IOException;
 | 
					import java.io.IOException;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
public class ScaleDrawer extends ImagePanel implements Drawer {
 | 
					public class ScaleDrawer extends AbstractDrawer implements Drawer {
 | 
				
			||||||
 | 
					 | 
				
			||||||
    Scale scale;
 | 
					    Scale scale;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    public ScaleDrawer(Scale s) throws IOException {
 | 
					    public ScaleDrawer(Scale s) throws IOException {
 | 
				
			||||||
        super("Scale.png");
 | 
					        super("Scale.png");
 | 
				
			||||||
        scale = s;
 | 
					        scale = s;
 | 
				
			||||||
        setVisible(false);
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
@@ -17,9 +15,7 @@ public class ScaleDrawer extends ImagePanel implements Drawer {
 | 
				
			|||||||
        if(scale.hasBox())
 | 
					        if(scale.hasBox())
 | 
				
			||||||
            changeImage("Box.png"); //TODO Picture for Scale with box.
 | 
					            changeImage("Box.png"); //TODO Picture for Scale with box.
 | 
				
			||||||
        else
 | 
					        else
 | 
				
			||||||
            changeImage("Scale.png");
 | 
					            changeImage("Scale.png");        
 | 
				
			||||||
        
 | 
					 | 
				
			||||||
        setVisible(true);
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2,14 +2,12 @@ package cicaprojekt;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import java.io.IOException;
 | 
					import java.io.IOException;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
public class WallDrawer extends ImagePanel implements Drawer {
 | 
					public class WallDrawer extends AbstractDrawer implements Drawer {
 | 
				
			||||||
 | 
					 | 
				
			||||||
    Wall wall;
 | 
					    Wall wall;
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
    public WallDrawer(Wall w) throws IOException {
 | 
					    public WallDrawer(Wall w) throws IOException {
 | 
				
			||||||
        super("Wall.png");
 | 
					        super("Wall.png");
 | 
				
			||||||
        wall = w;
 | 
					        wall = w;
 | 
				
			||||||
        setVisible(false);
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
@@ -34,9 +32,7 @@ public class WallDrawer extends ImagePanel implements Drawer {
 | 
				
			|||||||
                   changeImage("Wall.png");
 | 
					                   changeImage("Wall.png");
 | 
				
			||||||
                   break;
 | 
					                   break;
 | 
				
			||||||
           }
 | 
					           }
 | 
				
			||||||
       }
 | 
					       }       
 | 
				
			||||||
       
 | 
					 | 
				
			||||||
       setVisible(true);        
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user