package com.opticalcobra.storybear.game;
import java.awt.Component;
import java.awt.Graphics2D;
import java.awt.Point;
import java.awt.image.BufferedImage;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import com.opticalcobra.storybear.db.Database;
import com.opticalcobra.storybear.main.ILevelAppearance;
import com.opticalcobra.storybear.res.Imagelib;
import com.opticalcobra.storybear.res.Ressources;
public class Collectable implements ILevelAppearance {
private int block;
private int image_id;
private static transient Imagelib il = Imagelib.getInstance();
private static transient Database db = new Database();
public Collectable(int block, int image_id){
this.block = block;
this.image_id = image_id;
}
@Override
public int getBlock() {
return this.block;
}
@Override
public void render(Graphics2D g, int tileTypeId, int layerID, Component toBeNamed) {
if (layerID == Ressources.LAYERINTERACTION){
if (tileTypeId <18 || tileTypeId >22){
Point position = db.getObjectPosForeground(tileTypeId, Ressources.CONTAINERCOLLECTABLEID);
BufferedImage image = il.loadObjectPic(image_id, "col");
((JLabel)(toBeNamed)).setIcon(new ImageIcon(image));
//g.drawImage(image, (((block*Ressources.RASTERSIZE))% Ressources.WINDOW.width)+position.x,position.y, null);
//TODO: generisch machen
toBeNamed.setBounds((((block*Ressources.RASTERSIZE))% Ressources.WINDOW.width)+position.x,position.y, Ressources.CONTAINERCOLLECTABLE, Ressources.CONTAINERCOLLECTABLE);
}
}
}
}