|
Images |
|
/*
* JVirus is a PacMan clone, written in Java.
*
* Please read "http://jvirus.sourceforge.net/jvirus_licence.txt" for copyrights.
*
* The sourcecode is designed and created with
* Sun J2SDK 1.3 and Microsoft Visual J++ 6.0
*
* JVirus homepage: http://jvirus.sourceforge.net
*
* autor: Slawa Weis
* email: slawaweis@animatronik.net
*
*/
package org.game.JVirus;
import java.awt.*;
import java.awt.image.*;
import javax.swing.*;
import org.game.JVirus.res.*;
/**
* static class for image loading. Only static methods here.
*
* @see org.game.JVirus.res.Resource
*/
public class Images implements IFields
{
/**
* name list for a tile
*/
protected static String [] IM_DEFAULT = { "not_created" };
/**
* name list for a tile
*/
protected static String [] IM_EMPTY = { "empty" };
/**
* name list for a tile
*/
protected static String [] IM_NOTHING = { "nothing" };
/**
* name list for a tile
*/
protected static String [] IM_JGATE = { "beam0", "beam1", "beam2", "beam3", "beam4", "beam5" };
/**
* name list for a tile
*/
protected static String [] IM_LIFE = { "life" };
/**
* images list
*/
public static AnimImage imageArray [] = new AnimImage[256];
/**
* reference for the avatar image
*/
public static Image avatar1 = null;
/**
* reference for the avatar image
*/
public static Image avatar2 = null;
/**
* reference for the avatar image
*/
public static Image avatar3 = null;
/**
* reference for the avatar image
*/
public static Image avatar4 = null;
/**
* hidden constructor
*/
private Images()
{
}
/**
* static initialiser. Load all images
*/
static
{
AnimImage defaultImage = loadAnimImage(IM_DEFAULT);
for(int i = 0; i < imageArray.length; i++)
imageArray[i] = defaultImage;
AnimImage empty = loadAnimImage(IM_EMPTY);
imageArray[EMPTY] = empty;
imageArray[NOTHING] = loadAnimImage(IM_NOTHING);
imageArray[START] = empty;
imageArray[END] = loadAnimImage("end");
imageArray[LIFE] = loadAnimImage(IM_LIFE);
imageArray[WALL1] = loadAnimImage("wall1");
imageArray[WALL2] = loadAnimImage("wall1");
imageArray[WALL3] = loadAnimImage("wall1");
imageArray[WALL4] = loadAnimImage("wall1");
imageArray[WALL5] = loadAnimImage("wall1");
imageArray[STONE] = loadAnimImage("stone");
imageArray[DATA1] = loadAnimImage("data1");
imageArray[DATA2] = loadAnimImage("data2");
// imageArray[DATA3] = loadAnimImage("lb");
imageArray[REDKEY] = loadAnimImage("redkey");
imageArray[GREENKEY] = loadAnimImage("greenkey");
imageArray[BLUEKEY] = loadAnimImage("bluekey");
imageArray[REDGATE] = loadAnimImage("redgate");
imageArray[GREENGATE] = loadAnimImage("greengate");
imageArray[BLUEGATE] = loadAnimImage("bluegate");
imageArray[AMD] = loadAnimImage("amd");
imageArray[INTEL] = loadAnimImage("intel");
Image [] jgate = loadImageArray(IM_JGATE);
imageArray[BEAM0] = new AnimImage(jgate);
imageArray[BEAM1] = new AnimImage(jgate);
imageArray[BEAM2] = new AnimImage(jgate);
imageArray[BEAM3] = new AnimImage(jgate);
imageArray[BEAM4] = new AnimImage(jgate);
imageArray[BEAM5] = new AnimImage(jgate);
imageArray[BEAM6] = new AnimImage(jgate);
imageArray[BEAM7] = new AnimImage(jgate);
imageArray[BEAM8] = new AnimImage(jgate);
imageArray[BEAM9] = new AnimImage(jgate);
imageArray[BEOS] = loadAnimImage("beos");
imageArray[LINUX] = loadAnimImage("linux");
imageArray[MAC] = loadAnimImage("macos");
imageArray[UNIX] = loadAnimImage("solaris");
imageArray[WINDOWS] = loadAnimImage("windows");
// load two avatar images and creates two mirror images
avatar1 = loadImage("avatar1");
avatar2 = loadImage("avatar2");
int a1w = avatar1.getWidth(null);
int a1h = avatar1.getHeight(null);
int a2w = avatar2.getWidth(null);
int a2h = avatar2.getHeight(null);
BufferedImage i_avatar1 = new BufferedImage(a1w, a1h, BufferedImage.TYPE_INT_RGB);
BufferedImage i_avatar2 = new BufferedImage(a2w, a2h, BufferedImage.TYPE_INT_RGB);
i_avatar1.createGraphics().drawImage(avatar1, 0, 0, a1w, a1h, a1w, 0, 0, a1h, null);
i_avatar2.createGraphics().drawImage(avatar2, 0, 0, a2w, a2h, a2w, 0, 0, a2h, null);
avatar3 = i_avatar1;
avatar4 = i_avatar2;
}
/**
* load a image
*
* @param name Image name
*/
protected static Image loadImage(String name)
{
return new ImageIcon(Resource.class.getResource(name + ".gif")).getImage();
}
/**
* load a animating image
*
* @param name Image name
* @see org.game.JVirus.AnimImage
*/
protected static AnimImage loadAnimImage(String name)
{
Image [] array = new Image[1];
array[0] = loadImage(name);
return new AnimImage(array);
}
/**
* load a animating image
*
* @param names Image names list
* @see org.game.JVirus.AnimImage
*/
protected static AnimImage loadAnimImage(String [] names)
{
Image [] array = new Image[names.length];
for(int i = 0; i < names.length; i++)
array[i] = loadImage(names[i]);
return new AnimImage(array);
}
/**
* load list of images
*
* @param names Image names list
*/
protected static Image [] loadImageArray(String [] names)
{
Image [] array = new Image[names.length];
for(int i = 0; i < names.length; i++)
array[i] = loadImage(names[i]);
return array;
}
}
|
Images |
|