62 lines
1.3 KiB
Java
62 lines
1.3 KiB
Java
package Sprites;
|
|
|
|
import javax.imageio.ImageIO;
|
|
import javax.swing.*;
|
|
import java.awt.*;
|
|
import java.awt.image.BufferedImage;
|
|
import java.io.IOException;
|
|
|
|
/**
|
|
* Created by sagi on 23/01/2016.
|
|
*/
|
|
public class SideScollerBackground extends Sprite {
|
|
|
|
private int locXCopy;
|
|
|
|
public SideScollerBackground(int w, int h, int acc, String imgName, int sWidth, int sHeight) {
|
|
super(0, 0, w, h, acc, imgName, 0, sWidth, sHeight);
|
|
|
|
locXCopy = pWidth;
|
|
if(sHeight != pHeight){
|
|
locY = pHeight-sHeight;
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
/*
|
|
* resizes image to a set size
|
|
*/
|
|
@Override
|
|
protected void setImageDimensions()
|
|
{
|
|
Image tmp = bImage.getScaledInstance(sWidth, sHeight, Image.SCALE_SMOOTH);
|
|
BufferedImage bi = new BufferedImage(sWidth, sHeight, BufferedImage.TYPE_INT_ARGB);
|
|
|
|
Graphics2D g2d = bi.createGraphics();
|
|
g2d.drawImage(tmp,0,0,null);
|
|
g2d.dispose();
|
|
bImage = bi;
|
|
|
|
}
|
|
|
|
@Override
|
|
public void update() {
|
|
locX -= acceleration;
|
|
locXCopy -= acceleration;
|
|
if(locX+pWidth < 0)
|
|
locX = pWidth;
|
|
if(locXCopy+pWidth < 0)
|
|
locXCopy = pWidth;
|
|
}
|
|
|
|
@Override
|
|
public void drawSprite(Graphics g, JPanel p){
|
|
super.drawSprite(g,p);
|
|
g.drawImage(bImage, locXCopy, locY, p);
|
|
}
|
|
|
|
|
|
}
|