Advertisement
Guest User

Untitled

a guest
Mar 22nd, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.13 KB | None | 0 0
  1. package main;
  2.  
  3. import java.awt.EventQueue;
  4.  
  5.  
  6. import javax.swing.JFrame;
  7. import javax.swing.JList;
  8. import java.awt.BorderLayout;
  9. import java.awt.GridBagLayout;
  10. import java.awt.GridBagConstraints;
  11. import javax.swing.border.CompoundBorder;
  12. import javax.swing.border.BevelBorder;
  13. import java.awt.Color;
  14. import javax.swing.JLabel;
  15. import javax.swing.SwingConstants;
  16. import java.awt.Font;
  17.  
  18. import javax.swing.DefaultListModel;
  19. import javax.swing.JButton;
  20. import javax.swing.JTextField;
  21. import java.awt.event.ActionListener;
  22. import java.awt.event.MouseEvent;
  23. import java.util.Random;
  24. import java.awt.event.ActionEvent;
  25.  
  26. public class Fenster {
  27.  
  28. private JFrame frmSpiceWars;
  29. private JTextField fldamount;
  30.  
  31. JList lstspice;
  32. JList lstcities;
  33. JButton btnbuy;
  34. JButton btnsell;
  35.  
  36. private DefaultListModel lstspicesmdl = new DefaultListModel();
  37. private DefaultListModel lstcitiesmdl = new DefaultListModel();
  38. private DefaultListModel lstcitiesnextmdl = new DefaultListModel();
  39.  
  40.  
  41. int money;
  42. int laderaum;
  43. String [] spices = new String [5];
  44. int [] aktkosten = new int [5];
  45. int [] eigenladung = new int [5];
  46. int [] KostenMin = new int [5];
  47. int [] KostenMax = new int [5];
  48.  
  49. Random random = new Random();
  50.  
  51.  
  52. public static void main(String[] args) {
  53. EventQueue.invokeLater(new Runnable() {
  54. public void run() {
  55. try {
  56. Fenster window = new Fenster();
  57. window.frmSpiceWars.setVisible(true);
  58. } catch (Exception e) {
  59. e.printStackTrace();
  60. }
  61. }
  62. });
  63. }
  64.  
  65. public Fenster() {
  66. initialize();
  67. }
  68.  
  69.  
  70. public Fenster(String title) {
  71. super(titel);
  72.  
  73. initialize();
  74.  
  75. money = 1000;
  76. laderaum = 100;
  77.  
  78. spices[0] = "Pfeffer";
  79. spices[1] = "Muskat";
  80. spices[2] = "Nelken";
  81. spices[3] = "Vanille";
  82. spices[4] = "Zimt";
  83.  
  84. aktkosten[0] = 100;
  85. aktkosten[1] = 30;
  86. aktkosten[2] = 50;
  87. aktkosten[3] = 20;
  88. aktkosten[4] = 10;
  89.  
  90. eigenladung[0] = 0;
  91. eigenladung[1] = 0;
  92. eigenladung[2] = 0;
  93. eigenladung[3] = 0;
  94. eigenladung[4] = 0;
  95.  
  96. KostenMin[0] = 50;
  97. KostenMin[1] = 5;
  98. KostenMin[2] = 20;
  99. KostenMin[3] = 100;
  100. KostenMin[4] = 60;
  101.  
  102. KostenMax[0] = 150;
  103. KostenMax[1] = 35;
  104. KostenMax[2] = 170;
  105. KostenMax[3] = 450;
  106. KostenMax[4] = 300;
  107.  
  108. }
  109.  
  110. public void btnsail_ActionPerformed(ActionEvent evt) {
  111.  
  112. for (int i = 0; i<5 ;i++) {
  113.  
  114. aktkosten[i] = KostenMin[i] + random.nextInt(KostenMax[i]-KostenMin[i]);
  115.  
  116. }
  117.  
  118. Datenanzeigen();
  119. }
  120.  
  121.  
  122. public void Datenanzeigen() {
  123.  
  124.  
  125. lstspicesmdl.removeAllElements();
  126. lstcitiesmdl.removeAllElements();
  127. lstcitiesnextmdl.removeAllElements();
  128. for(int i=0; i<5; i++) {
  129.  
  130. lstcitiesmdl.addElement(spices[i] + " kostet: " + aktkosten[i] + " Taler!");
  131. }
  132.  
  133. for(int i=0; i<5; i++) {
  134.  
  135. lstspicesmdl.addElement(spices[i] + " geladen: " + eigenladung[i] + " kg!");
  136. lstspicesmdl.addElement("---------");
  137. lstspicesmdl.addElement("Geldvermögen: " + money);
  138.  
  139. lstcitiesnextmdl.addElement("Venedig");
  140. lstcitiesnextmdl.addElement("Ravenna");
  141. lstcitiesnextmdl.addElement("Turin");
  142. lstcitiesnextmdl.addElement("Mailand");
  143. lstcitiesnextmdl.addElement("Rom");
  144.  
  145. }
  146.  
  147. }
  148.  
  149. //Spice list
  150. public void lstcities_MouseClicked(MouseEvent evt) {
  151.  
  152. int index = lstcities.getSelectedIndex();
  153. fldamount.setText(Integer.toString((money / aktkosten[index])));
  154.  
  155. }
  156.  
  157. //Liste Laderaum
  158. public void lstspice_MouseClicked(MouseEvent evt) {
  159.  
  160. int index = lstspice.getSelectedIndex();
  161. fldamount.setText(Integer.toString (eigenladung[index]));
  162.  
  163. }
  164.  
  165. //Kaufbutton
  166. public void btnbuy_ActionPerformed(ActionEvent evt) {
  167.  
  168. int amount = Integer.parseInt(fldamount.getText());
  169. int number = lstcities.getSelectedIndex();
  170. if (amount*aktkosten[number] <= money) {
  171.  
  172. money = money - amount * aktkosten[number];
  173. eigenladung[number] = eigenladung[number]+amount;
  174.  
  175. }
  176.  
  177. Datenanzeigen();
  178.  
  179. }
  180.  
  181. //Verkaufsbutton
  182. public void btnsell_ActionPerformed(ActionEvent evt) {
  183.  
  184. int amount = Integer.parseInt(fldamount.getText());
  185. int number = lstspice.getSelectedIndex();
  186. if (amount <= eigenladung[number]) {
  187.  
  188. money = money + amount + aktkosten[number];
  189. eigenladung[number] = eigenladung[number] - amount;
  190.  
  191. }
  192.  
  193. Datenanzeigen();
  194.  
  195. }
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207.  
  208.  
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221. private void initialize() {
  222. frmSpiceWars = new JFrame();
  223. frmSpiceWars.setTitle("Spice Wars");
  224. frmSpiceWars.setResizable(false);
  225. frmSpiceWars.setBounds(100, 100, 600, 600);
  226. frmSpiceWars.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  227. frmSpiceWars.getContentPane().setLayout(null);
  228.  
  229.  
  230. //OBEN LINKS
  231. JLabel lblcities = new JLabel("Marktplatz");
  232. lblcities.setFont(new Font("Tahoma", Font.BOLD, 16));
  233. lblcities.setHorizontalAlignment(SwingConstants.LEFT);
  234. lblcities.setBounds(10, 15, 97, 23);
  235. frmSpiceWars.getContentPane().add(lblcities);
  236.  
  237. JList lstcities = new JList();
  238. lstcities.setBorder(new BevelBorder(BevelBorder.RAISED, Color.BLACK, null, Color.BLACK, null));
  239. lstcities.setBounds(10, 40, 200, 200);
  240. frmSpiceWars.getContentPane().add(lstcities);
  241. lstcities.setModel(lstcitiesmdl);
  242.  
  243.  
  244. //OBEN RECHTS
  245. JLabel lblspices = new JLabel("Laderaum");
  246. lblspices.setHorizontalAlignment(SwingConstants.LEFT);
  247. lblspices.setFont(new Font("Tahoma", Font.BOLD, 16));
  248. lblspices.setBounds(384, 17, 89, 21);
  249. frmSpiceWars.getContentPane().add(lblspices);
  250.  
  251. JList lstspices = new JList();
  252. lstspices.setBorder(new BevelBorder(BevelBorder.LOWERED, Color.BLACK, null, Color.BLACK, null));
  253. lstspices.setBounds(384, 40, 200, 200);
  254. frmSpiceWars.getContentPane().add(lstspices);
  255. lstspices.setModel(lstspicesmdl);
  256.  
  257.  
  258. //UNTEN LINKS
  259. JList lstcitiesnext = new JList();
  260. lstcitiesnext.setBorder(new BevelBorder(BevelBorder.LOWERED, Color.BLACK, null, Color.BLACK, null));
  261. lstcitiesnext.setBounds(10, 326, 200, 200);
  262. frmSpiceWars.getContentPane().add(lstcitiesnext);
  263. lstcitiesnext.setModel(lstcitiesnextmdl);
  264.  
  265. JButton btnsail = new JButton("Weitersegeln");
  266. btnsail.setFont(new Font("Tahoma", Font.BOLD, 11));
  267. btnsail.setBounds(10, 537, 200, 23);
  268. frmSpiceWars.getContentPane().add(btnsail);
  269.  
  270.  
  271.  
  272. //MITTE
  273. JLabel lblMenge = new JLabel("Menge");
  274. lblMenge.setHorizontalAlignment(SwingConstants.LEFT);
  275. lblMenge.setFont(new Font("Tahoma", Font.BOLD, 16));
  276. lblMenge.setBounds(267, 41, 61, 23);
  277. frmSpiceWars.getContentPane().add(lblMenge);
  278.  
  279. JButton btnsell = new JButton("<<<Verkaufen");
  280. btnsell.setFont(new Font("Tahoma", Font.BOLD, 11));
  281. btnsell.setBounds(239, 143, 117, 23);
  282. frmSpiceWars.getContentPane().add(btnsell);
  283.  
  284. JButton btnbuy = new JButton("Kaufen>>>");
  285. btnbuy.setFont(new Font("Tahoma", Font.BOLD, 11));
  286. btnbuy.addActionListener(new ActionListener() {
  287. public void actionPerformed(ActionEvent arg0) {
  288. }
  289. });
  290. btnbuy.setBounds(239, 109, 117, 23);
  291. frmSpiceWars.getContentPane().add(btnbuy);
  292.  
  293. fldamount = new JTextField();
  294. fldamount.setBounds(257, 68, 86, 20);
  295. frmSpiceWars.getContentPane().add(fldamount);
  296. fldamount.setColumns(10);
  297. }
  298. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement