Camtech075

asdf

Sep 18th, 2011
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.68 KB | None | 0 0
  1. import java.io.File;
  2. import java.io.FileNotFoundException;
  3. import java.io.PrintStream;
  4. import java.io.FileInputStream;
  5. import java.io.IOException;
  6. import javax.swing.JFrame;
  7. import javax.swing.JLabel;
  8. import java.awt.Container;
  9. import javax.swing.JTextField;
  10. import javax.swing.JButton;
  11. import java.awt.GridLayout;
  12. import java.awt.FlowLayout;
  13. import java.awt.event.ActionListener;
  14. import java.awt.event.ActionEvent;
  15. import javax.swing.JCheckBox;
  16. import java.awt.event.ItemListener;
  17. import java.awt.event.ItemEvent;
  18.  
  19. public class FEditor_Script_Reader {
  20.  
  21. public static JFrame frame;
  22. public static JTextField textfield;
  23. public static Container contentPane;
  24. public static String go;
  25. public static JLabel whatmode;
  26. public static JButton button;
  27. public static FlowLayout layout;
  28. public static String fileName;
  29.  
  30. public static void main(String[] args) {
  31.  
  32. JCheckBox regAttack, crit, ranged, rngcrit, dodge, stand;
  33.  
  34. frame = new JFrame();
  35. frame.setTitle("Script Converter");
  36.  
  37. contentPane = frame.getContentPane();
  38. textfield = new JTextField("[blank]FrameData.dmp", 15);
  39. whatmode = new JLabel("Check the modes you wish to convert (see readme)");
  40.  
  41. go = "Create Script!";
  42.  
  43. regAttack = new JCheckBox("1/2/12");
  44. regAttack.addItemListener(new MyItemListener(this));
  45. crit = new JCheckBox("3/4");
  46. crit.addItemListener(new MyItemListener(this));
  47. ranged = new JCheckBox("5");
  48. ranged.addItemListener(new MyItemListener(this));
  49. rngcrit = new JCheckBox("6");
  50. rngcrit.addItemListener(new MyItemListener(this));
  51. dodge = new JCheckBox("7/8/9");
  52. dodge.addItemListener(new MyItemListener(this));
  53. stand = new JCheckBox("10/11");
  54. stand.addItemListener(new MyItemListener(this));
  55.  
  56. button = new JButton(go);
  57. button.addActionListener(new MyActionListener(textfield));
  58.  
  59. contentPane.add(textfield);
  60. contentPane.add(whatmode);
  61. contentPane.add(regAttack);
  62. contentPane.add(crit);
  63. contentPane.add(ranged);
  64. contentPane.add(rngcrit);
  65. contentPane.add(dodge);
  66. contentPane.add(stand);
  67. contentPane.add(button);
  68. layout = new FlowLayout();
  69. contentPane.setLayout(layout);
  70.  
  71. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  72. frame.pack();
  73. frame.setSize(800,110);
  74. frame.setVisible(true);
  75.  
  76. //Scanner dmpReader = new Scanner(new File("literal.txt"));
  77.  
  78. }
  79.  
  80. }
  81.  
  82. class MyItemListener implements ItemListener {
  83.  
  84. public void itemStateChanged(ItemEvent event) {
  85.  
  86. String whatWasChecked = (String) event.getItem();
  87. final boolean attackIsChecked = whatWasChecked.equals("regAttack");
  88. final boolean critIsChecked = whatWasChecked.equals("crit");
  89. final boolean rangeIsChecked = whatWasChecked.equals("ranged");
  90. final boolean rngCritIsChecked = whatWasChecked.equals("rngcrit");
  91. final boolean dodgeIsChecked = whatWasChecked.equals("dodge");
  92. final boolean standIsChecked = whatWasChecked.equals("stand");
  93.  
  94. }
  95.  
  96. }
  97.  
  98. class MyActionListener implements ActionListener {
  99.  
  100. public static JLabel label;
  101. public static JTextField textfield;
  102. public static String errorMessage, finished;
  103. static JFrame finalframe;
  104. static Container contentPane;
  105.  
  106. public static String toHex(long a) {
  107.  
  108. //Laziness, it's easier to write
  109. //toHex(asdf) than "asdf.whatever"
  110.  
  111. String result = Long.toString(a, 16);
  112.  
  113. return result.toUpperCase();
  114.  
  115. }
  116.  
  117. MyActionListener(JTextField textfield) {
  118.  
  119. this.textfield = textfield;
  120.  
  121. }
  122.  
  123. public void actionPerformed(ActionEvent e) {
  124.  
  125. finished = "Finished.";
  126. errorMessage = "Error with your file.";
  127. String fileName = textfield.getText();
  128.  
  129. try
  130. {
  131.  
  132. FileInputStream dmpReader = new FileInputStream(new File(fileName));
  133. PrintStream txtWriter = new PrintStream("dumpscript.txt");
  134.  
  135. int countvar = 0;
  136. int modenum = 1;
  137. int framenum = 1;
  138.  
  139. //FileNotFoundException("Error: File not Found");
  140.  
  141. txtWriter.println("//begin Mode 1");
  142.  
  143. while (dmpReader.available()!=0)
  144. {
  145. long byte1 = dmpReader.read();
  146. long byte2 = dmpReader.read();
  147. long byte3 = dmpReader.read();
  148. long cmdbyte = dmpReader.read();
  149.  
  150. long threebytes = byte1 + byte2 + byte3;
  151.  
  152. //if (cmdbyte == 0x80 && threebytes == 0x00)
  153. switch ((int)cmdbyte)
  154. {
  155. case 0x80:
  156. txtWriter.println("~~~");
  157. modenum++;
  158.  
  159. if (modenum < 13)
  160. {
  161. txtWriter.println("//begin Mode " + modenum);
  162. }
  163. else
  164. {
  165. txtWriter.print("//End of animation script");
  166. }
  167. break;
  168.  
  169. //framenum = 1;
  170. case 0x85:
  171. //int cbyte = cmdbyte.parseInt(16);
  172. if (byte1 < 0x10)
  173. {
  174. txtWriter.print("C0");
  175. txtWriter.println(toHex(byte1));
  176. }
  177. else
  178. {
  179. txtWriter.print("C");
  180. txtWriter.println(toHex(byte1));
  181. }
  182. break;
  183.  
  184. case 0x86:
  185. txtWriter.print(byte1 + " p- ");
  186.  
  187. switch(modenum)
  188. {
  189.  
  190. case 1:
  191. case 2:
  192. case 12:
  193. txtWriter.println("att-" + byte3 + ".png");
  194. ++framenum;
  195. break;
  196. case 3:
  197. case 4:
  198. txtWriter.println("crt-" + byte3 + ".png");
  199. ++framenum;
  200. break;
  201. case 5:
  202. txtWriter.println("rng-" + byte3 + ".png");
  203. ++framenum;
  204. break;
  205. case 6:
  206. txtWriter.println("rngcrit-" + byte3 + ".png");
  207. ++framenum;
  208. break;
  209. case 7:
  210. case 8:
  211. txtWriter.println("dodge-" + byte3 + ".png");
  212. ++framenum;
  213. break;
  214. case 9:
  215. case 10:
  216. case 11:
  217. txtWriter.println("stand-" + byte3 + ".png");
  218. ++framenum;
  219. break;
  220.  
  221. }
  222. break;
  223.  
  224. case 0x00:
  225. break;
  226.  
  227. default:
  228. txtWriter.println(byte1 + " " + byte2 + " " + " " + byte3 + " " + cmdbyte);
  229. System.out.println("Found unknown command: " + cmdbyte);
  230. break;
  231.  
  232. }
  233. }
  234.  
  235. finalframe = new JFrame();
  236.  
  237. label = new JLabel(finished);
  238. contentPane = finalframe.getContentPane();
  239. contentPane.add(label);
  240.  
  241. finalframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  242. finalframe.pack();
  243. finalframe.setVisible(true);
  244.  
  245. }
  246. catch (IOException exception)
  247. {
  248. finalframe = new JFrame();
  249.  
  250. label = new JLabel(errorMessage);
  251.  
  252. contentPane = finalframe.getContentPane();
  253. contentPane.add(label);
  254.  
  255. finalframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  256. finalframe.pack();
  257. finalframe.setVisible(true);
  258. }
  259. }
  260.  
  261. }
Advertisement
Add Comment
Please, Sign In to add comment