DroidQuest/src/com/droidquest/levels/RO1.java

1024 lines
56 KiB
Java

package com.droidquest.levels;
import com.droidquest.Room;
import com.droidquest.RoomDisplay;
import com.droidquest.Wire;
import com.droidquest.avatars.GameCursor;
import com.droidquest.avatars.HelpCam;
import com.droidquest.avatars.Remote;
import com.droidquest.avatars.SolderingPen;
import com.droidquest.decorations.Arrow;
import com.droidquest.decorations.Graphix;
import com.droidquest.devices.*;
import com.droidquest.items.*;
import com.droidquest.materials.*;
import java.awt.*;
class RO1 extends Level {
public RO1(RoomDisplay rd) {
super(rd);
materials.addElement(new Material(true, false)); // 0= Blank
materials.addElement(new Material(new Color(190, 190, 255), false, true)); // 1= Light Blue Wall
int[][] lockProgram1 = {
{Lock.NARROW},
{4, 9, 0, 4, 6, 1},
{4, 8, 0, 4, 5, 1},
{Lock.NARROW},
{4, 8, 1, 4, 5, 0},
{4, 9, 1, 4, 6, 0},
};
materials.addElement(new Lock(Color.blue, Color.blue, lockProgram1)); // 2= Lock 1
materials.addElement(new Material(new Color(0, 0, 128), false, true)); // 3= Dark Blue Wall
materials.addElement(new BlueWall()); // 4= Blue Wall
int[][] lockProgram2 = {
{Lock.NARROW},
{5, 1, 0, 5, 2, 0, 5, 3, 0, 6, 1, 4, 6, 2, 4, 6, 3, 4},
{6, 1, 0, 6, 2, 0, 6, 3, 0, 7, 1, 4, 7, 2, 4, 7, 3, 4},
{7, 1, 0, 7, 2, 0, 7, 3, 0, 8, 1, 4, 8, 2, 4, 8, 3, 4},
{8, 1, 0, 8, 2, 0, 8, 3, 0, 9, 1, 4, 9, 2, 4, 9, 3, 4},
{9, 1, 0, 9, 2, 0, 9, 3, 0, 10, 1, 4, 10, 2, 4, 10, 3, 4},
{10, 1, 0, 10, 2, 0, 10, 3, 0, 11, 1, 4, 11, 2, 4, 11, 3, 4},
{11, 1, 0, 11, 2, 0, 11, 3, 0, 12, 1, 4, 12, 2, 4, 12, 3, 4},
{12, 1, 0, 12, 2, 0, 12, 3, 0, 13, 1, 4, 13, 2, 4, 13, 3, 4},
{13, 1, 0, 13, 2, 0, 13, 3, 0, 14, 1, 4, 14, 2, 4, 14, 3, 4},
{14, 1, 0, 14, 2, 0, 14, 3, 0, 15, 1, 4, 15, 2, 4, 15, 3, 4},
{15, 1, 0, 15, 2, 0, 15, 3, 0, 16, 1, 4, 16, 2, 4, 16, 3, 4},
{16, 1, 0, 16, 2, 0, 16, 3, 0, 17, 1, 4, 17, 2, 4, 17, 3, 4},
{17, 1, 0, 17, 2, 0, 17, 3, 0, 18, 1, 4, 18, 2, 4, 18, 3, 4},
{Lock.NARROW},
{17, 1, 4, 17, 2, 4, 17, 3, 4, 18, 1, 0, 18, 2, 0, 18, 3, 0},
{16, 1, 4, 16, 2, 4, 16, 3, 4, 17, 1, 0, 17, 2, 0, 17, 3, 0},
{15, 1, 4, 15, 2, 4, 15, 3, 4, 16, 1, 0, 16, 2, 0, 16, 3, 0},
{14, 1, 4, 14, 2, 4, 14, 3, 4, 15, 1, 0, 15, 2, 0, 15, 3, 0},
{13, 1, 4, 13, 2, 4, 13, 3, 4, 14, 1, 0, 14, 2, 0, 14, 3, 0},
{12, 1, 4, 12, 2, 4, 12, 3, 4, 13, 1, 0, 13, 2, 0, 13, 3, 0},
{11, 1, 4, 11, 2, 4, 11, 3, 4, 12, 1, 0, 12, 2, 0, 12, 3, 0},
{10, 1, 4, 10, 2, 4, 10, 3, 4, 11, 1, 0, 11, 2, 0, 11, 3, 0},
{9, 1, 4, 9, 2, 4, 9, 3, 4, 10, 1, 0, 10, 2, 0, 10, 3, 0},
{8, 1, 4, 8, 2, 4, 8, 3, 4, 9, 1, 0, 9, 2, 0, 9, 3, 0},
{7, 1, 4, 7, 2, 4, 7, 3, 4, 8, 1, 0, 8, 2, 0, 8, 3, 0},
{6, 1, 4, 6, 2, 4, 6, 3, 4, 7, 1, 0, 7, 2, 0, 7, 3, 0},
{5, 1, 4, 5, 2, 4, 5, 3, 4, 6, 1, 0, 6, 2, 0, 6, 3, 0}
};
materials.addElement(new Lock(Color.blue, Color.blue, lockProgram2)); // 5= Lock2
materials.addElement(new Material(new Color(0, 255, 0), false, true)); // 6= Green Wall
materials.addElement(new Portal("RO2.lvl", true, true)); // 7= Portal to Level 2
materials.addElement(new LockS1()); //8=Secret Lock
for (int a = 0; a < 32; a++) {
rooms.addElement(new Room());
}
{ // Room 0, Entry point
Room room = rooms.elementAt(0);
room.SetMaterialOutline(0, 0, 19, 11, 1);
room.SetMaterialFill(19, 8, 19, 10, 0);
room.AddTextBox("Welcome Traveller!", 150, 64, 400);
room.AddTextBox("You have fallen into the under- ground city of Robotropolis. To escape, travel upward through all five levels of the city."
, 60, 100, 400);
room.AddTextBox("The three robots in the next room will help you on your journey. To learn how they work, choose Robot Anatomy from the menu."
, 60, 200, 400);
room.AddTextBox("This way to Robotropolis", 360, 290, 200);
room.AddArrow(559, 11 * 28 + 16, Arrow.DIR_RIGHT, 100, Color.white);
}
{ // Room 1, Robots Here
Room room = rooms.elementAt(1);
room.RoomArray = new int[][]{
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1},
{0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}
};
items.addElement(new BlueRobot(6 * 28, 5 * 32, room));
{
Item robot = items.lastElement();
BlueRobot brobot = (BlueRobot) robot;
brobot.thrusterPower = true;
RoomSensor rSensor = new RoomSensor(8 * 28, 4 * 32 + 16, brobot.InternalRoom,
new Key(0, 0, null, Color.white));
items.addElement(rSensor);
rSensor.rotate(1);
rSensor.rotate(1);
NOTGate ng = new NOTGate(5 * 28, 3 * 32, brobot.InternalRoom);
items.addElement(ng);
FlipFlop ff = new FlipFlop(9 * 28, 6 * 32, brobot.InternalRoom);
items.addElement(ff);
Wire dummy;
dummy = new Wire(rSensor.ports[0], ng.ports[0]);
dummy = new Wire(ng.ports[1], brobot.devices[9].ports[0]);
dummy = new Wire(ff.ports[0], brobot.devices[5].ports[0]);
dummy = new Wire(ff.ports[1], brobot.devices[7].ports[0]);
dummy = new Wire(ff.ports[2], brobot.devices[1].ports[0]);
dummy = new Wire(ff.ports[3], brobot.devices[3].ports[0]);
}
items.addElement(new WhiteRobot(8 * 28, 3 * 32, room));
{
Item robot = items.lastElement();
WhiteRobot wrobot = (WhiteRobot) robot;
wrobot.thrusterPower = true;
RoomSensor rSensor = new RoomSensor(4 * 28, 4 * 32, wrobot.InternalRoom,
new Crystal(0, 0, null, 0));
items.addElement(rSensor);
rSensor.rotate(1);
rSensor.rotate(1);
NOTGate ng = new NOTGate(5 * 28, 7 * 32, wrobot.InternalRoom);
items.addElement(ng);
ng.rotate(1);
ng.rotate(1);
ng.rotate(1);
FlipFlop ff = new FlipFlop(8 * 28, 6 * 32, wrobot.InternalRoom);
items.addElement(ff);
ANDGate ag1 = new ANDGate(9 * 28, 2 * 32, wrobot.InternalRoom);
items.addElement(ag1);
ANDGate ag2 = new ANDGate(12 * 28, 8 * 32, wrobot.InternalRoom);
items.addElement(ag2);
ag2.rotate(1);
ag2.rotate(1);
Node node = new Node(15 * 28, 7 * 32, wrobot.InternalRoom, Node.TYPE_THREE);
items.addElement(node);
node.rotate(1);
node.rotate(1);
Wire dummy;
dummy = new Wire(rSensor.ports[0], wrobot.devices[8].ports[0]);
dummy = new Wire(node.ports[0], wrobot.devices[5].ports[0]);
dummy = new Wire(node.ports[1], ag2.ports[0]);
dummy = new Wire(node.ports[2], ng.ports[0]);
dummy = new Wire(node.ports[3], ag1.ports[1]);
dummy = new Wire(ag1.ports[2], wrobot.devices[0].ports[0]);
dummy = new Wire(ag2.ports[2], wrobot.devices[2].ports[0]);
dummy = new Wire(ng.ports[1], wrobot.devices[3].ports[0]);
dummy = new Wire(ff.ports[0], wrobot.devices[4].ports[0]);
dummy = new Wire(ff.ports[1], wrobot.devices[6].ports[0]);
dummy = new Wire(ff.ports[2], ag1.ports[0]);
dummy = new Wire(ff.ports[3], ag2.ports[1]);
}
items.addElement(new OrangeRobot(14 * 28, 9 * 32, room));
{
Item robot = items.lastElement();
OrangeRobot orobot = (OrangeRobot) robot;
orobot.thrusterPower = true;
RoomSensor rSensor = new RoomSensor(8 * 28, 4 * 32 + 16, orobot.InternalRoom,
new Key(0, 0, null, Color.white));
items.addElement(rSensor);
rSensor.rotate(1);
rSensor.rotate(1);
NOTGate ng = new NOTGate(5 * 28, 3 * 32, orobot.InternalRoom);
items.addElement(ng);
SmallChip sc = new SmallChip(10 * 28, 6 * 32, orobot.InternalRoom, "2");
items.addElement(sc);
sc.LoadChip("WallHugger.chip", true);
Wire dummy;
dummy = new Wire(rSensor.ports[0], ng.ports[0]);
dummy = new Wire(ng.ports[1], orobot.devices[9].ports[0]); // Antenna
dummy = new Wire(sc.ports[0], orobot.devices[0].ports[0]); // Top Thruster
dummy = new Wire(sc.ports[1], orobot.devices[7].ports[0]); // Left Bumper
dummy = new Wire(sc.ports[2], orobot.devices[3].ports[0]); // Left Thruster
dummy = new Wire(sc.ports[3], orobot.devices[6].ports[0]); // Bottom Bumper
dummy = new Wire(sc.ports[4], orobot.devices[2].ports[0]); // Bottom Thruster
dummy = new Wire(sc.ports[5], orobot.devices[5].ports[0]); // Right Bumper
dummy = new Wire(sc.ports[6], orobot.devices[1].ports[0]); // Right Thruster
dummy = new Wire(sc.ports[7], orobot.devices[4].ports[0]); // Top Bumper
}
items.addElement(new Key(8 * 28, 8 * 32, room, Color.blue));
}
{ // Room 2, Sewer Door
Room room = rooms.elementAt(2);
room.RoomArray = new int[][]{
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
{1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1},
{0, 0, 0, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1}
};
room.AddTextBox("{BIG} The City Sewer", 40, 80, 500);
items.addElement(new Sweeper(476, 224, room));
}
{ // Room 3, Maze 1 "PR"
Room room = rooms.elementAt(3);
room.RoomArray = new int[][]{
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1},
{1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1},
{1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0},
{1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{1, 0, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1},
{1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1},
{1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1}
};
String[] i1 = {"0073.jpg", "0074.jpg"};
room.graphix.addElement(new Graphix(i1, 4 * 28 + 14, 5 * 32));
}
{ // Room 4, Maze 2 "CG"
Room room = rooms.elementAt(4);
room.RoomArray = new int[][]{
{1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1},
{1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1},
{1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0},
{1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}
};
String[] i6 = {"0075.jpg", "0076.jpg", "0077.jpg", "0076.jpg"};
room.graphix.addElement(new Graphix(i6, 13 * 28, 4 * 32,
Graphix.BOUNCE, 0, 2, 3 * 16));
}
{ // Room 5, Maze 3 "PC"
Room room = rooms.elementAt(5);
room.RoomArray = new int[][]{
{1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1},
{0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1}
};
}
{ // Room 6, Maze 4 "RC"
Room room = rooms.elementAt(6);
room.RoomArray = new int[][]{
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1},
{1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1}
};
String[] i7 = {"0082.jpg", "0083.jpg", "0084.jpg", "0085.jpg", "0084.jpg", "0083.jpg", "0082.jpg"};
room.graphix.addElement(new Graphix(i7, 12 * 28, 4 * 32,
Graphix.BOUNCE, 0, 2, 3 * 16));
}
{ // Room 7, Maze 5 "MW"
Room room = rooms.elementAt(7);
room.RoomArray = new int[][]{
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1},
{0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1},
{1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1},
{1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1},
{1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1},
{1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1}
};
String[] i2 = {"0086.jpg", "0087.jpg"};
room.graphix.addElement(new Graphix(i2, 5 * 28, 2 * 32));
}
{ // Room 8, Maze 6 "CIG"
Room room = rooms.elementAt(8);
room.RoomArray = new int[][]{
{1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1},
{1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1},
{0, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0},
{1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0},
{1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1}
};
}
{ // Room 9, Maze 7 "NH"
Room room = rooms.elementAt(9);
room.RoomArray = new int[][]{
{1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1},
{1, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1},
{1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1},
{1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1},
{1, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1},
{1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1}
};
}
{ // Room 10, Maze 8 "SG"
Room room = rooms.elementAt(10);
room.RoomArray = new int[][]{
{1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1}
};
String[] i8 = {"0078.jpg", "0079.jpg", "0080.jpg", "0081.jpg"};
room.graphix.addElement(new Graphix(i8, 13 * 28, 10 * 32,
Graphix.BOUNCE, 2, 0, 5 * 14));
}
{ // Room 11, Maze Bottom
Room room = rooms.elementAt(11);
room.RoomArray = new int[][]{
{3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3}
};
items.addElement(new ContactSensor(9 * 28, 2 * 32, room, new Token(0, 0, null)));
}
{ // Room 12, Top Corridor 1
Room room = rooms.elementAt(12);
room.RoomArray = new int[][]{
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3}
};
}
{ // Room 13, Top Corridor 2
Room room = rooms.elementAt(13);
room.RoomArray = new int[][]{
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3}
};
}
{ // Room 14, Top Corridor Branch
Room room = rooms.elementAt(14);
room.RoomArray = new int[][]{
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3}
};
}
{ // Room 15, Hallway Top Right
Room room = rooms.elementAt(15);
room.RoomArray = new int[][]{
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3}
};
}
{ // Room 16, Hallway Bottom Right
Room room = rooms.elementAt(16);
room.RoomArray = new int[][]{
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3}
};
}
{ // Room 17, Hallway Bottom
Room room = rooms.elementAt(17);
room.RoomArray = new int[][]{
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3}
};
items.addElement(new AmpireBot(10 * 28, 3 * 32, room));
}
{ // Room 18, Hallway Bottom Left
Room room = rooms.elementAt(18);
room.RoomArray = new int[][]{
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3}
};
}
{ // Room 19, Hallway Top Left
Room room = rooms.elementAt(19);
room.RoomArray = new int[][]{
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3}
};
}
{ // Room 20, Hallway Top
Room room = rooms.elementAt(20);
room.RoomArray = new int[][]{
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3}
};
}
{ // Room 21, WallHugger Puzzle
Room room = rooms.elementAt(21);
room.RoomArray = new int[][]{
{3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3},
{3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3},
{3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3},
{3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3},
{3, 3, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0, 0, 0, 0, 0, 0, 3, 3},
{3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3},
{3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3}
};
items.addElement(new Magnet(10 * 28, 9 * 32, room));
int[] pace = {3 * 28, 120, 16 * 28, 120};
int[] protect = {0, 3 * 32, 19 * 28, 11 * 32, 10 * 28, 0};
items.addElement(new Sentry(3 * 28, 120, room, pace, protect, false));
}
{ // Room 22, Bouncer Puzzle
Room room = rooms.elementAt(22);
room.RoomArray = new int[][]{
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3},
{3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3},
{3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3},
{3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3}
};
items.addElement(new Crystal(16 * 28, 5 * 32, room, 100000));
int[] pace = {3 * 28, 94, 3 * 28, 302};
int[] protect = {4 * 28, 0, 19 * 28, 11 * 32, 0, 5 * 32};
items.addElement(new Sentry(3 * 28, 94, room, pace, protect, false));
}
{ // Room 23, AnteChamber
Room room = rooms.elementAt(23);
room.RoomArray = new int[][]{
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 0, 0, 0, 0, 3, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0, 0, 0, 0, 0, 0, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0, 0, 0, 0, 0, 0, 3, 3},
{3, 3, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0},
{3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{3, 3, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0},
{3, 3, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0},
{3, 3, 3, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0, 0, 0, 0, 0, 0, 3, 3},
{3, 3, 3, 3, 3, 0, 0, 0, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 3, 3}
};
room.AddTextBox("Do you have EVERYTHING?",
98, 278, 168);
}
{ // Room 24, Directional Token Sensor here
Room room = rooms.elementAt(24);
room.RoomArray = new int[][]{
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 3, 3},
{3, 3, 3, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 3, 3},
{3, 3, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 3, 3},
{3, 3, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 3, 3},
{3, 3, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 3, 3},
{3, 3, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 3, 3},
{3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3},
{3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3},
{3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3}
};
room.AddTextBox("Time to board a 'Bot!",
170, 320, 500);
items.addElement(new DirectionalSensor(3 * 28 + 14, 4 * 32, room, new Token(0, 0, null)));
}
{ // Room 25, Sewer Grate Top
Room room = rooms.elementAt(25);
room.RoomArray = new int[][]{
{4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4},
{4, 0, 0, 0, 4, 0, 0, 0, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4},
{4, 0, 0, 0, 4, 0, 0, 0, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4},
{4, 0, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 0},
{4, 0, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 0},
{0, 0, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 0},
{0, 0, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4},
{0, 0, 0, 0, 4, 0, 0, 4, 0, 0, 0, 0, 0, 4, 0, 0, 4, 0, 0, 4},
{0, 0, 0, 0, 4, 0, 0, 4, 0, 0, 0, 0, 0, 4, 0, 0, 4, 0, 0, 4},
{4, 0, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 0, 0, 0, 4},
{4, 0, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 0, 0, 0, 4},
{4, 0, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4}
};
room.AddTextBox("SEWER GRATE",
182, 48, 90);
items.addElement(new Sentry3(2 * 28, 64, room));
}
{ // Room 26, Sewer Grate Bottom
Room room = rooms.elementAt(26);
room.RoomArray = new int[][]{
{4, 0, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4},
{4, 0, 0, 0, 0, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4, 0, 0, 4},
{4, 0, 0, 0, 0, 0, 0, 4, 4, 4, 4, 0, 0, 0, 0, 0, 4, 4, 4, 4},
{4, 4, 4, 4, 4, 0, 0, 4, 0, 0, 4, 0, 0, 0, 0, 0, 4, 0, 0, 4},
{4, 0, 0, 0, 4, 0, 0, 4, 0, 0, 4, 4, 4, 4, 4, 4, 4, 0, 0, 4},
{4, 0, 0, 0, 4, 4, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 4, 0, 0, 0, 0, 0, 0, 4},
{4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 4, 0, 0, 4, 4, 0, 0, 4},
{4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4}
};
String[] i3 = {"0064.jpg", "0065.jpg"};
room.graphix.addElement(new Graphix(i3, 5 * 28, 10 * 32));
String[] i4 = {"0066.jpg", "0067.jpg"};
room.graphix.addElement(new Graphix(i4, 11 * 28, 8 * 32));
String[] i5 = {"0068.jpg", "0069.jpg"};
room.graphix.addElement(new Graphix(i5, 16 * 28, 9 * 32));
room.AddTextBox("These poor creatures never made it out...Will you???",
84, 224, 500);
}
{ // Room 27, 2nd Lock
Room room = rooms.elementAt(27);
room.RoomArray = new int[][]{
{4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4},
{4, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{4, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{0, 0, 0, 0, 0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 0, 0, 0, 0, 0},
{4, 4, 4, 4, 4, 4, 0, 0, 0, 0, 0, 0, 0, 5, 4, 0, 0, 0, 0, 0},
{4, 0, 0, 0, 0, 4, 4, 4, 4, 4, 4, 0, 0, 4, 4, 0, 0, 0, 0, 4},
{4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 4, 4, 4, 0, 0, 0, 0, 4},
{4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4}
};
room.AddTextBox("Congratulations!",
2 * 28, 304, 500);
room.AddTextBox("That was a great job!",
2 * 28, 320, 500);
}
{ // Room 28, Portal Chamber
Room room = rooms.elementAt(28);
room.RoomArray = new int[][]{
{4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4},
{4, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{4, 0, 0, 4, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{4, 4, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{4, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4},
{4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4}
};
room.AddTextBox("Prepare for an experience that will transport you to another dimension",
336, 48, 224);
room.AddTextBox("You CAN take it with you (If you hold on tight)....",
336, 256, 224);
}
{ // Room 29, Help Screen
Room room = rooms.elementAt(29);
room.RoomArray = new int[][]{
{6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6},
{6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6},
{6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6},
{6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6},
{6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6},
{6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6},
{6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6},
{6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6},
{6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6},
{6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6},
{6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6},
{6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6}
};
room.AddTextBox("Escape from the City Sewer!",
3 * 28, 2 * 32, 500);
room.AddTextBox("HINTS:",
2 * 28, 3 * 32, 500);
room.AddTextBox("Observe how the robots move. Each is pre-wired to help you.",
2 * 28, 4 * 32, 500);
room.AddTextBox("Robots go where humans dare not tread.",
2 * 28, 6 * 32, 500);
room.AddTextBox("The key to success lies within.",
2 * 28, 7 * 32, 500);
room.AddTextBox("Black crystals foil Ampire Bots.",
2 * 28, 8 * 32, 500);
room.AddTextBox("Chip 1 is \"COUNT-TO-N\" Chip 2 is \"WALLHUGGER\"",
2 * 28, 9 * 32, 400);
room.AddTextBox("(To continue, press RETURN.)",
3 * 28, 11 * 32, 500);
}
{ // Room 30, Secret Trash-flow
Room room = rooms.elementAt(30);
room.RoomArray = new int[][]{
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3}
};
}
{ // Room 31, Secret room
Room room = rooms.elementAt(31);
room.RoomArray = new int[][]{
{3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3},
{3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3},
{3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3},
{3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3},
{3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3},
{3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3},
{3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3},
{3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3},
{3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3},
{3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3},
{3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3},
{3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3}
};
room.AddTextBox("Hi! I'm the Secret Helper. Congratulations on finding Secret #1 (and #2... wink wink!)",
3 * 28, 2 * 32, 450);
room.AddTextBox("Look at this... Somebody threw out a perfectly good suitcase. I wonder what's inside it?",
3 * 28, 9 * 32, 450);
String[] helperlist = {
"helper0.gif", "helper0.gif", "helper0.gif", "helper0.gif",
"helper0.gif", "helper0.gif", "helper0.gif", "helper0.gif",
"helper7.gif", "helper6.gif", "helper7.gif", "helper6.gif",
"helper7.gif", "helper6.gif", "helper7.gif", "helper6.gif",
"helper7.gif", "helper6.gif", "helper7.gif", "helper6.gif",
"helper7.gif", "helper6.gif", "helper7.gif", "helper6.gif",
"helper0.gif", "helper0.gif", "helper0.gif", "helper0.gif",
"helper1.gif", "helper4.gif", "helper2.gif", "helper3.gif",
"helper0.gif", "helper0.gif", "helper0.gif", "helper0.gif",
"helper5.gif", "helper5.gif", "helper5.gif", "helper5.gif",
};
Graphix helper = new Graphix(helperlist, 4 * 28, 5 * 32);
room.graphix.addElement(helper);
Item sc = new Suitcase(14 * 28, 5 * 32, room);
items.addElement(sc);
items.addElement(new Key(2 * 28, 5 * 32, sc.InternalRoom, Color.green));
}
int[] roomlist1 = {0, 1, 2, 12, 13, 14, 23, 25, 27, 28};
LinkRoomsHorizontally(roomlist1);
int[] roomlist2 = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11};
LinkRoomsVertically(roomlist2);
int[] roomlist3 = {3, 5, 7, 9};
LinkRoomsHorizontally(roomlist3);
int[] roomlist4 = {4, 6, 8, 10, 18, 17, 16, 22};
LinkRoomsHorizontally(roomlist4);
LinkRoomsUpDown(14, 15);
LinkRoomsUpDown(15, 16);
LinkRoomsUpDown(19, 18);
LinkRoomsLeftRight(19, 20);
LinkRoomsLeftRight(20, 15);
LinkRoomsUpDown(17, 21);
LinkRoomsUpDown(23, 24);
LinkRoomsUpDown(25, 26);
LinkRoomsUpDown(30, 31);
for (int a = 0; a < 14; a++) {
int speed = (random.nextInt(5) + 1) * 2;
Graphix grx = new Graphix("junk" + a + ".jpg",
19 * 28,
random.nextInt(3 * 32) + 4 * 32,
Graphix.CYCLE,
-speed, 0, 20 * 32 / speed
);
int t = random.nextInt(20 * 32 / speed);
grx.x -= speed * t;
grx.count = t;
rooms.elementAt(11).graphix.addElement(grx);
}
gameCursor = new GameCursor(252, 288, rooms.elementAt(0));
solderingPen = new SolderingPen();
remote = new Remote();
helpCam = new HelpCam(rooms.elementAt(29));
items.addElement(gameCursor);
SmallChip sc = new SmallChip(0, 0, null, "1");
sc.LoadChip("CountToN.chip", true);
items.addElement(sc);
items.addElement(new RO1Init());
items.addElement(solderingPen);
items.addElement(remote);
items.addElement(helpCam);
player = gameCursor;
currentViewer = player;
items.addElement(new BlackCrystal(2 * 28, 7 * 32, rooms.elementAt(3)));
}
}
class RO1Init extends Initializer {
public void Init() {
// The Magnet and the Energy Crystal go into (one or the other)
// X=10*28, Y=9*32, Room=21
// X=16*28, Y=5*32, Room-22
Item magnet = level.FindItem("Magnet");
Item crystal = level.FindItem(".Crystal");
if (level.random.nextInt(2) == 1) {
magnet.x = 10 * 28;
magnet.y = 9 * 32;
magnet.room = level.rooms.elementAt(21);
crystal.x = 16 * 28;
crystal.y = 5 * 32;
crystal.room = level.rooms.elementAt(22);
}
else {
crystal.x = 10 * 28;
crystal.y = 9 * 32;
crystal.room = level.rooms.elementAt(21);
magnet.x = 16 * 28;
magnet.y = 5 * 32;
magnet.room = level.rooms.elementAt(22);
}
// The Blue Key goes inside one of the Robots.
Item robot1 = level.FindItem("BlueRobot");
Item robot2 = level.FindItem("WhiteRobot");
Item robot3 = level.FindItem("OrangeRobot");
Item key = level.FindItem("Key");
switch (level.random.nextInt(3)) {
case 0:
key.room = robot1.InternalRoom;
break;
case 1:
key.room = robot2.InternalRoom;
break;
case 2:
key.room = robot3.InternalRoom;
break;
}
// The Black Crystal and Chip 1 go somewhere in the Maze
// Room=3, 2,7
// Room=4 4,1
// Room=5 1,18
// Room=6 6,6
// Room=7 4,4
// Room=8 16,5
// Room=9 4,3
// Room=10 6,8
Item bcrystal = level.FindItem("BlackCrystal");
switch (level.random.nextInt(8)) {
case 0:
bcrystal.x = 2 * 28;
bcrystal.y = 7 * 32;
bcrystal.room = level.rooms.elementAt(3);
break;
case 1:
bcrystal.x = 4 * 28;
bcrystal.y = 1 * 32;
bcrystal.room = level.rooms.elementAt(4);
break;
case 2:
bcrystal.x = 14 * 28;
bcrystal.y = 4 * 32;
bcrystal.room = level.rooms.elementAt(5);
break;
case 3:
bcrystal.x = 6 * 28;
bcrystal.y = 6 * 32;
bcrystal.room = level.rooms.elementAt(6);
break;
case 4:
bcrystal.x = 4 * 28;
bcrystal.y = 4 * 32;
bcrystal.room = level.rooms.elementAt(7);
break;
case 5:
bcrystal.x = 16 * 28;
bcrystal.y = 5 * 32;
bcrystal.room = level.rooms.elementAt(8);
break;
case 6:
bcrystal.x = 4 * 28;
bcrystal.y = 3 * 32;
bcrystal.room = level.rooms.elementAt(9);
break;
case 7:
bcrystal.x = 6 * 28;
bcrystal.y = 8 * 32;
bcrystal.room = level.rooms.elementAt(10);
break;
}
// Room=3 17,10
// Room=4 5,2
// Room=5 2,9
// Room=6 17,9
// Room=7 8,5
// Room=8 7,9
// Room=9 13,7
// Room=10 5,1
Item chip = null;
for (int a = 0; a < level.items.size(); a++) {
Item item = level.items.elementAt(a);
if (item.getClass().toString().endsWith("SmallChip")) {
if (((GenericChip) item).label.endsWith("1")) {
chip = item;
}
}
}
if (chip == null) {
return;
}
switch (level.random.nextInt(8)) {
case 0:
chip.x = 17 * 28;
chip.y = 10 * 32;
chip.room = level.rooms.elementAt(3);
break;
case 1:
chip.x = 5 * 28;
chip.y = 2 * 32;
chip.room = level.rooms.elementAt(4);
break;
case 2:
chip.x = 2 * 28;
chip.y = 9 * 32;
chip.room = level.rooms.elementAt(5);
break;
case 3:
chip.x = 17 * 28;
chip.y = 9 * 32;
chip.room = level.rooms.elementAt(6);
break;
case 4:
chip.x = 8 * 28;
chip.y = 5 * 32;
chip.room = level.rooms.elementAt(7);
break;
case 5:
chip.x = 7 * 28;
chip.y = 9 * 32;
chip.room = level.rooms.elementAt(8);
break;
case 6:
chip.x = 13 * 28;
chip.y = 7 * 32;
chip.room = level.rooms.elementAt(9);
break;
case 7:
chip.x = 5 * 28;
chip.y = 1 * 32;
chip.room = level.rooms.elementAt(10);
break;
}
}
}