Admin Panel

Here you can access administrator pages if you are logged in as a Admin

package net.supercraftmc.rain;

import java.awt.Canvas;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.image.BufferStrategy;
import java.awt.image.BufferedImage;
import java.awt.image.DataBufferInt;

import javax.swing.JFrame;

import net.supercraftmc.rain.Input.Keyboard;
import net.supercraftmc.rain.graphichs.Screen;

public class Game extends Canvas implements Runnable {

public static int width = 300;
public static int height = 168; //50400
public static int scale = 3;
public static String title = “Rain – “;

private Thread thread;
private JFrame frame;
private Keyboard key;
private boolean running = false;

private Screen screen;

private BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
private int[] pixels = ((DataBufferInt)image.getRaster().getDataBuffer()).getData();

public Game() {
Dimension size = new Dimension(width*scale, height*scale);
setPreferredSize(size);

screen = new Screen(width, height);
frame = new JFrame();
key = new Keyboard();
frame.addKeyListener(key);
}
}

public synchronized void start() {
running = true;
thread = new Thread(this, “Display”);
thread.start();
}

public synchronized void stop() {
running = false;
try {
thread.join();
} catch (InterruptedException e) {
e.printStackTrace();
}
}

public void run() {
long lastTime = System.nanoTime();
long timer = System.currentTimeMillis();
final double ns = 1000000000.0 / 60.0;
double delta = 0;
int frames = 0;
int updates = 0;
while (running) {
long now = System.nanoTime();
delta += (now – lastTime) / ns;
lastTime = now;
while (delta >= 1) {
update();
updates++;
delta–;
}
render(); //renders in a loop
frames++;

if (System.currentTimeMillis() – timer > 1000) {
timer += 1000;
frame.setTitle(title + updates + ” ups, ” + frames + ” fps.”);
updates = 0;
frames = 0;
}
}
stop();
}

int x = 0, y = 0;

public void update() {
x++;
y++;
}

public void render() {
BufferStrategy bs = getBufferStrategy();
if (bs == null) {
createBufferStrategy(3);
return;
}
screen.clear();
screen.render(x, y);

for (int i = 0; i < pixels.length; i++) {
pixels[i] = screen.pixels[i];
}

Graphics g = bs.getDrawGraphics();
g.fillRect(0, 0, getWidth(), getHeight());
g.drawImage(image, 0, 0, getWidth(), getHeight(), null);
g.dispose();
bs.show();
}

public static void main(String[] args) {
Game game = new Game();
game.frame.setResizable(false);
game.frame.setTitle(“Rain”);
game.frame.add(game);
game.frame.pack();
game.frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
game.frame.setLocationRelativeTo(null);
game.frame.setVisible(true);

game.start();
}

}

Screen:

package net.supercraftmc.rain.graphichs;

import java.util.Random;

public class Screen {

private int width, height;
public int[] pixels;
public final int MAP_SIZE = 64;
public final int MAP_SIZE_MASK = MAP_SIZE – 1;

public int[] tiles = new int[MAP_SIZE * MAP_SIZE];

private Random random = new Random();

public Screen(int width, int height) {
this.width = width;
this.height = height;
pixels = new int[width * height];

for (int i = 0; i < MAP_SIZE * MAP_SIZE; i++) { tiles[i] = random.nextInt(0xffffff); tiles[0] = 0; } } public void clear() { for (int i = 0; i < pixels.length; i++) { pixels[i] = 0; } } public void render(int xOffset, int yOffset) { for (int y = 0; y < height; y++) { int yy = y + yOffset; //if (yy < 0 || yy >= width) break;
for (int x = 0; x < width; x++) { int xx = x + xOffset; //if (xx < 0 || xx >= width) break;
int tileIndex = ((x >> 4) & MAP_SIZE_MASK) + ((y >> 4) & MAP_SIZE_MASK) * MAP_SIZE;
pixels[x + y * width] = tiles[tileIndex];
}
}
}

}

Keyboard:

package net.supercraftmc.rain.Input;

import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;

public class Keyboard implements KeyListener{

private boolean[] key = new boolean[120];
public boolean up, down, left, right;

public void update() {
up = key[KeyEvent.VK_UP] || key[KeyEvent.VK_W];
down = key[KeyEvent.VK_DOWN] || key[KeyEvent.VK_S];
left = key[KeyEvent.VK_LEFT] || key[KeyEvent.VK_A];
right = key[KeyEvent.VK_RIGHT] || key[KeyEvent.VK_D];

System.out.println(“if you see this across console, their is an error”);

}

public void keyPressed(KeyEvent e) {
key[e.getKeyCode()] = true;
}

public void keyReleased(KeyEvent e) {
key[e.getKeyCode()] = true;
}

public void keyTyped(KeyEvent e) {

}

}

Comments are closed.