Pygame中Trivia游戏解析6-4

3.3.3 显示题目选项

在显示题目选项时,有三种情况:分别是用户还未选择答案时;用户的答案是正确时;用户的答案是错误时。

(1)用户还未选择答案时

此时,用白色显示四个备选答案,如图4①所示。

图4 题目选项

其对应的代码如下所示。

python 复制代码
print_text(font1, 5, 170, "ANSWERS")
print_text(font2, 20, 210, "1 - " + self.data[self.current+1], self.colors[0])
print_text(font2, 20, 240, "2 - " + self.data[self.current+2], self.colors[1])
print_text(font2, 20, 270, "3 - " + self.data[self.current+3], self.colors[2])
print_text(font2, 20, 300, "4 - " + self.data[self.current+4], self.colors[3])

其中,self.current是题目内容对应的行数,题目的四个选项分别在该行之后的1-4行。

(2)用户的答案是正确时

当用户的答案是正确时,用绿色字体显示该选项,并且会有绿色字体的提示,如图5①和图5②所示。

图5 答案正确时

通过一下代码实现该功能。

python 复制代码
if self.scored:
    self.colors = [white,white,white,white]
    self.colors[self.correct-1] = green
    print_text(font1, 230, 380, "CORRECT!", green)
    print_text(font2, 170, 420, "Press Enter For Next Question", green)

其中,scored是True时表示答案正确,此时将colors的第self.correct项的颜色变为绿色。变量correct的值是通过如下代码获得的。

self.correct = int(self.data[self.current+5])

其中,current表示当前题目内容在data中的行数,接下来的4行是题目的选项,之后的第5行即为正确答案,如图6所示。

图6 题目格式

(3)用户答案是错误时

当用户的答案是正确时,用绿色字体显示正确选项,红色字体显示用户选择的错误选项,并且会有红色字体的提示,如图7①和图7②所示。

图7 答案错误时

通过一下代码实现该功能。

python 复制代码
elif self.failed:
    self.colors = [white,white,white,white]
    self.colors[self.wronganswer-1] = red
    self.colors[self.correct-1] = green
    print_text(font1, 220, 380, "INCORRECT!", red)
    print_text(font2, 170, 420, "Press Enter For Next Question", red)

当failed是True时,表示答案错误,wronganser表示错误答案,correct表示正确答案。

相关推荐
卡卡_R-Python5 小时前
UCI Heart Disease Data Set—— UCI 心脏病数据集介绍
python·plotly·django·virtualenv·pygame
禾乃儿_xiuer4 天前
《Python制作动态爱心粒子特效》
开发语言·python·生活·pygame·爱心代码·python表白·初学者入门
虞书欣的66 天前
Python小游戏27——飞翔的小鸟
开发语言·人工智能·游戏·pycharm·pygame
虞书欣的68 天前
Python小游戏24——小恐龙躲避游戏
开发语言·python·游戏·小程序·pygame
不太爱喝水10 天前
外星人入侵
开发语言·python·pygame
狂奔solar11 天前
DQN强化训练agent玩是男人就下xx层小游戏
python·pygame·dqn 强化
星和月11 天前
Python——飞机大战
python·pygame
狐凄11 天前
Python练习19
开发语言·python·pygame
虞书欣的611 天前
Python小游戏25——黄金矿工
开发语言·人工智能·游戏·小程序·pygame
其木王·王子12 天前
0. 渲染游戏画面
python·游戏·pygame