ok so im making a simon says game with 4 different colored squares and right now all im doing is detecting when you click on a box or hover over it cause when i hover over the box i want it to darken cause that makes it look more like a button but the problem i have is that when i start the program the upper right box (blue) is dark and when i move my mouse over it it becomes light and when i move it over the red box the blue box darkens even though the function im using to deteck click is telling me that IT IS red so aaaa idk what to do, last time i had a problme it was changing one character so i dont know if i made a really dumb mistake or if i should just abandan the project. anyway, thanks
from gettext import find
import pygame
import time
import sys
pygame.init()
score = 0
#(width/2-(margin*2)),(height/2-(margin*2))
def findColor():
mouse = pygame.mouse.get_pos()
if mouse[0] >=margin and mouse[0]<= (width/2-(margin*2)+margin):
#first column
if mouse[1] >= margin and mouse[1] <= (height/2-(margin*2)+margin):
return "red"
else:return "green"
elif mouse[1] >= margin and mouse[1] <= (height/2-(margin*2)+margin):
return "blue"
else:return "yellow"
width,height = 690,690
window = pygame.display.set_mode((width,height))
pygame.display.set_caption("Score: "+str(score))
width = 700
height = 700
def drawRect(color,x,y,width,height):
pygame.draw.rect(window, color, pygame.Rect(x, y, width, height))
margin = 10
boxSizeX = (width/2-(margin*2))
boxSizeY = (height/2-(margin*2))
red=(255,0,0)
dred=(200,0,0)
black =(0,0,0)
blue = (0,0,255)
dblue = (0,0,200)
green = (0,255,0)
dgreen = (0,200,0)
yellow = (255,255,0)
##redBox = {"x":boxSizeX,"y":boxSizeY,"color":red}
#blueBox = {"x":boxSizeX,"y":boxSizeY,"color":blue}
# keep game running till running is true
run = True
while run:
for event in pygame.event.get():
# if event is of type quit then set
# running bool to false
if event.type == pygame.QUIT:
run = False
if event.type == pygame.MOUSEBUTTONDOWN:
print(findColor())
score+=1
pygame.display.set_caption("Score: "+str(score))
#print(mouse[0]," ",mouse[1])
window.fill(black)
#red
if findColor() == "red":
drawRect(dred,margin,margin,(width/2-(margin*2)),(height/2-(margin*2)))
else:
drawRect(red,margin,margin,(width/2-(margin*2)),(height/2-(margin*2)))
#blue
if findColor() == "blue":
drawRect(blue,350,margin,(width/2-(margin*2)),(height/2-(margin*2)))
else:
drawRect(dblue,350,margin,(width/2-(margin*2)),(height/2-(margin*2)))
#green
if findColor() == "green":
drawRect(dgreen,margin,350,(width/2-(margin*2)),(height/2-(margin*2)))
else: drawRect(green,margin,350,(width/2-(margin*2)),(height/2-(margin*2)))
#yellow
drawRect(yellow,350,350,(width/2-(margin*2)),(height/2-(margin*2)))
# Update our window
pygame.display.flip()
pygame.quit()