RE project - trivia game

Shawn Minisall trekker182 at comcast.net
Tue Dec 4 20:10:35 EST 2007


Sorry, 4got to send it in html for the bold parts.

thx

def drawMainMenu(win):
    #define and draw the buttons
    mainMenuList = []
    mainMenuList.append (CreateRect(4,6,7,8,"grey",win))
    mainMenuList.append (CreateRect(3.5,6.5,5,6,"grey",win))
    mainMenuList.append (CreateRect(3.5,6.5,3,4,"grey",win))
    mainMenuList.append (CreateRect(3.1,7,1,2,"grey",win))
    mainMenuList.append (CreateRect(8,10,0,1,"grey",win))

    #define and draw the main menu
    mainMenuList.append (CreateText(5,9.5,"MAIN MENU","times roman", 30, 
"normal", "red",win))
    mainMenuList.append (CreateText(2,8.5,"Please pick a subject from 
below: ","times roman", 14, "normal", "purple",win))
    mainMenuList.append (CreateText(5,7.5,"MATH","times roman", 28, 
"italic", "blue",win))
    mainMenuList.append (CreateText(5,5.5,"SCIENCE","times roman", 28, 
"italic", "yellow",win))
    mainMenuList.append (CreateText(5,3.5,"HISTORY","times roman", 28, 
"italic", "pink",win))
    mainMenuList.append (CreateText(5,1.5,"GEOGRAPHY","times roman", 28, 
"italic", "green",win))
    mainMenuList.append (CreateText(9,.5,"Quit","times roman", 20, 
"italic", "black",win))

    return(mainMenuList)
   
def UndrawMenu (menulist):
    for i in range(len(menulist)):
        menulist[i].undraw()

  
def CreateText(x,y,myString,myFace,mySize, myStyle, myColor,win):
    myText = Text(Point(x,y), myString)
    myText.setFace(myFace)
    myText.setSize(mySize)
    myText.setStyle(myStyle)
    myText.setTextColor(myColor)
    myText.draw(win)
    return myText

def CreateRect(x1,x2,y1,y2,myFill,win):
    myRect = Rectangle(Point(x1,y1,), Point(x2,y2))
    myRect.setFill(myFill)
    myRect.draw(win)
    return myRect

def isValidClick(x1,x2, y1, y2, p1, win):
    if p1.getX()>=x1 and p1.getY()>=y1 and p1.getX()<=x2 and p1.getY()<=y2:
        return True
    else:
        return False

def drawQuestion (subject, question, answers, win):
    menuList = []

    #define and draw the entry boxes
    entchoice = Entry(Point(6.4,6.5), 1)
    entchoice.setText("A")
    entchoice.setTextColor ("blue")
    entchoice.draw(win)
   
    menuList.append(entchoice)
    menuList.append(CreateText(5,9.5,question,"times roman", 18, 
"normal", "red",win))
    menuList.append(CreateText(2,8.5,"A. " + answers[0],"times roman", 
16, "normal", "purple",win))
    menuList.append(CreateText(7.5,8.5,"B. " + answers[1],"times roman", 
16, "normal", "purple",win))
    menuList.append(CreateText(2,7.5,"C. " + answers[2],"times roman", 
16, "normal", "purple",win))
    menuList.append(CreateText(7.5,7.5,"D. " + answers[3],"times roman", 
16, "normal", "purple",win))
    menuList.append(CreateText(4.7,6.5,"Please enter your 
choice:","times roman", 16, "normal", "purple",win))

    #draw answer box and text
    answerButton = Rectangle(Point(7,5.5), Point(3,4))
    answerButton.setFill("grey")
    answerButton.draw(win)
    answerButton = Text(Point(5,4.8),"Answer")
    answerButton.setTextColor("black")
    answerButton.setSize(22)
    answerButton.draw(win)
    menuList.append(answerButton)

    return(menuList)  
 

def main():

    #Declare and initialize variables



    #make math question list
    mathlist = []
    question = ["An equilateral triangle has how many sides?", "3", "4" 
, "1", "5"]
    mathlist.append(question)
    question = ["How many inches are in a foot?", "12", "6", "3", "9"]
    mathlist.append(question)
    question = ["One Kilogram equals how many grams?", "1000", "230", 
"450", "100"]
    mathlist.append(question)
    question = ["Which means nine hundred sixty three thousandths?", 
".963", ".0963", ".0.0963", "9.63"]
    mathlist.append(question)
    question = ["A fathom is a unit of measurement for which of the 
following?", "depth", "space", "time", "distance"]
    mathlist.append(question)
    question = ["What is 111, plus 112, plus 113?", "336", "332", "331", 
"333"]
    mathlist.append(question)
   
    #show the rules of the game window
    win = GraphWin("RULES OF THE GAME",600,600)
    win.setBackground("orange")
    win.setCoords(0.0,0.0,10.0,10.0)

    txtrules1 = CreateText(5,9.5,"The rules of the game are as 
follows:","times roman", 16, "normal", "red",win)
    txtrules2 = CreateText(5,8.5,"The game will be made up of 10 
questions, 2 from each grade 1-5.","times roman", 12, "normal", "black",win)
    txtrules3 = CreateText(5,7.5,"You will be able to pick 2 subjects 
you want to answer for each grade.","times roman", 12, "normal", 
"black",win)
    txtrules4 = CreateText(5,6.5,"The subjects you can pick from are 
Math, Science, History and Geography.","times roman", 12, "normal", 
"black",win)
    txtrules5 = CreateText(5,5.5,"No more then 3 questions can be 
answered from each subject.","times roman", 12, "normal", "black",win)
    txtrules6 = CreateText(5,2.5,"HAVE FUN AND GOOD LUCK!","times 
roman", 26, "normal", "yellow",win)


    #define window and set coords
    win =GraphWin("Are You Smarter Then a Fifth Grader???",800,800)
    win.setBackground("orange")
    win.setCoords(0.0,0.0,10.0,10.0)
    mainMenuList = drawMainMenu(win)



    #getMouse
    p1 = win.getMouse()
    while(isValidClick(8,10,0,1,p1,win)==False):
        if (isValidClick(4,6,7,8,p1,win)==True):
            currentList = mathlist
            subject = "Math"

        elif (isValidClick(3.5,6.5,5,6,p1,win)==True):
            UndrawMenu(mainMenuList)

        elif (isValidClick(3.5,6.5,3,4,p1,win)==True):
            UndrawMenu(mainMenuList)

        elif (isValidClick(3.1,7,1,2,p1,win)==True):
            UndrawMenu(mainMenuList)

        UndrawMenu(mainMenuList)
*
        #Picks random question
        qNum = randrange(0, len(currentList))
        qList = currentList[qNum]

        aList = []
        tmpList = qList[1:5]

        #Randomizes answers
        while(len(tmpList) > 0):
            rNum = randrange(0, len(tmpList))
            aList.append(tmpList[rNum])
            tmpList.pop(rNum)
*
        currentScreen = drawQuestion(subject, qList[0], aList, win)
        currentList.pop(qNum)

        #getMouse
        p1 = win.getMouse()
        while(isValidClick(7,3,5.5,4,p1,win)==True):
            print "hello"


*        pResult = (currentScreen[0].getText())
        print pResult

        cResult = (currentScreen[2].getText())
        print cResult*

        #compare player's answer to correct answer
        #if correct/incorrect do a print statement
        #add/take away from score
       
        UndrawMenu(currentScreen)
       

    #Quit
    win.close()
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20071204/7e596869/attachment.html>


More information about the Python-list mailing list