Advertisement
Guest User

Untitled

a guest
Nov 24th, 2011
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 39.09 KB | None | 0 0
  1. import java.awt.BorderLayout;
  2. import java.awt.Container;
  3. import java.awt.event.ActionEvent;
  4. import java.awt.event.ActionListener;
  5.  
  6. import javax.swing.JFrame;
  7. import javax.swing.JMenu;
  8. import javax.swing.JMenuBar;
  9. import javax.swing.JMenuItem;
  10. import javax.swing.JScrollPane;
  11. import javax.swing.JTextArea;
  12. /** - Boxmein -
  13.  *I edited your code to make it a bit more efficient.
  14.  *First of all, making functions for every string might be a pain in the arse, so I made an array of strings. You just need to remember each one's number, or use a java.util.Hashtable {"key","value"} thing.
  15.  *The if after if one is also a pain in the arse, a switch statement might make you feel better.
  16.  *I'm really sorry I couldn't have time to add all the other values into the arrays.
  17.  **/
  18. public class Powdertoy implements ActionListener {
  19.     JFrame applikation;
  20.     Container container;
  21.     double version = 0.5;
  22.     String[] texts = {"\n\nWall (Conductive)\nDescription: Indestructible. Blocks everything. Conductive.\nBlocks: Everything\nAllows: Nothing, except BRAY, which can appear through any wall, but not inside of walls that block it.\nSpecial: Conducts SPRK. Transparent to ARAY. ",
  23.                     "\n\nE-wall\nDescription: Becomes transparent when electricity is connected.\nBlocks: See special\nAllows See special\nSpecial: Acts like WALL without electricity, blocking all particles and airflow. Acts like Conductor when with electricity, letting anything pass through it. "
  24.                     // and all the others.
  25.                     }
  26.     // Menu-Items
  27.     // Walls
  28.     JMenuItem Wallconductive = new JMenuItem("Wall(conductive)");
  29.     JMenuItem EWall = new JMenuItem("E-Wall");
  30.     JMenuItem Detector = new JMenuItem("Detector");
  31.     JMenuItem Stream = new JMenuItem("Streamline");
  32.     JMenuItem Sign = new JMenuItem("Sign");
  33.     JMenuItem Fan = new JMenuItem("Fan");
  34.     JMenuItem Liquid = new JMenuItem("Liquid-premable Wall");
  35.     JMenuItem Absorbing = new JMenuItem("Particle Absorbing Wall");
  36.     JMenuItem Eraser = new JMenuItem("Eraser");
  37.     JMenuItem Wallnone = new JMenuItem("Wall(none-conductive)");
  38.     JMenuItem Nonpermeable = new JMenuItem("Non-permeable Wall");
  39.     JMenuItem Solid = new JMenuItem("Solid-permeable Wall");
  40.     JMenuItem Conductor = new JMenuItem("Conductor Wall");
  41.     JMenuItem EHole = new JMenuItem("E-Hole");
  42.     JMenuItem Gas = new JMenuItem("Gas-premeable Wall");
  43.     JMenuItem Gravity = new JMenuItem("Gravity Wall");
  44.     JMenuItem Energy = new JMenuItem("Energy Wall");
  45.  
  46.     // Electronics
  47.     JMenuItem METL = new JMenuItem("METL");
  48.     JMenuItem SPRK = new JMenuItem("SPRK");
  49.     JMenuItem PSCN = new JMenuItem("PSCN");
  50.     JMenuItem NSCN = new JMenuItem("NSCN");
  51.     JMenuItem NTCT = new JMenuItem("NTCT");
  52.     JMenuItem PTCT = new JMenuItem("PTCT");
  53.     JMenuItem ETRD = new JMenuItem("ETRD");
  54.     JMenuItem BTRY = new JMenuItem("BTRY");
  55.     JMenuItem SWCH = new JMenuItem("SWCH");
  56.     JMenuItem INWR = new JMenuItem("INWR");
  57.     JMenuItem LIGH = new JMenuItem("LIGH");
  58.     JMenuItem TESC = new JMenuItem("TESC");
  59.     JMenuItem INST = new JMenuItem("INST");
  60.     JMenuItem WIFI = new JMenuItem("WIFI");
  61.     JMenuItem ARAY = new JMenuItem("ARAY");
  62.     JMenuItem EMP = new JMenuItem("EMP");
  63.     JMenuItem MERC = new JMenuItem("MERC");
  64.     JMenuItem WIRE = new JMenuItem("WIRE");
  65.  
  66.     // Powered Materials
  67.     JMenuItem LCRY = new JMenuItem("LCRY");
  68.     JMenuItem PCLN = new JMenuItem("PCLN");
  69.     JMenuItem HSWC = new JMenuItem("HSWC");
  70.     JMenuItem PUMP = new JMenuItem("PUMP");
  71.     JMenuItem GPMP = new JMenuItem("GPMP");
  72.     JMenuItem DLAY = new JMenuItem("DLAY");
  73.     JMenuItem STOR = new JMenuItem("STOR");
  74.     JMenuItem PVOD = new JMenuItem("PVOD");
  75.     JMenuItem PBCN = new JMenuItem("PBCN");
  76.  
  77.     // Explosives
  78.     JMenuItem THRM = new JMenuItem("THRM");
  79.     JMenuItem FIRW = new JMenuItem("FIRW");
  80.     JMenuItem DEST = new JMenuItem("DEST");
  81.     JMenuItem FWRK = new JMenuItem("FRWK");
  82.     JMenuItem RBDM = new JMenuItem("RBDM");
  83.     JMenuItem LRBD = new JMenuItem("LRBD");
  84.     JMenuItem C4 = new JMenuItem("C4");
  85.     JMenuItem NITR = new JMenuItem("NITR");
  86.     JMenuItem GUN = new JMenuItem("GUN");
  87.     JMenuItem FIRE = new JMenuItem("FIRE");
  88.     JMenuItem C5 = new JMenuItem("C5");
  89.     JMenuItem BOMB = new JMenuItem("BOMB");
  90.     JMenuItem THDR = new JMenuItem("THDR");
  91.     JMenuItem CFLM = new JMenuItem("CFLM");
  92.     JMenuItem GBMB = new JMenuItem("GBMB");
  93.  
  94.     // Gasses
  95.     JMenuItem OXYG = new JMenuItem("OXYG");
  96.     JMenuItem CO2 = new JMenuItem("CO2");
  97.     JMenuItem SMKE = new JMenuItem("SMKE");
  98.     JMenuItem NBLE = new JMenuItem("NBLE");
  99.     JMenuItem PLSM = new JMenuItem("PLSM");
  100.     JMenuItem WTRV = new JMenuItem("WTRV");
  101.     JMenuItem GAS = new JMenuItem("GAS");
  102.     JMenuItem BOYL = new JMenuItem("BOYL");
  103.     JMenuItem HYGN = new JMenuItem("HYGN");
  104.     JMenuItem CAUS = new JMenuItem("CAUS");
  105.  
  106.     // Liquids
  107.     JMenuItem GLOW = new JMenuItem("GLOW");
  108.     JMenuItem LN2 = new JMenuItem("LN2");
  109.     JMenuItem DESL = new JMenuItem("DESL");
  110.     JMenuItem MWAX = new JMenuItem("MWAX");
  111.     JMenuItem ACID = new JMenuItem("ACID");
  112.     JMenuItem LAVA = new JMenuItem("LAVA");
  113.     JMenuItem OIL = new JMenuItem("OIL");
  114.     JMenuItem BIZR = new JMenuItem("BIZR");
  115.     JMenuItem PSTE = new JMenuItem("PSTE");
  116.     JMenuItem SOAP = new JMenuItem("SOAP");
  117.     JMenuItem SLTW = new JMenuItem("SLTW");
  118.     JMenuItem DSTW = new JMenuItem("DSTW");
  119.     JMenuItem BUBW = new JMenuItem("BUBW");
  120.     JMenuItem WATR = new JMenuItem("WATR");
  121.     JMenuItem FRZW = new JMenuItem("FRZW");
  122.  
  123.     // Powders
  124.     JMenuItem DUST = new JMenuItem("DUST");
  125.     JMenuItem STNE = new JMenuItem("STNE");
  126.     JMenuItem SNOW = new JMenuItem("SNOW");
  127.     JMenuItem CNCT = new JMenuItem("CNCT");
  128.     JMenuItem SALT = new JMenuItem("SALT");
  129.     JMenuItem BRMT = new JMenuItem("BRMT");
  130.     JMenuItem SAND = new JMenuItem("SAND");
  131.     JMenuItem BGLA = new JMenuItem("BGLA");
  132.     JMenuItem YEST = new JMenuItem("YEST");
  133.     JMenuItem FSEP = new JMenuItem("FSEP");
  134.     JMenuItem BCOL = new JMenuItem("BCOL");
  135.     JMenuItem FRZZ = new JMenuItem("FRZZ");
  136.     JMenuItem GRAV = new JMenuItem("GRAV");
  137.     JMenuItem ANAR = new JMenuItem("ANAR");
  138.     JMenuItem PQRT = new JMenuItem("PQRT");
  139.     JMenuItem BREL = new JMenuItem("BREL");
  140.     JMenuItem CLST = new JMenuItem("CLST");
  141.     JMenuItem EQVE = new JMenuItem("EQVE");
  142.     JMenuItem MORT = new JMenuItem("MORT");
  143.     JMenuItem LOVE = new JMenuItem("LOVE");
  144.  
  145.     // Solids
  146.     JMenuItem BRCK = new JMenuItem("BRCK");
  147.     JMenuItem GOO = new JMenuItem("GOO");
  148.     JMenuItem ICE = new JMenuItem("ICE");
  149.     JMenuItem WOOD = new JMenuItem("WOOD");
  150.     JMenuItem PLNT = new JMenuItem("PLNT");
  151.     JMenuItem BMTL = new JMenuItem("BMTL");
  152.     JMenuItem WAX = new JMenuItem("WAX");
  153.     JMenuItem GLAS = new JMenuItem("GLAS");
  154.     JMenuItem NICE = new JMenuItem("NICE");
  155.     JMenuItem COAL = new JMenuItem("COAL");
  156.     JMenuItem SPNG = new JMenuItem("SPNG");
  157.     JMenuItem VINE = new JMenuItem("VINE");
  158.     JMenuItem SHLD = new JMenuItem("SHLD");
  159.     JMenuItem PIPE = new JMenuItem("PIPE");
  160.     JMenuItem INVS = new JMenuItem("INVS");
  161.     JMenuItem QRTZ = new JMenuItem("QRTZ");
  162.     JMenuItem IRON = new JMenuItem("IRON");
  163.     JMenuItem DMND = new JMenuItem("DMND");
  164.     JMenuItem DRIC = new JMenuItem("DRIC");
  165.  
  166.     // Radioactive
  167.     JMenuItem URAN = new JMenuItem("URAN");
  168.     JMenuItem PLUT = new JMenuItem("PLUT");
  169.     JMenuItem NEUT = new JMenuItem("NEUT");
  170.     JMenuItem PHOT = new JMenuItem("PHOT");
  171.     JMenuItem AMTR = new JMenuItem("AMTR");
  172.     JMenuItem DEUT = new JMenuItem("DEUT");
  173.     JMenuItem WARP = new JMenuItem("WARP");
  174.     JMenuItem ISOZ = new JMenuItem("ISOZ");
  175.     JMenuItem ISZS = new JMenuItem("ISZS");
  176.     JMenuItem SING = new JMenuItem("SING");
  177.  
  178.     // Special
  179.     JMenuItem CLNE = new JMenuItem("CLNE");
  180.     JMenuItem BCLN = new JMenuItem("BCLN");
  181.     JMenuItem STKM = new JMenuItem("STKM");
  182.     JMenuItem VENT = new JMenuItem("VENT");
  183.     JMenuItem VACU = new JMenuItem("VACU");
  184.     JMenuItem CONV = new JMenuItem("CONV");
  185.     JMenuItem INSL = new JMenuItem("INSL");
  186.     JMenuItem VOID = new JMenuItem("VOID");
  187.     JMenuItem STK2 = new JMenuItem("STK2");
  188.     JMenuItem PRTI = new JMenuItem("PRTI");
  189.     JMenuItem PRTO = new JMenuItem("PRTO");
  190.     JMenuItem BHOL = new JMenuItem("BHOL");
  191.     JMenuItem WHOL = new JMenuItem("WHOL");
  192.  
  193.     // Life
  194.     JMenuItem GOL = new JMenuItem("GOL");
  195.     JMenuItem HLIF = new JMenuItem("HLIF");
  196.     JMenuItem ASIM = new JMenuItem("ASIM");
  197.     JMenuItem TWOx2 = new JMenuItem("2x2");
  198.     JMenuItem DANI = new JMenuItem("DANI");
  199.     JMenuItem AMOE = new JMenuItem("AMOE");
  200.     JMenuItem MOVE = new JMenuItem("MOVE");
  201.     JMenuItem PGOL = new JMenuItem("PGOL");
  202.     JMenuItem THIRTY4 = new JMenuItem("34");
  203.     JMenuItem LLIF = new JMenuItem("LLIF");
  204.     JMenuItem STAN = new JMenuItem("STAN");
  205.     JMenuItem SEED = new JMenuItem("SEED");
  206.     JMenuItem MAZE = new JMenuItem("MAZE");
  207.     JMenuItem COAG = new JMenuItem("COAG");
  208.     JMenuItem WALL = new JMenuItem("WALL");
  209.     JMenuItem GNAR = new JMenuItem("GNAR");
  210.     JMenuItem REPL = new JMenuItem("REPL");
  211.     JMenuItem MYST = new JMenuItem("MYST");
  212.     JMenuItem STAR = new JMenuItem("STAR");
  213.     JMenuItem LOTE = new JMenuItem("LOTE");
  214.     JMenuItem BRAN = new JMenuItem("BRAN");
  215.     JMenuItem FROG = new JMenuItem("FROG");
  216.  
  217.     // Tools
  218.     JMenuItem AIR = new JMenuItem("AIR");
  219.     JMenuItem VAC = new JMenuItem("VAC");
  220.     JMenuItem COOL = new JMenuItem("COOL");
  221.     JMenuItem HEAT = new JMenuItem("HEAT");
  222.     JMenuItem WIND = new JMenuItem("WIND");
  223.     JMenuItem PGRV = new JMenuItem("PGRV");
  224.     JMenuItem NGRV = new JMenuItem("NGRV");
  225.     JMenuItem PROP = new JMenuItem("PROP");
  226.    
  227.     //General
  228.     JMenuItem HUD =new JMenuItem("The HUD");
  229.     JMenuItem Dmodes =new JMenuItem("Display Modes");
  230.     JMenuItem Console= new JMenuItem("The Console");
  231.     JMenuItem Glitches = new JMenuItem("glitches and Secrets");
  232.     JMenuItem Hotkeys = new JMenuItem("Hotkeys");
  233.     JMenuItem Lua = new JMenuItem("Lua");
  234.     JMenuItem all = new JMenuItem("Display all");
  235.  
  236.     // About
  237.     JMenuItem About = new JMenuItem("About");
  238.    
  239.     //Tutorials
  240.     JMenuItem Howtowifi = new JMenuItem("How to use WIFI");
  241.  
  242.     JTextArea textarea;
  243.  
  244.     public Powdertoy() {
  245.         applikation = new JFrame("Powder Toy Helper by NeBuR");
  246.         container = applikation.getContentPane();
  247.         textarea = new JTextArea();
  248.  
  249.         // Menubar
  250.         JMenuBar menubar = new JMenuBar();
  251.         // Sub-menus
  252.         JMenu Walls = new JMenu("Walls");
  253.         JMenu Electronics = new JMenu("Electronics");
  254.         JMenu Powered = new JMenu("Powered Materials");
  255.         JMenu Explosives = new JMenu("Explosives");
  256.         JMenu Gasses = new JMenu("Gasses");
  257.         JMenu Liquids = new JMenu("Liquids");
  258.         JMenu Powders = new JMenu("Powders");
  259.         JMenu Solids = new JMenu("Solids");
  260.         JMenu Radioactive = new JMenu("Radioactive");
  261.         JMenu Special = new JMenu("Special");
  262.         JMenu Life = new JMenu("Life");
  263.         JMenu Tools = new JMenu("Tools");
  264.         JMenu General = new JMenu("General");
  265.         JMenu Tut = new JMenu("Tutorials");
  266.        
  267.         HUD.addActionListener(this);
  268.         Howtowifi.addActionListener(this);
  269.         all.addActionListener(this);
  270.         PROP.addActionListener(this);
  271.         Dmodes.addActionListener(this);
  272.         Console.addActionListener(this);
  273.         Glitches.addActionListener(this);
  274.         Hotkeys.addActionListener(this);
  275.         Lua.addActionListener(this);
  276.         Wallconductive.addActionListener(this);
  277.         EWall.addActionListener(this);
  278.         Detector.addActionListener(this);
  279.         Stream.addActionListener(this);
  280.         Sign.addActionListener(this);
  281.         Fan.addActionListener(this);
  282.         Liquid.addActionListener(this);
  283.         Absorbing.addActionListener(this);
  284.         Eraser.addActionListener(this);
  285.         Wallnone.addActionListener(this);
  286.         Nonpermeable.addActionListener(this);
  287.         Solid.addActionListener(this);
  288.         Conductor.addActionListener(this);
  289.         EHole.addActionListener(this);
  290.         Gas.addActionListener(this);
  291.         Gravity.addActionListener(this);
  292.         Energy.addActionListener(this);
  293.         METL.addActionListener(this);
  294.         SPRK.addActionListener(this);
  295.         PSCN.addActionListener(this);
  296.         NSCN.addActionListener(this);
  297.         NTCT.addActionListener(this);
  298.         PTCT.addActionListener(this);
  299.         ETRD.addActionListener(this);
  300.         BTRY.addActionListener(this);
  301.         SWCH.addActionListener(this);
  302.         INWR.addActionListener(this);
  303.         LIGH.addActionListener(this);
  304.         TESC.addActionListener(this);
  305.         INST.addActionListener(this);
  306.         WIFI.addActionListener(this);
  307.         ARAY.addActionListener(this);
  308.         EMP.addActionListener(this);
  309.         MERC.addActionListener(this);
  310.         WIRE.addActionListener(this);
  311.         LCRY.addActionListener(this);
  312.         PCLN.addActionListener(this);
  313.         HSWC.addActionListener(this);
  314.         PUMP.addActionListener(this);
  315.         GPMP.addActionListener(this);
  316.         DLAY.addActionListener(this);
  317.         STOR.addActionListener(this);
  318.         PVOD.addActionListener(this);
  319.         PBCN.addActionListener(this);
  320.         THRM.addActionListener(this);
  321.         FIRW.addActionListener(this);
  322.         DEST.addActionListener(this);
  323.         FWRK.addActionListener(this);
  324.         RBDM.addActionListener(this);
  325.         LRBD.addActionListener(this);
  326.         C4.addActionListener(this);
  327.         NITR.addActionListener(this);
  328.         GUN.addActionListener(this);
  329.         FIRE.addActionListener(this);
  330.         C5.addActionListener(this);
  331.         BOMB.addActionListener(this);
  332.         THDR.addActionListener(this);
  333.         CFLM.addActionListener(this);
  334.         GBMB.addActionListener(this);
  335.         OXYG.addActionListener(this);
  336.         CO2.addActionListener(this);
  337.         SMKE.addActionListener(this);
  338.         NBLE.addActionListener(this);
  339.         PLSM.addActionListener(this);
  340.         WTRV.addActionListener(this);
  341.         GAS.addActionListener(this);
  342.         BOYL.addActionListener(this);
  343.         HYGN.addActionListener(this);
  344.         CAUS.addActionListener(this);
  345.         GLOW.addActionListener(this);
  346.         LN2.addActionListener(this);
  347.         DESL.addActionListener(this);
  348.         MWAX.addActionListener(this);
  349.         ACID.addActionListener(this);
  350.         LAVA.addActionListener(this);
  351.         OIL.addActionListener(this);
  352.         BIZR.addActionListener(this);
  353.         PSTE.addActionListener(this);
  354.         SOAP.addActionListener(this);
  355.         SLTW.addActionListener(this);
  356.         DSTW.addActionListener(this);
  357.         BUBW.addActionListener(this);
  358.         WATR.addActionListener(this);
  359.         FRZW.addActionListener(this);
  360.         DUST.addActionListener(this);
  361.         STNE.addActionListener(this);
  362.         SNOW.addActionListener(this);
  363.         CNCT.addActionListener(this);
  364.         SALT.addActionListener(this);
  365.         BRMT.addActionListener(this);
  366.         SAND.addActionListener(this);
  367.         BGLA.addActionListener(this);
  368.         YEST.addActionListener(this);
  369.         FSEP.addActionListener(this);
  370.         BCOL.addActionListener(this);
  371.         FRZZ.addActionListener(this);
  372.         GRAV.addActionListener(this);
  373.         ANAR.addActionListener(this);
  374.         PQRT.addActionListener(this);
  375.         BREL.addActionListener(this);
  376.         CLST.addActionListener(this);
  377.         EQVE.addActionListener(this);
  378.         MORT.addActionListener(this);
  379.         LOVE.addActionListener(this);
  380.         BRCK.addActionListener(this);
  381.         GOO.addActionListener(this);
  382.         ICE.addActionListener(this);
  383.         WOOD.addActionListener(this);
  384.         PLNT.addActionListener(this);
  385.         BMTL.addActionListener(this);
  386.         WAX.addActionListener(this);
  387.         GLAS.addActionListener(this);
  388.         NICE.addActionListener(this);
  389.         COAL.addActionListener(this);
  390.         SPNG.addActionListener(this);
  391.         SHLD.addActionListener(this);
  392.         PIPE.addActionListener(this);
  393.         INVS.addActionListener(this);
  394.         QRTZ.addActionListener(this);
  395.         IRON.addActionListener(this);
  396.         DMND.addActionListener(this);
  397.         DRIC.addActionListener(this);
  398.         URAN.addActionListener(this);
  399.         PLUT.addActionListener(this);
  400.         NEUT.addActionListener(this);
  401.         PHOT.addActionListener(this);
  402.         AMTR.addActionListener(this);
  403.         DEUT.addActionListener(this);
  404.         WARP.addActionListener(this);
  405.         ISOZ.addActionListener(this);
  406.         ISZS.addActionListener(this);
  407.         SING.addActionListener(this);
  408.         CLNE.addActionListener(this);
  409.         BCLN.addActionListener(this);
  410.         STKM.addActionListener(this);
  411.         VENT.addActionListener(this);
  412.         VACU.addActionListener(this);
  413.         CONV.addActionListener(this);
  414.         INSL.addActionListener(this);
  415.         VOID.addActionListener(this);
  416.         STK2.addActionListener(this);
  417.         PRTI.addActionListener(this);
  418.         PRTO.addActionListener(this);
  419.         BHOL.addActionListener(this);
  420.         WHOL.addActionListener(this);
  421.         GOL.addActionListener(this);
  422.         HLIF.addActionListener(this);
  423.         ASIM.addActionListener(this);
  424.         TWOx2.addActionListener(this);
  425.         DANI.addActionListener(this);
  426.         AMOE.addActionListener(this);
  427.         MOVE.addActionListener(this);
  428.         PGOL.addActionListener(this);
  429.         THIRTY4.addActionListener(this);
  430.         LLIF.addActionListener(this);
  431.         STAN.addActionListener(this);
  432.         SEED.addActionListener(this);
  433.         MAZE.addActionListener(this);
  434.         COAG.addActionListener(this);
  435.         WALL.addActionListener(this);
  436.         GNAR.addActionListener(this);
  437.         REPL.addActionListener(this);
  438.         MYST.addActionListener(this);
  439.         STAR.addActionListener(this);
  440.         LOTE.addActionListener(this);
  441.         BRAN.addActionListener(this);
  442.         FROG.addActionListener(this);
  443.         AIR.addActionListener(this);
  444.         VAC.addActionListener(this);
  445.         COOL.addActionListener(this);
  446.         HEAT.addActionListener(this);
  447.         WIND.addActionListener(this);
  448.         PGRV.addActionListener(this);
  449.         NGRV.addActionListener(this);
  450.         About.addActionListener(this);
  451.        
  452.         menubar.add(General);
  453.         menubar.add(Walls);
  454.         menubar.add(Electronics);
  455.         menubar.add(Powered);
  456.         menubar.add(Explosives);
  457.         menubar.add(Gasses);
  458.         menubar.add(Liquids);
  459.         menubar.add(Powders);
  460.         menubar.add(Solids);
  461.         menubar.add(Radioactive);
  462.         menubar.add(Special);
  463.         menubar.add(Life);
  464.         menubar.add(Tools);
  465.         menubar.add(About);
  466.         menubar.add(Tut);
  467.         Tut.add(Howtowifi);
  468.         General.add(HUD);
  469.         General.add(Dmodes);
  470.         General.add(Console);
  471.         General.add(Glitches);
  472.         General.add(Hotkeys);
  473.         General.add(Lua);
  474.         General.add(all);
  475.         Tools.add(PROP);
  476.         Walls.add(Wallconductive);
  477.         Walls.add(EWall);
  478.         Walls.add(Detector);
  479.         Walls.add(Stream);
  480.         Walls.add(Sign);
  481.         Walls.add(Fan);
  482.         Walls.add(Liquid);
  483.         Walls.add(Absorbing);
  484.         Walls.add(Eraser);
  485.         Walls.add(Wallnone);
  486.         Walls.add(Nonpermeable);
  487.         Walls.add(Solid);
  488.         Walls.add(Conductor);
  489.         Walls.add(EHole);
  490.         Walls.add(Gas);
  491.         Walls.add(Gravity);
  492.         Walls.add(Energy);
  493.         Electronics.add(METL);
  494.         Electronics.add(SPRK);
  495.         Electronics.add(PSCN);
  496.         Electronics.add(NSCN);
  497.         Electronics.add(NTCT);
  498.         Electronics.add(PTCT);
  499.         Electronics.add(ETRD);
  500.         Electronics.add(BTRY);
  501.         Electronics.add(SWCH);
  502.         Electronics.add(INWR);
  503.         Electronics.add(LIGH);
  504.         Electronics.add(TESC);
  505.         Electronics.add(INST);
  506.         Electronics.add(WIFI);
  507.         Electronics.add(ARAY);
  508.         Electronics.add(EMP);
  509.         Electronics.add(MERC);
  510.         Electronics.add(WIRE);
  511.         Powered.add(LCRY);
  512.         Powered.add(PCLN);
  513.         Powered.add(HSWC);
  514.         Powered.add(PUMP);
  515.         Powered.add(GPMP);
  516.         Powered.add(DLAY);
  517.         Powered.add(STOR);
  518.         Powered.add(PVOD);
  519.         Powered.add(PBCN);
  520.         Explosives.add(THRM);
  521.         Explosives.add(FIRW);
  522.         Explosives.add(DEST);
  523.         Explosives.add(FWRK);
  524.         Explosives.add(RBDM);
  525.         Explosives.add(LRBD);
  526.         Explosives.add(C4);
  527.         Explosives.add(NITR);
  528.         Explosives.add(GUN);
  529.         Explosives.add(FIRE);
  530.         Explosives.add(C5);
  531.         Explosives.add(BOMB);
  532.         Explosives.add(THDR);
  533.         Explosives.add(CFLM);
  534.         Explosives.add(GBMB);
  535.         Gasses.add(OXYG);
  536.         Gasses.add(CO2);
  537.         Gasses.add(SMKE);
  538.         Gasses.add(NBLE);
  539.         Gasses.add(PLSM);
  540.         Gasses.add(WTRV);
  541.         Gasses.add(GAS);
  542.         Gasses.add(BOYL);
  543.         Gasses.add(HYGN);
  544.         Gasses.add(CAUS);
  545.         Liquids.add(GLOW);
  546.         Liquids.add(LN2);
  547.         Liquids.add(DESL);
  548.         Liquids.add(MWAX);
  549.         Liquids.add(ACID);
  550.         Liquids.add(LAVA);
  551.         Liquids.add(OIL);
  552.         Liquids.add(BIZR);
  553.         Liquids.add(PSTE);
  554.         Liquids.add(SOAP);
  555.         Liquids.add(SLTW);
  556.         Liquids.add(DSTW);
  557.         Liquids.add(BUBW);
  558.         Liquids.add(WATR);
  559.         Liquids.add(FRZW);
  560.         Powders.add(DUST);
  561.         Powders.add(STNE);
  562.         Powders.add(SNOW);
  563.         Powders.add(CNCT);
  564.         Powders.add(SALT);
  565.         Powders.add(BRMT);
  566.         Powders.add(SAND);
  567.         Powders.add(BGLA);
  568.         Powders.add(YEST);
  569.         Powders.add(FSEP);
  570.         Powders.add(BCOL);
  571.         Powders.add(FRZZ);
  572.         Powders.add(GRAV);
  573.         Powders.add(ANAR);
  574.         Powders.add(PQRT);
  575.         Powders.add(BREL);
  576.         Powders.add(CLST);
  577.         Powders.add(EQVE);
  578.         Powders.add(MORT);
  579.         Powders.add(LOVE);
  580.         Solids.add(BRCK);
  581.         Solids.add(GOO);
  582.         Solids.add(ICE);
  583.         Solids.add(WOOD);
  584.         Solids.add(PLNT);
  585.         Solids.add(BMTL);
  586.         Solids.add(WAX);
  587.         Solids.add(GLAS);
  588.         Solids.add(NICE);
  589.         Solids.add(COAL);
  590.         Solids.add(SPNG);
  591.         Solids.add(VINE);
  592.         Solids.add(SHLD);
  593.         Solids.add(PIPE);
  594.         Solids.add(INVS);
  595.         Solids.add(QRTZ);
  596.         Solids.add(IRON);
  597.         Solids.add(DMND);
  598.         Solids.add(DRIC);
  599.         Radioactive.add(URAN);
  600.         Radioactive.add(PLUT);
  601.         Radioactive.add(NEUT);
  602.         Radioactive.add(PHOT);
  603.         Radioactive.add(AMTR);
  604.         Radioactive.add(DEUT);
  605.         Radioactive.add(WARP);
  606.         Radioactive.add(ISOZ);
  607.         Radioactive.add(ISZS);
  608.         Radioactive.add(SING);
  609.         Special.add(CLNE);
  610.         Special.add(BCLN);
  611.         Special.add(STKM);
  612.         Special.add(VENT);
  613.         Special.add(VACU);
  614.         Special.add(CONV);
  615.         Special.add(INSL);
  616.         Special.add(VOID);
  617.         Special.add(STK2);
  618.         Special.add(PRTI);
  619.         Special.add(PRTO);
  620.         Special.add(BHOL);
  621.         Special.add(WHOL);
  622.         Life.add(GOL);
  623.         Life.add(HLIF);
  624.         Life.add(ASIM);
  625.         Life.add(TWOx2);
  626.         Life.add(DANI);
  627.         Life.add(AMOE);
  628.         Life.add(MOVE);
  629.         Life.add(PGOL);
  630.         Life.add(THIRTY4);
  631.         Life.add(LLIF);
  632.         Life.add(STAN);
  633.         Life.add(SEED);
  634.         Life.add(MAZE);
  635.         Life.add(COAG);
  636.         Life.add(WALL);
  637.         Life.add(GNAR);
  638.         Life.add(REPL);
  639.         Life.add(MYST);
  640.         Life.add(STAR);
  641.         Life.add(LOTE);
  642.         Life.add(BRAN);
  643.         Life.add(FROG);
  644.         Tools.add(AIR);
  645.         Tools.add(VAC);
  646.         Tools.add(COOL);
  647.         Tools.add(HEAT);
  648.         Tools.add(WIND);
  649.         Tools.add(PGRV);
  650.         Tools.add(NGRV);
  651.         Tools.add(PROP);
  652.        
  653.         applikation.add(menubar, BorderLayout.NORTH);
  654.         applikation.add(new JScrollPane(textarea), BorderLayout.CENTER);
  655.         applikation.setSize(850, 300);
  656.         applikation.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  657.         applikation.setVisible(true);
  658.         textarea.append("Powder Toy Helper loaded");
  659.        
  660.     }
  661.     public void actionPerformed(ActionEvent object) {
  662.     /* // Old code
  663.         if (object.getSource() == About){
  664.             javax.swing.JOptionPane.showMessageDialog(null,"Powder Toy Helper Version "+version+" by NeBuR \n The Powder Toy : www.powdertoy.co.uk" );     
  665.         }
  666.         if (object.getSource() == Wallconductive){
  667.             textarea.append(data.wallconductive());
  668.         }
  669.        
  670.         if (object.getSource() == EWall){
  671.             textarea.append(data.ewall());
  672.         }
  673.         if (object.getSource() == Detector){
  674.             textarea.append(data.detector());
  675.         }
  676.         if (object.getSource() == Stream){
  677.             textarea.append(data.stream());
  678.         }
  679.         if (object.getSource() == Sign){
  680.             textarea.append(data.sign());
  681.         }
  682.         if (object.getSource() == Fan){
  683.             textarea.append(data.fan());
  684.         }
  685.         if (object.getSource() == Liquid){
  686.             textarea.append(data.liquid());
  687.         }
  688.         if (object.getSource() == Absorbing){
  689.             textarea.append(data.absorbing());
  690.         }
  691.         if (object.getSource() == Eraser){
  692.             textarea.append(data.eraser());
  693.         }
  694.         if (object.getSource() == Wallnone){
  695.             textarea.append(data.nonconductive());
  696.         }
  697.         if (object.getSource() == Nonpermeable){
  698.             textarea.append(data.nonpermeable());
  699.         }
  700.         if (object.getSource() == Solid){
  701.             textarea.append(data.solid());
  702.         }
  703.         if (object.getSource() == Conductor){
  704.             textarea.append(data.conductor());
  705.         }
  706.         if (object.getSource() == EHole){
  707.             textarea.append(data.ehole());
  708.         }
  709.         if (object.getSource() == Gas){
  710.             textarea.append(data.gaswall());
  711.         }
  712.         if (object.getSource() == Gravity){
  713.             textarea.append(data.gravity());
  714.         }
  715.         if (object.getSource() == Energy){
  716.             textarea.append(data.energy());
  717.         }
  718.         if (object.getSource() == METL){
  719.             textarea.append(data.metl());
  720.         }
  721.         if (object.getSource() ==SPRK ){
  722.             textarea.append(data.sprk());
  723.         }
  724.         if (object.getSource() ==PSCN ){
  725.             textarea.append(data.pscn());
  726.         }
  727.         if (object.getSource() ==NSCN ){
  728.             textarea.append(data.nscn());
  729.         }
  730.         if (object.getSource() == NTCT){
  731.             textarea.append(data.ntct());
  732.         }
  733.         if (object.getSource() ==PTCT ){
  734.             textarea.append(data.ptct());
  735.         }
  736.         if (object.getSource() == ETRD){
  737.             textarea.append(data.etrd());
  738.         }
  739.         if (object.getSource() == BTRY){
  740.             textarea.append(data.btry());
  741.         }
  742.         if (object.getSource() == SWCH){
  743.             textarea.append(data.swch());
  744.         }
  745.         if (object.getSource() ==INWR ){
  746.             textarea.append(data.inwr());
  747.         }
  748.         if (object.getSource() ==LIGH ){
  749.             textarea.append(data.ligh());
  750.         }
  751.         if (object.getSource() ==TESC ){
  752.             textarea.append(data.tesc());
  753.         }
  754.         if (object.getSource() ==INST ){
  755.             textarea.append(data.inst());
  756.         }
  757.         if (object.getSource() ==WIFI ){
  758.             textarea.append(data.wifi());
  759.         }
  760.         if (object.getSource() ==ARAY ){
  761.             textarea.append(data.aray());
  762.         }
  763.         if (object.getSource() ==EMP ){
  764.             textarea.append(data.emp());
  765.         }
  766.         if (object.getSource() ==MERC ){
  767.             textarea.append(data.merc());
  768.         }
  769.         if (object.getSource() ==WIRE ){
  770.             textarea.append(data.wire());
  771.         }
  772.        
  773.        
  774.         if (object.getSource() == all){
  775.             textarea.append(data.all());
  776.         }*/
  777.         switch(object.getSource()) // New code - a Switch statement, means that it will get the value and then compare it to the case-s, if one matches it runs the code inside
  778.         {
  779.             case About: // A case block structure, think of it as a "in case of About: execute this code and break the loop"
  780.                 javax.swing.JOptionPane.showMessageDialog(null,"Powder Toy Helper Version "+version+" by NeBuR \n The Powder Toy : www.powdertoy.co.uk" );
  781.             break;
  782.             case WIRE:
  783.                 textarea.append(data.wire());
  784.             break;
  785.             // and repeat for all the other options. A lot, yes.
  786.     }
  787.  
  788.  
  789.  
  790. public static void main(String[] args)
  791. {
  792.     new Powdertoy();
  793. }
  794.  
  795. }
  796. /*
  797.         public static String wallconductive()
  798.         {
  799.                 String a = "\n\nWall (Conductive)\nDescription: Indestructible. Blocks everything. Conductive.\nBlocks: Everything\nAllows: Nothing, except BRAY, which can appear through any wall, but not inside of walls that block it.\nSpecial: Conducts SPRK. Transparent to ARAY. ";
  800.                 return a;
  801.         }
  802.        
  803.         public static String ewall()
  804.         {
  805.                 String a ="\n\nE-wall\nDescription: Becomes transparent when electricity is connected.\nBlocks: See special\nAllows See special\nSpecial: Acts like WALL without electricity, blocking all particles and airflow. Acts like Conductor when with electricity, letting anything pass through it. ";
  806.                 return a;
  807.         }
  808.        
  809.         public static String detector()
  810.         {
  811.                 String a = "\n\nDetector\nDescription: Generates electricity when a particle is inside. Blocks Nothing, except for things it can conduct SPRK to like METL and PSCN.\nAllows: All\nSpecial: Will pass SPRK on to anything conductive while a particle is in its area. ";
  812.                 return a;
  813.         }
  814.        
  815.         public static String stream()
  816.         {
  817.                 String a = "\n\nStreamline\nDescription Set start point of a steamline. Blocks N/A\nAllows N/A\nSpecial Shows you how pressure is moving around the simulation. ";
  818.                 return a;
  819.         }
  820.        
  821.         public static String sign()
  822.         {
  823.                 String a ="\n\nSign\nDescription Click on a sign to edit or delete it, or click anywhere else to place a new one.\nBlocks N/A\nAllows N/A\nSpecial Allows you to places signs around your simulation for whatever purpose you need them for.\nFor linking to other saves, type {c:(other save id)|(text)} to link. I.E. {c:184767|Click here!}\nTyping {t} or {p} into the sign will show the current temperature or pressure where the sign was placed. ";
  824.                 return a;
  825.         }
  826.        
  827.         public static String fan()
  828.         {
  829.                 String a ="\n\nFan\nDescription Accelerates Air. Use the line tool (shift-click, drag) to set direction and strength.\nAllows All\nBlocks Nothing\nSpecial Creates pressure and airflow. To use, place the wall where you need it. While you still have the Fan wall selected, hold shift, click on the wall, then drag in the direction you want air to flow. ";
  830.                 return a;
  831.         }
  832.        
  833.         public static String liquid()
  834.         {
  835.                 String a="\n\nLiquid Permeable\nDescription Blocks most particles but lets liquids through. Conductive.\nAllows Liquid Elements, Pressure\nBlocks Gases, Powders and Solids\nSpecial Only allows liquids to pass through it, Also conducts SPRK to anything conductive ";
  836.                 return a;
  837.         }
  838.        
  839.         public static String absorbing()
  840.         {
  841.                 String a ="\n\nAbsorbing wall\nDescription Absorbs particles but lets air currents through.\nBlocks Nothing\nAllows Pressure\nSpecial Absorbs all particles that enter its space. ";
  842.                 return a;
  843.         }
  844.        
  845.         public static String eraser()
  846.         {
  847.                 String a="\n\nEraser\nDescription Erases Walls\nAllows N/A\nBlocks N/A\nSpecial Used to erase walls, because the normal eraser can't";
  848.                 return a;
  849.         }
  850.        
  851.         public static String nonconductive()
  852.         {
  853.                 String a="\n\nWall (non conductive)\nDescription Indestructible. Blocks everything.\nBlocks All\nAllows Nothing\nSpecial A basic wall that blocks everything with no special properties ";
  854.                 return a;
  855.         }
  856.        
  857.         public static String nonpermeable()
  858.         {
  859.                 String a ="\n\nNon-permeable wall\nDescription Indestructible. Blocks particles, allows air.\nBlocks Everything, except pressure\nAllows Pressure ";
  860.                 return a;
  861.         }
  862.        
  863.         public static String solid()
  864.         {
  865.                 String a ="\n\nSolid-Permeable\nDescription Blocks liquids, gases and solids. Allows powders.\nBlocks Liquids, gases, and solids\nAllows Powders\nSpecial This wall should be called powder-only wall. It will probably be fixed eventually, or the name will be changed. It is not sugested that you use it in your saves because an update may break them. ";
  866.                 return a;
  867.         }
  868.         public static String conductor()
  869.         {
  870.         String a = "\n\nConductor\nDescription Allows particles, conducts electricity  \nBlocks Nothing  \nAllows All  \nSpecial Conducts SPRK to anything conductive when the wall is sparked.";  
  871.         return a;
  872.         }
  873.         public static String ehole()
  874.         {
  875.         String a = "\n\nE-Hole\nDescription absorbs particles, releases them when powered  \nAllows See \nSpecial  Blocks See Special  Special Holds particles in place until electrified, releases them when electrified. When particles are inside the wall, they act normally and can move freely except for the space outside the wall. ";
  876.         return a;
  877.         }
  878.         public static String gaswall()
  879.         {
  880.         String a = "\n\nGas permeable wall\nDescription Indestructible. Blocks liquids and solids, allows gases  \nBlocks Liquids, Solids and Powders.  \nAllows Gasses and Pressure  \nSpecial Note: This wall does allow FIRE as well. ";
  881.         return a;
  882.         }
  883.         public static String gravity()
  884.         {
  885.         String a = "\n\nGravity Wall\nDiscription Blocks gravity from certain areas.  Allows \nAllows all particles and pressure.  \nBlocks Newtonian gravity.  \nSpecial If you make a box using gravity wall, then Newtonian gravity has no effect inside the box.   ";
  886.         return a;
  887.         }
  888.         public static String energy()
  889.         {
  890.         String a = "\n\nEnergy Wall\nDiscription Energy wall, allows only energy type particles to pass.   \nAllows Photons, neutrons, and THDR.   \nBlocks Everything except photons, neutrons and THDR.  \nSpecial N/A ";
  891.         return a;
  892.         }
  893.         public static String metl()
  894.         {
  895.         String a = "\n\nMetal [METL]  \nTransfers charge, melts. Basically copper in behavior. Melts into [molten metal] at 1000C/1273.15K ";
  896.         return a;
  897.         }
  898.         public static String sprk()
  899.         {
  900.         String a = "\n\nElectricity [SPRK] \n A single spark of electricity. Not an actual particle, it's only visible on conducting elements. Heats up certain conductors. ";
  901.         return a;
  902.         }
  903.         public static String pscn()
  904.         {
  905.         String a = "\n\nP-type silicon [PSCN] \nTransfer current to all conductors regardless of rules. Melts into [LAVA] at 1400C/1687K. Put a 1-pixel thick layer of PSCN followed by \nNSCN to form a simple solar panel. Generally used to activate powered materials or in diodes." ;
  906.         return a;
  907.         }
  908.         public static String nscn()
  909.         {
  910.         String a = "\n\n N-type silicon [NSCN]\nWill only conduct based on the receiving elements rules and does not conduct to PSCN under any circumstances. Generally used to deactivate\npowered materials or in diodes. Melts into [LAVA] at 1400C/1687K." ;
  911.         return a;
  912.         }
  913.         public static String ntct()
  914.         {
  915.         String a = "\n\nNegative Temperature Coefficient Thermistor [NTCT] \nBasically will conduct electricity if above 100C/393K. Among its special conductive properties is the ability to cool itself to about 22C. Melts into [LAVA] at \n1400C/1687K. ";
  916.         return a;
  917.         }
  918.         public static String ptct()
  919.         {
  920.         String a = "\n\nPositive Temperature Coefficient Thermistor [PTCT] \nBasically will conduct electricity if under 100C/393K. Melts into [LAVA] at 1400C/1687K. Among its special conductive properties is the ability to cool \nitself to about 22C. .\nSince it has the ability to cool itself to about 22C, it is very useful to demonstrate the process of evaporation. ";
  921.         return a;
  922.         }
  923.         public static String etrd()
  924.         {
  925.         String a = "\n\nElectrode [ETRD] \nWhen energized finds the nearest electrode and creates a line of plasma between them and transfers the charge. Caution: Use literally 1 pixel of it per \nelectrode, not entire blocks. Otherwise this will create an awful lot of plasma which is usually very laggy. \nIt will keep looping if you use more than 2. Electrode will not fire to an adjacent electrode if Insulator [INSL] is directly in the center of the two. Walls will \nnot affect the plasma or transfer. ";
  926.         return a;
  927.         }
  928.         public static String btry()
  929.         {
  930.         String a = "\n\nBattery [BTRY] \nPasses electrical charge to Metal [METL], P-Type Silicon [PSCN] and N-Type Silicon [NSCN]. Boils into Plasma [PLSM] at 2000C/2273K. ";
  931.         return a;
  932.         }
  933.         public static String swch()
  934.         {
  935.         String a = "\n\nSwitch [SWCH] \nConducts electricity when sparked by PSCN, stops conducting when receives spark from NSCN. When a spark transmits downward or to the right \nthrough SWCH, it conducts instantly (like INST), when going up or leftwards, it only conducts slightly faster than metal. SWCH is dark green when off, \nbright green when activated. ";
  936.         return a;
  937.         }
  938.         public static String inwr()
  939.         {
  940.         String a = "\n\nInsulated Wire [INWR] \nDoesn't conduct to metal or semi-conductors. Only transfers [SPRK] to/from [PSCN] and [NSCN]. \nMelts into [LAVA] at 1400C/1687K. ";
  941.         return a;
  942.         }
  943.         public static String ligh()
  944.         {
  945.         String a = "\n\nLightning [LIGH]\nMore realistic lightning. Creates a bolt of lightning towards the ground, the size is dictated by the size of the pen. Sparks neutron reaction when striking \ndeuterium." ;
  946.         return a;
  947.         }
  948.         public static String tesc()
  949.         {
  950.         String a = "\n\nTesla Coil [TESC] \nCreates LIGH when sparked. Only creates large bolts if the TESC is in a circle. Irregular shapes will make what appears to be static. ";
  951.         return a;
  952.         }
  953.         public static String inst()
  954.         {
  955.         String a = "\n\nInstantly Conducts [INST] \nConducts sparks instantly, PSCN to take, NSCN to remove. Has similar properties to conductive wall. Indestructible except for BOMB. Dark grey in \ncolour. ";
  956.         return a;
  957.         }
  958.         public static String wifi()
  959.         {
  960.         String a = "\n\nWifi [WIFI] \nDestructible by ACID and pressure, wireless conductor. Receives spark from any conductive material (with the exception of NSCN) but only NSCN, \nINWR and PSCN can receive the spark from WIFI. There are 99 frequencies to use, all of which are 100 degrees apart. (PSCN was added in 44.7) \nBreaks into BRMT, or broken metal at a pressure of 15. \nFor further usage, check How To use WIFI under Tutorials";
  961.         return a;
  962.         }
  963.         public static String aray()
  964.         {
  965.         String a = "\n\nA-type ray [ARAY] \nIndestructible (44.7), can receive a SPRK from all of the electric conductors, even SWCH. It creates a line of the element BRAY in the direction opposite \nto the side it was sparked from. But ARAY responses to sparks only 2 frames after the BRAY fully disappeared. Unlike other electronics, ARAY must \nreceive a SPRK from a pixel in direct contact with it. \nUsing PSCN to spark ARAY will make BRAY that will erase any normal BRAY. It does mostly the opposite of normal BRAY. It will spark metal and does \nnot fade out slowly. Bray can pass every wall. \nFor For further usage, check How to use ARAY under Tutorials.";
  966.         return a;
  967.         }
  968.         public static String emp()
  969.         {
  970.         String a = "\n\nElectromagnetic Pulse [EMP] \nColor: blue \nActivated electronics on screen will malfunction and heat up at random when SPRK touches EMP. Some electronics will turn into BREL or NTCT. \nMakes the screen flash when activated, more intensely so if the amount of EMP is larger. WIFI near activated electronics may have its channel changed \nto a random new one, DLAY may have its delay changed to a random new one, and ARAY/SWCH/METL/BMTL/WIFI may heat up or break. ";
  971.         return a;
  972.         }
  973.         public static String merc()
  974.         {
  975.         String a = "\n\nMercury [MERC]\nAdded in version 50.6, Mercury is a liquid that conducts electricity. When heated up, this liquid expands, and vic versa. Does not kill STKM. One of the \nheaviest liquids, it can even sink below some lighter powders like dust. ";
  976.         return a;
  977.         }
  978.         public static String wire()
  979.         {
  980.         String a = "\n\nWire [WIRE] \nAdded in version 55.9, Wire is a solid conductible element based on another game known as WireWorld. WIRE is indestructible (excluding BOMB.) \nWIRE accepts SPRK from PSCN and gives to NSCN. WIRE works on the same principles as GOL, simple mathematical rules applied cause \ngeneration of four different states; Empty, Electron Head (blue), Electron Tail (white), and Conductor (orange). The rules it follows are: \nEmpty => Empty \nElectron head => Electron tail \nElectron tail => Conductor \nConductor => electron head if exactly one or two of the neighboring cells are electron heads, or remains Conductor otherwise. \n(Please note that one cell is one pixel) \nWIRE is extremely useful for logic gates, and has many other electronic applications. For example, entire computers (albeit, large ones) have been \ncreated made entirely out of WIRE. ";
  981.         return a;
  982.         }
  983.  
  984.  
  985.  
  986.  
  987.  
  988.  
  989.  
  990.        
  991.        
  992.        
  993.        
  994.        
  995.        
  996.        
  997.        
  998.        
  999.        
  1000.  
  1001.        
  1002.         public static String all()
  1003.         {
  1004.                 String a =
  1005. data.wallconductive()+data.ewall()+data.absorbing()+data.conductor()+data.conductor()+data.ehole()+data.energy()+data.eraser()+data.fan()+data.gaswall()+data.gravity()+data.liquid()+data.nonconductive()+data.nonpermeable()+data.sign()+data.solid()+data.stream()+data.wallconductive();
  1006.                 return a;
  1007.         }
  1008. }
  1009.  */
  1010.     // Could be replaced by
  1011.     String[] data = {   "\n\nWall (Conductive)\nDescription: Indestructible. Blocks everything. Conductive.\nBlocks: Everything\nAllows: Nothing, except BRAY, which can appear through any wall, but not inside of walls that block it.\nSpecial: Conducts SPRK. Transparent to ARAY. ",
  1012.                         "\n\nE-wall\nDescription: Becomes transparent when electricity is connected.\nBlocks: See special\nAllows See special\nSpecial: Acts like WALL without electricity, blocking all particles and airflow. Acts like Conductor when with electricity, letting anything pass through it. ",
  1013.                         }
  1014.  
  1015.  
  1016.  
  1017. */
  1018.  
  1019.  
  1020.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement