예제 #1
0
 def run(self):
     icon = image.load("Icon.png")
     display.set_icon(icon)
     self.__window = display.set_mode(SIZE)
     display.set_caption("Twenty Nine")
     self.__window.fill(COLOURS.get('BOARD'))
     display.flip()
     while True:
         r, w, x = select(self.__read, self.__write, self.__error, 0)
         for f in r:
             if f is self.__listener:
                 data = receive(f)
                 if data:
                     print data
                     if data[0] == "ID":
                         self.__ID = int(data[1])
                     if data[0] == "Cards":
                         print data[1]
         event = pyevent.poll()
         if event.type == QUIT:
             self.__Quit()
             break
         elif event.type == KEYDOWN:
             if event.key == K_ESCAPE:
                 self.__Quit()
                 break
             else:
                 send(self.__listener, chr(event.key))
         elif event.type == MOUSEBUTTONDOWN:
             print event
예제 #2
0
파일: main.py 프로젝트: Zantyr/Varia
def main():
    global DEFAULTSCRIPT, ASKFORFILE, MODESELECT, DEFAULTMODE, doIWannaListen, doIWannaLocal
    Menu()
    if doIWannaListen:
        script.server()
    else:
        if ASKFORFILE: filename = raw_input("Gimme da filnaem, n***a: ")
        else: filename = DEFAULTSCRIPT
        if doIWannaLocal:
            script.functions["!zapytaj"] = script.localGet
            script.functions["!wyjeb"] = script.localOut
            with open(filename, "r") as f**k:
                sendable = f**k.read()
            script.run(script.parseFile(sendable))
        else:
            Lnr = connect.createClient()
            with open(filename, "r") as f**k:
                sendable = f**k.read()
                connect.send(Lnr, sendable)
            print "\n\n>> File sent"
            while 1:
                data = connect.listen(Lnr)
                if (data == "CLOSE"): break
                if (data): script.localRun(Lnr, data)
                else: sleep(1)
            connect.shutdownListener(Lnr)
    return
예제 #3
0
def localRun(conn,strIN):
	if(re.match("PROMPT (.*)",strIN)):
		send(conn,raw_input(re.match("PROMPT (.*)",strIN).group(1)))
	if(re.match("PRINT (.*)",strIN)):
		print re.match("PROMPT (.*)",strIN).group(1)
	if(re.match("FSEND ([^ ]*) #([0-9a-f]*)",strIN)):
		pass #to be written, saving function
	if(re.match("FGET ([^ ]*)",strIN)):
		pass #to be written, getting function
	return
예제 #4
0
 def __AddPlayer(self, source, nick):
     num_players = len(self.__players) or 0
     if num_players == 4:
         send(source, ('Error', "4 players already connected."))
         self.__read.remove(source)
         source.close()
         return
     i = 0
     while self.__players.get(i):
         i += 1
     gamer = player(nick, source.getpeername())
     self.__players[i] = gamer
     send(source, ('ID', i))
예제 #5
0
	def createTags(self):
		payload  = "Action=CreateTags" 
		payload += "&ResourceId.1=" + self.instance_id
		payload += "&Tag.1.Key=Name" 
		payload += "&Tag.1.Value=" + self.name
		payload += "&Tag.2.Key=ENV" 
		payload += "&Tag.2.Value=" + self.env
		payload += "&Tag.3.Key=ROLE" 
		payload += "&Tag.3.Value=" + self.role
		r=send(payload)
예제 #6
0
 def __Bidding(self):
     piles, bids, bidding = self.CreatePile(), [], True
     for i in range(1, 5):
         s, p = self.__read[i], piles.pop()
         x = [y.Compile() for y in p]
         print s.getpeername(), x
         send(s, ('Cards', x))
     while bidding:
         r, w, x = select(self.__read, self.__write, self.__error, 0)
         for s in r:
             if s is self.__listener:
                 self.__AddClient(s)
             else:
                 data = receive(s)
                 if data:
                     print data, s.getpeername()
                     if self.__MaintainPlayers(s, data):
                         pass
         if len(bids) == 4:
             bidding = False
예제 #7
0
파일: main.py 프로젝트: rainfiel/ejoy2dx
 def Send(self, exp):
     if self.connect:
         data = connect.send(self.connect, exp)
         if data is True:
             pass
         elif data:
             msg = data.get('msg')
             type = data.get('type', 'error')
             if type == 'error' or type == "result":
                 print(msg)
             return msg
예제 #8
0
파일: main.py 프로젝트: rikxqd/ejoy2dx
 def Send(self, exp):
     if self.connect:
         data = connect.send(self.connect, exp)
         if data is True:
             pass
         elif data:
             msg = data.get('msg')
             type = data.get('type', 'error')
             if type == 'error':
                 print(data)
             return msg
예제 #9
0
	def runInstance(self):
		payload  = "Action=RunInstances"
		#payload += "&DryRun=true" ##Debug
		payload += "&ImageId=" + self.image_id
		payload += "&InstanceType=" + self.instance_type
		payload += "&MaxCount=1&MinCount=1"
		r=send(payload)
		instance_output=xmltodict.parse(r)
		self.instance_id=instance_output['RunInstancesResponse']['instancesSet']['item']['instanceId']
		self.checkInstance()
		self.createTags()
		self.createDNS()
예제 #10
0
	def checkInstance(self):
		payload  = "Action=DescribeInstanceStatus"
		payload += "&InstanceId.1=" + self.instance_id ###Search for this one
		print self.instance_status
		while self.instance_status != "16" :
			
			time.sleep(3)
			r=send(payload)
			get_status=xmltodict.parse(r)
			try:
				self.instance_status=get_status['DescribeInstanceStatusResponse']['instanceStatusSet']['item']['instanceState']['code']
			except: 
				continue
예제 #11
0
class client:
    def __init__(self, name, srvIP, srvPort):
        ip = socket.gethostbyname(socket.gethostname())
        self.__gamer = player(name, ip)
        self.__server_address = self.__server_ip, self.__server_port = srvIP, srvPort
        self.__ID = None
        self.__hand = Surface((560, 100))
        self.__panel = Surface((1280, 120))
        self.__SetListener()

    def __SetListener(self):
        self.__listener = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        self.__listener.settimeout(5)
        try:
            self.__listener.connect(self.__server_address)
        except Exception, e:
            print "Unable to connect", e
            raise e
        print "Connected to %s:%d." % self.__server_address
        send(self.__listener, ("Nick", self.__gamer.GetNick()))
        self.__read, self.__write, self.__error = [self.__listener], [], []
예제 #12
0
def onPrediction(results):
    print("got results", results.tolist())
    msg = json.dumps(results.tolist())
    print("Sending message", msg)
    send(msg)
예제 #13
0
 def __AddClient(self, source):
     c, a = source.accept()
     c.settimeout(5)
     self.__read.append(c)
     send(c, ("text", "Welcome!"))
     return
예제 #14
0
 def __Forward(self, source, msg):
     for s in self.__read:
         if s != self.__listener and s != source:
             send(s, msg)
예제 #15
0
파일: builtIn.py 프로젝트: Zantyr/Varia
def get(*args):
    send(IOsets["listener"], "PROMPT " + str(args[0]))
    return  #listen(IOsets["listener"])
예제 #16
0
파일: builtIn.py 프로젝트: Zantyr/Varia
def out(*args):
    send(IOsets["listener"], "PRINT " + str(args[0]))
    return None
예제 #17
0
 def __Quit(self):
     send(self.__listener, ("Quit", self.__ID))
     self.__read.remove(self.__listener)
     self.__listener.close()