Network buttons
This commit is contained in:
+20
-11
@@ -39,12 +39,11 @@ public class NetworkHandler implements Runnable{
|
||||
send = new byte[1024];
|
||||
receive = new byte[1024];
|
||||
|
||||
try {
|
||||
udp = new DatagramSocket();
|
||||
udp.connect(InetAddress.getByName(host), port);
|
||||
} catch (SocketException | UnknownHostException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
try {
|
||||
udp = new DatagramSocket(1112);
|
||||
} catch (SocketException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
running = true;
|
||||
t = new Thread(this);
|
||||
@@ -84,15 +83,25 @@ public class NetworkHandler implements Runnable{
|
||||
|
||||
while(running)
|
||||
{
|
||||
DatagramPacket pckg = new DatagramPacket(receive, receive.length);
|
||||
DatagramPacket receivePacket = new DatagramPacket(receive, receive.length);
|
||||
try {
|
||||
udp.receive(pckg);
|
||||
udp.receive(receivePacket);
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
String sentence = new String( receivePacket.getData());
|
||||
System.out.println("RECEIVED: " + sentence);
|
||||
|
||||
String str = new String(pckg.getData());
|
||||
System.out.println(str);
|
||||
String[] controls = sentence.split("\\|");
|
||||
for(int i = 0; i < 7; i++){
|
||||
if(Integer.parseInt(controls[i]) != ButtonHandler.getButton(i).pressed)
|
||||
{
|
||||
System.out.println("PRESS BITCH " + controls[i]);
|
||||
ButtonHandler.getButton(i).pressed = Integer.parseInt(controls[i]);
|
||||
if(Integer.parseInt(controls[i]) == 0)
|
||||
bth.buttonPress(ButtonHandler.getButton(i));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -3,21 +3,23 @@ package control.button;
|
||||
import java.awt.Color;
|
||||
|
||||
import main.Window;
|
||||
import control.LedHandler;
|
||||
import control.NetworkHandler;
|
||||
|
||||
public class Button {
|
||||
|
||||
Color color;
|
||||
int ledID;
|
||||
int buttonID;
|
||||
LedHandler led;
|
||||
NetworkHandler ntw;
|
||||
public int pressed;
|
||||
|
||||
public Button(int buttonID, int ledID, LedHandler led)
|
||||
public Button(int buttonID, int ledID, NetworkHandler ntw)
|
||||
{
|
||||
color = new Color(255,255,255);
|
||||
this.ledID = ledID;
|
||||
this.buttonID = buttonID;
|
||||
this.led = led;
|
||||
this.ntw = ntw;
|
||||
pressed = 1;
|
||||
setLed();
|
||||
}
|
||||
|
||||
@@ -25,8 +27,8 @@ public class Button {
|
||||
{
|
||||
if(Window.ON_RASP)
|
||||
{
|
||||
led.setLed(ledID, color.getGreen(), color.getRed(), color.getBlue());
|
||||
led.show();
|
||||
ntw.setLed(ledID, color.getGreen(), color.getRed(), color.getBlue());
|
||||
ntw.show();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -16,28 +16,20 @@ import com.pi4j.io.gpio.RaspiPin;
|
||||
import com.pi4j.io.gpio.event.GpioPinDigitalStateChangeEvent;
|
||||
import com.pi4j.io.gpio.event.GpioPinListenerDigital;
|
||||
|
||||
import control.LedHandler;
|
||||
import control.NetworkHandler;
|
||||
|
||||
public class ButtonHandler implements KeyListener{
|
||||
|
||||
List<ButtonListener> listeners;
|
||||
static List<Button> buttons;
|
||||
LedHandler led;
|
||||
NetworkHandler ntw;
|
||||
|
||||
public ButtonHandler(LedHandler led)
|
||||
public ButtonHandler()
|
||||
{
|
||||
this.led = led;
|
||||
this.ntw = null;
|
||||
|
||||
listeners = new ArrayList<ButtonListener>();
|
||||
buttons = new ArrayList<Button>();
|
||||
|
||||
buttons.add(new Button(0, -1, led));
|
||||
buttons.add(new Button(1, 2, led));
|
||||
buttons.add(new Button(2, 1, led));
|
||||
buttons.add(new Button(3, 0, led));
|
||||
buttons.add(new Button(4, 3, led));
|
||||
buttons.add(new Button(5, 4, led));
|
||||
buttons.add(new Button(6, 5, led));
|
||||
|
||||
// if (Window.ON_RASP)
|
||||
// addGpioListeners();
|
||||
@@ -81,8 +73,8 @@ public class ButtonHandler implements KeyListener{
|
||||
if(Window.ON_RASP)
|
||||
{
|
||||
Color c = b.getColor().brighter().brighter();
|
||||
led.setLed(b.getLedID(), c.getGreen(), c.getRed(), c.getBlue());
|
||||
led.show();
|
||||
ntw.setLed(b.getLedID(), c.getGreen(), c.getRed(), c.getBlue());
|
||||
ntw.show();
|
||||
}
|
||||
ButtonEvent e = new ButtonEvent(b, System.currentTimeMillis());
|
||||
for (ButtonListener bt : listeners)
|
||||
@@ -92,8 +84,8 @@ public class ButtonHandler implements KeyListener{
|
||||
public void buttonRelease(Button b) {
|
||||
if(Window.ON_RASP)
|
||||
{
|
||||
led.setLed(b.getLedID(), b.getColor().getGreen(), b.getColor().getRed(), b.getColor().getBlue());
|
||||
led.show();
|
||||
ntw.setLed(b.getLedID(), b.getColor().getGreen(), b.getColor().getRed(), b.getColor().getBlue());
|
||||
ntw.show();
|
||||
}
|
||||
ButtonEvent e = new ButtonEvent(b, System.currentTimeMillis());
|
||||
for (ButtonListener bt : listeners)
|
||||
@@ -177,4 +169,16 @@ public class ButtonHandler implements KeyListener{
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public void setNetwork(NetworkHandler ntw) {
|
||||
this.ntw = ntw;
|
||||
|
||||
buttons.add(new Button(0, -1, ntw));
|
||||
buttons.add(new Button(1, 2, ntw));
|
||||
buttons.add(new Button(2, 1, ntw));
|
||||
buttons.add(new Button(3, 0, ntw));
|
||||
buttons.add(new Button(4, 3, ntw));
|
||||
buttons.add(new Button(5, 4, ntw));
|
||||
buttons.add(new Button(6, 5, ntw));
|
||||
}
|
||||
}
|
||||
|
||||
+3
-1
@@ -54,11 +54,13 @@ public class Window extends JFrame {
|
||||
this.setCursor(blankCursor);
|
||||
}
|
||||
|
||||
ButtonHandler bth = new ButtonHandler(led);
|
||||
ButtonHandler bth = new ButtonHandler();
|
||||
JoystickHandler jsh = new JoystickHandler();
|
||||
|
||||
NetworkHandler ntw = new NetworkHandler("192.168.1.6", 1113, bth, jsh);
|
||||
|
||||
bth.setNetwork(ntw);
|
||||
|
||||
//Create Instances
|
||||
final SongHandler sh = new SongHandler();
|
||||
GameStateManager gsm = new GameStateManager(sh);
|
||||
|
||||
Reference in New Issue
Block a user