Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.BufferedReader;
- import java.io.BufferedWriter;
- import java.io.File;
- import java.io.FileReader;
- import java.io.FileWriter;
- import java.io.IOException;
- import java.io.PrintWriter;
- import java.util.logging.Logger;
- public class PistonSmelt extends Plugin
- {
- private Logger log = Logger.getLogger("Minecraft");
- public static PistonSmelt.PistonSmeltListener listener;
- public static String name = "PistonSmelt";
- public static String version = "1.1";
- public static String author = "PspTrusz";
- public static String directory = "plugins/config/";
- public static PropertiesFile props;
- public PistonSmelt()
- {
- listener = new PistonSmelt.PistonSmeltListener(null);
- }
- public void disable() {
- this.log.info(name + " disabled.");
- }
- public void enable() {
- this.log.info(name + " enabled.");
- }
- public void initialize() {
- new File(directory).mkdir();
- File file = new File(directory + "PistonSmelt.txt");
- if (!file.exists())
- try {
- PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter(file)), true);
- out.println("#PistonSmelt by PspTrusz");
- out.println("#Put each smelting recipe on a new line. Format = blockToSmelt:result");
- out.println("#e.g. 12:20 will turn sand into glass.");
- out.close();
- }
- catch (Exception localException) {
- }
- else {
- file.exists();
- }
- this.log.info(name + " v" + version + " by " + author + " initialized.");
- etc.getLoader().addListener(PluginLoader.Hook.REDSTONE_CHANGE, listener, this, PluginListener.Priority.MEDIUM);
- }
- private class PistonSmeltListener extends PluginListener {
- private PistonSmeltListener() {
- }
- public int onRedstoneChange(Block block, int oldLevel, int newLevel) {
- try { File file = new File(PistonSmelt.directory + "PistonSmelt.txt");
- BufferedReader in = new BufferedReader(new FileReader(file));
- String line = in.readLine();
- line = in.readLine();
- while (line != null) {
- if (!line.contains("#")) {
- String[] l = line.split(":");
- int result = Integer.valueOf(l[1]).intValue();
- Block pw = block.getWorld().getBlockAt(block.getX(), block.getY(), block.getZ() + 1);
- Block ps = block.getWorld().getBlockAt(block.getX() + 1, block.getY(), block.getZ());
- Block pe = block.getWorld().getBlockAt(block.getX(), block.getY(), block.getZ() - 1);
- Block pn = block.getWorld().getBlockAt(block.getX() - 1, block.getY(), block.getZ());
- if ((pw.getType() == 29) && (pw.isPowered())) {
- Block pws = pw.getWorld().getBlockAt(pw.getX() + 2, pw.getY(), pw.getZ());
- Block pwsl = pw.getWorld().getBlockAt(pw.getX() + 2, pw.getY() - 1, pw.getZ());
- Block pwn = pw.getWorld().getBlockAt(pw.getX() - 2, pw.getY(), pw.getZ());
- Block pwnl = pw.getWorld().getBlockAt(pw.getX() - 2, pw.getY() - 1, pw.getZ());
- Block pww = pw.getWorld().getBlockAt(pw.getX(), pw.getY(), pw.getZ() + 2);
- Block pwwl = pw.getWorld().getBlockAt(pw.getX(), pw.getY() - 1, pw.getZ() + 2);
- if (((pwsl.getType() == 10) || (pwsl.getType() == 11)) &&
- (line.startsWith(pws.getType() + ":"))) {
- result = Integer.valueOf(l[1]).intValue();
- pw.getWorld().dropItem(pw.getX(), pw.getY() + 1, pw.getZ(), result);
- pws.setType(0);
- pws.getWorld().setBlock(pws);
- }
- if (((pwnl.getType() == 10) || (pwnl.getType() == 11)) &&
- (line.startsWith(pwn.getType() + ":"))) {
- result = Integer.valueOf(l[1]).intValue();
- pw.getWorld().dropItem(pw.getX(), pw.getY() + 1, pw.getZ(), result);
- pwn.setType(0);
- pwn.getWorld().setBlock(pwn);
- }
- if (((pwwl.getType() == 10) || (pwwl.getType() == 11)) &&
- (line.startsWith(pww.getType() + ":"))) {
- result = Integer.valueOf(l[1]).intValue();
- pw.getWorld().dropItem(pw.getX(), pw.getY() + 1, pw.getZ(), result);
- pww.setType(0);
- pww.getWorld().setBlock(pww);
- }
- }
- if ((pe.getType() == 29) && (pe.isPowered())) {
- Block pes = pe.getWorld().getBlockAt(pe.getX() + 2, pe.getY(), pe.getZ());
- Block pesl = pe.getWorld().getBlockAt(pe.getX() + 2, pe.getY() - 1, pe.getZ());
- Block pen = pe.getWorld().getBlockAt(pe.getX() - 2, pe.getY(), pe.getZ());
- Block penl = pe.getWorld().getBlockAt(pe.getX() - 2, pe.getY() - 1, pe.getZ());
- Block pee = pe.getWorld().getBlockAt(pe.getX(), pe.getY(), pe.getZ() - 2);
- Block peel = pe.getWorld().getBlockAt(pe.getX(), pe.getY() - 1, pe.getZ() - 2);
- if (((pesl.getType() == 10) || (pesl.getType() == 11)) &&
- (line.startsWith(pes.getType() + ":"))) {
- result = Integer.valueOf(l[1]).intValue();
- pe.getWorld().dropItem(pe.getX(), pe.getY() + 1, pe.getZ(), result);
- pes.setType(0);
- pes.getWorld().setBlock(pes);
- }
- if (((penl.getType() == 10) || (penl.getType() == 11)) &&
- (line.startsWith(pen.getType() + ":"))) {
- result = Integer.valueOf(l[1]).intValue();
- pe.getWorld().dropItem(pe.getX(), pe.getY() + 1, pe.getZ(), result);
- pen.setType(0);
- pen.getWorld().setBlock(pen);
- }
- if (((peel.getType() == 10) || (peel.getType() == 11)) &&
- (line.startsWith(pee.getType() + ":"))) {
- result = Integer.valueOf(l[1]).intValue();
- pe.getWorld().dropItem(pe.getX(), pe.getY() + 1, pe.getZ(), result);
- pee.setType(0);
- pee.getWorld().setBlock(pee);
- }
- }
- if ((pn.getType() == 29) && (pn.isPowered())) {
- Block pnw = pn.getWorld().getBlockAt(pn.getX(), pn.getY(), pn.getZ() + 2);
- Block pnwl = pn.getWorld().getBlockAt(pn.getX(), pn.getY() - 1, pn.getZ() + 2);
- Block pnn = pn.getWorld().getBlockAt(pn.getX() - 2, pn.getY(), pn.getZ());
- Block pnnl = pn.getWorld().getBlockAt(pn.getX() - 2, pn.getY() - 1, pn.getZ());
- Block pne = pn.getWorld().getBlockAt(pn.getX(), pn.getY(), pn.getZ() - 2);
- Block pnel = pn.getWorld().getBlockAt(pn.getX(), pn.getY() - 1, pn.getZ() - 2);
- if (((pnwl.getType() == 10) || (pnwl.getType() == 11)) &&
- (line.startsWith(pnw.getType() + ":"))) {
- result = Integer.valueOf(l[1]).intValue();
- pn.getWorld().dropItem(pn.getX(), pn.getY() + 1, pn.getZ(), result);
- pnw.setType(0);
- pnw.getWorld().setBlock(pnw);
- }
- if (((pnnl.getType() == 10) || (pnnl.getType() == 11)) &&
- (line.startsWith(pnn.getType() + ":"))) {
- result = Integer.valueOf(l[1]).intValue();
- pn.getWorld().dropItem(pn.getX(), pn.getY() + 1, pn.getZ(), result);
- pnn.setType(0);
- pnn.getWorld().setBlock(pnn);
- }
- if (((pnel.getType() == 10) || (pnel.getType() == 11)) &&
- (line.startsWith(pne.getType() + ":"))) {
- result = Integer.valueOf(l[1]).intValue();
- pn.getWorld().dropItem(pn.getX(), pn.getY() + 1, pn.getZ(), result);
- pne.setType(0);
- pne.getWorld().setBlock(pne);
- }
- }
- if ((ps.getType() == 29) && (ps.isPowered())) {
- Block psw = ps.getWorld().getBlockAt(ps.getX(), ps.getY(), ps.getZ() + 2);
- Block pswl = ps.getWorld().getBlockAt(ps.getX(), ps.getY() - 1, ps.getZ() + 2);
- Block pss = ps.getWorld().getBlockAt(ps.getX() + 2, ps.getY(), ps.getZ());
- Block pssl = ps.getWorld().getBlockAt(ps.getX() + 2, ps.getY() - 1, ps.getZ());
- Block pse = ps.getWorld().getBlockAt(ps.getX(), ps.getY(), ps.getZ() - 2);
- Block psel = ps.getWorld().getBlockAt(ps.getX(), ps.getY() - 1, ps.getZ() - 2);
- if (((pswl.getType() == 10) || (pswl.getType() == 11)) &&
- (line.startsWith(psw.getType() + ":"))) {
- result = Integer.valueOf(l[1]).intValue();
- ps.getWorld().dropItem(ps.getX(), ps.getY() + 1, ps.getZ(), result);
- psw.setType(0);
- psw.getWorld().setBlock(psw);
- }
- if (((pssl.getType() == 10) || (pssl.getType() == 11)) &&
- (line.startsWith(pss.getType() + ":"))) {
- result = Integer.valueOf(l[1]).intValue();
- ps.getWorld().dropItem(ps.getX(), ps.getY() + 1, ps.getZ(), result);
- pss.setType(0);
- pss.getWorld().setBlock(pss);
- }
- if (((psel.getType() == 10) || (psel.getType() == 11)) &&
- (line.startsWith(pse.getType() + ":"))) {
- result = Integer.valueOf(l[1]).intValue();
- ps.getWorld().dropItem(ps.getX(), ps.getY() + 1, ps.getZ(), result);
- psw.setType(0);
- pse.getWorld().setBlock(pse);
- }
- }
- }
- line = in.readLine();
- }in.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- return newLevel;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment