bool win; bool draw; bool paper = false; bool rock = false; bool s = false; string object; string cpuObject; string rpsMessage = "PRIVMSG " + tchannel + " :Please choose an object (Scissors, Rock, or Paper)."; string end = "\r\n"; string theSender = getSender(string(buf)); string complete = rpsMessage + end; send(sockfd, complete.c_str(), strlen(complete.c_str()), 0); int random = rand() % 9 + 1; cout << "RANDOM NUMBER: " << random << endl; if(random <= 3) { cpuObject = "Rock"; } else if(random >= 4 && random < 6) { cpuObject = "Scissors"; } else if(random >= 6) { cpuObject = "Paper"; } string newSender; while(paper == false && rock == false && s == false) { recv(sockfd, buf, MAXDATASIZE-1, 0); newSender = getSender(string(buf)); if((strstr(buf, "Paper") != NULL) && (newSender == theSender)) { paper = true; object = "Paper"; } else if((strstr(buf, "Rock") != NULL) && (newSender == theSender)) { rock = true; object = "Rock"; } else if((strstr(buf, "Scissors") != NULL) && (newSender == theSender)) { s = true; object = "Scissors"; } } rpsMessage = "PRIVMSG " + tchannel + " :You're object is " + object + ", my object is " + cpuObject; if(paper == true && cpuObject == "Rock") { rpsMessage = rpsMessage + " ... You win!" + end; } else if(rock == true && cpuObject == "Scissors") { rpsMessage = rpsMessage + "... You win!" + end; } else if(s == true && cpuObject == "Paper") { rpsMessage = rpsMessage + " ... You win!" + end; } else if(cpuObject == object) { rpsMessage = rpsMessage + " ... DRAW!" + end; } else { rpsMessage = rpsMessage + " ... I win!" + end; } send(sockfd, rpsMessage.c_str(), strlen(rpsMessage.c_str()), 0);