#print "Your turn:" else: pass #print "Waiting for " + whosTurn def generateDeck(): for suit in range(3,7): for card in range(1,14): deck.append((suit,card)) #= MainCode start_new_thread(processSocket, ()) #read from database database.initialize(traffic.getIP()) userList = database.getGlobalList() #greet users in database traffic.sendText(GREET, userList) print "my IP is " + myIP while True: if gameStarted: if players[turn] == myIP: state = MY_TURN else: state = WAITING_FOR_TURN if state == WAITING_FOR_GAME: print "Waiting for players to join..." #print "I think server is " + server action = raw_input() processAction(action) elif state == MY_TURN:
prompt = "Please enter a nickname: " myNick = sleepPrompt(prompt) msgLog.append(prompt + myNick) else: returnString = "Welcome back, " + myNick printMsg(returnString) msgLog.append(returnString) # Make sure nickname is long enough if len(myNick) < 3: errorMsg = "Nickname must be longer than 2 characters. Defaulting to IP." printMsg(errorMsg) msgLog.append(errorMsg) myNick = LOCAL_IP # Store nickname if myNick != dbNick: database.setNick(myNick) peers[LOCAL_IP] = myNick # Start listening to peers and managing heartbeats start_new_thread(processMessage, ()) start_new_thread(manageHeartbeat, ()) start_new_thread(handleUser, ()) # Ask for active peers sendStatus(traffic.GREET, ips=database.getGlobalList()) # must be in main thread (according to testing, not theory) opsys.runPopup() #handle popup notifications