在已经创建的正方形上绘制一个圆圈 - pygame
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在已经创建的正方形上绘制一个圆圈 - pygame相关的知识,希望对你有一定的参考价值。
我目前正在尝试在游戏中制作一个游戏棋盘游戏,这需要在棋盘上的正方形中获得棋子然而,当我运行时,只有棋盘会出现,但没有一块。在这个程序中,我只做了一个黑色的碎片,它只是一个普通的黑色圆圈。我想知道是否有人知道如何在已经绘制的方块上绘制圆圈。
def drawPlayer1Circle(row):
if (row<=2):
return True
else:
return False
def drawPlayer2Circle(row):
if (row>=5) and (row%2!=0 and column%2==0) and (row%2!=0 and column%2!=0):
return True
else:
return False
def drawCircle():
pygame.draw.circle(screen,BLACK,[((MARGIN + WIDTH) * column + MARGIN)+xDistanceFromEdge,
(MARGIN + HEIGHT) * row + MARGIN,
WIDTH/2,
HEIGHT/2],WIDTH/2)
def drawBoard(BLACK,WHITE):# Draw the grid
for row in range(8):
for column in range(8):
if row%2==0 and column%2==0:
color = BLACK
if row%2!=0 and column%2==0:
color = WHITE
if drawPlayer1Circle(row)==True:
drawCircle()
if row%2==0 and column%2!=0:
color=WHITE
if row%2!=0 and column%2!=0:
color= BLACK
if drawPlayer1Circle(row)==True:
drawCircle()
pygame.draw.rect(screen,
color,
[((MARGIN + WIDTH) * column + MARGIN)+xDistanceFromEdge,
(MARGIN + HEIGHT) * row + MARGIN,
WIDTH,
HEIGHT])
答案
看起来你正在画板前画圆圈,所以电路板被画在顶部。另外,你应该将row
和column
传递给函数drawCircle
,这段代码正在不必要地重复:
if row%2==0 and column%2==0:
color = BLACK
if row%2!=0 and column%2==0:
color = WHITE
if drawPlayer1Circle(row)==True:
drawCircle()
以上是关于在已经创建的正方形上绘制一个圆圈 - pygame的主要内容,如果未能解决你的问题,请参考以下文章