Sinds een paar dagen ben ik nu zo af en toe bezig met een spel Snake te maken, het is vooral nu eerst testen van alles, kijken hoe het werkt en ben nog niet echt bezig met het spel. Ik ben een paar maanden geleden geslaagd voor het examen Java op de Open Universiteit, het is dus niet dat ik niks van Java weet, alleen wel heel erg weinig van Java games
.
Ik heb het nu eindelijk voor elkaar gekregen om een blokje te bewegen (een snake bestaat in mijn spel uit meerdere blokjes) en wil nu met pijltoetsen de snake kunnen bewegen, leek mij heel simpel maar helaas..
De code ziet er verschrikkelijk uit, maar nogmaals het is allemaal in test-fase, uit proberen van de verschillende game-stappen
Hier is de code.
Wat ik dus graag wil is dat ik met de pijltjes het object kan bewegen, ik heb van alles geprobeerd (en weer verwijderd) maar het lukt me maar niet.
Ik ben trouwens met de cursus van de open universiteit nog niet bezig geweest met Swing, krijg ik bij de volgende cursus, dus ik weet nog niet hoe jFrame werkt (heb ik vaak gezien als er met keys worden gewerkt), maakt het wat uit een frame of applet ? Zo ja, wat precies ?
Bedankt voor het lezen
en eventueel voor het antwoord.
- Johan
Ik heb het nu eindelijk voor elkaar gekregen om een blokje te bewegen (een snake bestaat in mijn spel uit meerdere blokjes) en wil nu met pijltoetsen de snake kunnen bewegen, leek mij heel simpel maar helaas..
De code ziet er verschrikkelijk uit, maar nogmaals het is allemaal in test-fase, uit proberen van de verschillende game-stappen
Hier is de code.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
| package Snake;
import java.awt.*;
import java.awt.event.*;
import java.awt.event.KeyListener;
import java.awt.event.KeyEvent;
import java.applet.*;
public class Applet1 extends Applet implements Runnable
{
public int block = 15;
public int block_x = 5;
public int block_y = 5;
TextField testField = new TextField();
//Construct the applet
public Applet1()
{
}
//Initialize the applet
public void init()
{
try
{
jbInit();
}
catch(Exception e)
{
e.printStackTrace();
}
}
//Component initialization
private void jbInit() throws Exception
{
testField.setBounds(new Rectangle(80, 183, 110, 24));
this.setLayout(null);
this.setSize(new Dimension(300,300));
this.add(testField, null);
//this.addKeyListener(this);
}
//Get Applet information
public String getAppletInfo()
{
return "Applet Information";
}
//Get parameter info
public String[][] getParameterInfo()
{
return null;
}
public void start()
{
// define a new thread
Thread th = new Thread (this);
// start this thread
th.start ();
}
public void stop()
{
}
public void destroy()
{
}
public void run ()
{
// lower ThreadPriority
Thread.currentThread().setPriority(Thread.MIN_PRIORITY);
// run a long while (true) this means in our case "always"
while (true)
{
block_x++;
// repaint the applet
repaint();
try
{
// Stop thread for 20 milliseconds
Thread.sleep (20);
}
catch (InterruptedException ex)
{
// do nothing
}
// set ThreadPriority to maximum value
Thread.currentThread().setPriority(Thread.MAX_PRIORITY);
}
}
public void actionPerformed ( ActionEvent e )
{
testField.setText("src:" . e.getSource);
}
public void paint (Graphics g)
{
// set color
g.setColor (Color.red);
// paint a filled colored circle
g.fillRect(block_x, block_y, block, block);
}
} |
Wat ik dus graag wil is dat ik met de pijltjes het object kan bewegen, ik heb van alles geprobeerd (en weer verwijderd) maar het lukt me maar niet.
Ik ben trouwens met de cursus van de open universiteit nog niet bezig geweest met Swing, krijg ik bij de volgende cursus, dus ik weet nog niet hoe jFrame werkt (heb ik vaak gezien als er met keys worden gewerkt), maakt het wat uit een frame of applet ? Zo ja, wat precies ?
Bedankt voor het lezen
- Johan