from struct import pack, unpack
import sys
import os
import socket
from inputs import get_gamepad, devices
from time import sleep

sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
controllerCount=1
conType=1
gamepadList0keys=1
gamepadList0dx_l=0
gamepadList0dy_l=0
gamepadList0dx_r=0
gamepadList0dy_r=0
twoConType=0
gamepadList1keys=0
gamepadList1dx_l=0
gamepadList1dy_l=0
gamepadList1dx_r=0
gamepadList1dy_r=0
threeConType=0
gamepadList2keys=0
gamepadList2dx_l=0
gamepadList2dy_l=0
gamepadList2dx_r=0
gamepadList2dy_r=0
server_address=(sys.argv[1], 8000)

loopy=True

while(loopy):
    print(pack("<HHHQiiiiHQiiiiHQiiii", 0x3276, controllerCount, conType, gamepadList0keys, gamepadList0dx_l, gamepadList0dy_l, gamepadList0dx_r, gamepadList0dy_r ,twoConType,gamepadList1keys,gamepadList1dx_l,gamepadList1dy_l,gamepadList1dx_r,gamepadList1dy_r,threeConType ,gamepadList2keys,gamepadList2dx_l,gamepadList2dy_l,gamepadList2dx_r, gamepadList2dy_r),server_address)
    sock.sendto(pack("<HHHQiiiiHQiiiiHQiiii", 0x3276, controllerCount, conType, gamepadList0keys, gamepadList0dx_l, gamepadList0dy_l, gamepadList0dx_r, gamepadList0dy_r ,twoConType,gamepadList1keys,gamepadList1dx_l,gamepadList1dy_l,gamepadList1dx_r,gamepadList1dy_r,threeConType ,gamepadList2keys,gamepadList2dx_l,gamepadList2dy_l,gamepadList2dx_r, gamepadList2dy_r),server_address)
    sleep(1/60)
    gamepadList0keys=1
    print(pack("<HHHQiiiiHQiiiiHQiiii", 0x3276, controllerCount, conType, gamepadList0keys, gamepadList0dx_l, gamepadList0dy_l, gamepadList0dx_r, gamepadList0dy_r ,twoConType,gamepadList1keys,gamepadList1dx_l,gamepadList1dy_l,gamepadList1dx_r,gamepadList1dy_r,threeConType ,gamepadList2keys,gamepadList2dx_l,gamepadList2dy_l,gamepadList2dx_r, gamepadList2dy_r),server_address)
    sock.sendto(pack("<HHHQiiiiHQiiiiHQiiii", 0x3276, controllerCount, conType, gamepadList0keys, gamepadList0dx_l, gamepadList0dy_l, gamepadList0dx_r, gamepadList0dy_r ,twoConType,gamepadList1keys,gamepadList1dx_l,gamepadList1dy_l,gamepadList1dx_r,gamepadList1dy_r,threeConType ,gamepadList2keys,gamepadList2dx_l,gamepadList2dy_l,gamepadList2dx_r, gamepadList2dy_r),server_address)
    sleep(10)
#   loopy=False
	
