用户:
温顺的彗星猫W5pw查看:0 回复:5 评论:0 创建时间:2023-03-04T23:07:58
【作品展示】

【作品介绍】
这是我制作以来最麻烦的作品。
【作品源代码】
import easygui
import ybc_speech as sp
import ybc_box as box
import random
choose = box.buttonbox('你们有多少人?',['3人','4人','5人'])
if (choose == '3人'):
users = ['狼人', '平民', '平民']
users2 = ['1号', '2号', '3号']
random.shuffle(users)
sp.speak('请1号来!')
easygui.msgbox('你好1号!')
easygui.msgbox(('你是' + users[0]))
sp.speak('请2号来!')
easygui.msgbox('你好2号!')
easygui.msgbox(('你是' + users[1]))
sp.speak('请3号来!')
easygui.msgbox('你好3号!')
easygui.msgbox(('你是' + users[2]))
sp.speak('开始投票!')
one = 0
two = 0
three = 0
sp.speak('请1号来投票!')
a = box.buttonbox('投给谁?',users2)
if (a == '1号'):
one = (one + 1)
elif (a == '2号'):
two = (two + 1)
elif (a == '3号'):
three = (three + 1)
else:
pass
sp.speak('请2号来投票!')
b = box.buttonbox('投给谁?',users2)
if (b == '1号'):
one = (one + 1)
elif (b == '2号'):
two = (two + 1)
elif (b == '3号'):
three = (three + 1)
else:
pass
sp.speak('请3号来投票!')
c = box.buttonbox('投给谁?',users2)
if (c == '1号'):
one = (one + 1)
elif (c == '2号'):
two = (two + 1)
elif (c == '3号'):
three = (three + 1)
else:
pass
if (one >= 2):
sp.speak('1号出局,他是' + users[0])
if (users[1] == '狼人'):
sp.speak('2号是狼人!狼人胜利!')
elif (users[2] == '狼人'):
sp.speak('3号是狼人!狼人胜利!')
else:
sp.speak('平民胜利!')
elif (two >= 2):
sp.speak('2号出局,他是' + users[1])
if (users[0] == '狼人'):
sp.speak('1号是狼人!狼人胜利!')
elif (users[2] == '狼人'):
sp.speak('3号是狼人!狼人胜利!')
else:
sp.speak('平民胜利!')
elif (three >= 2):
sp.speak('3号出局,他是' + users[2])
if (users[0] == '狼人'):
sp.speak('1号是狼人!狼人胜利!')
elif (users[1] == '狼人'):
sp.speak('2号是狼人!狼人胜利!')
else:
sp.speak('平民胜利!')
else:
sp.speak('平局!')
if (users[0] == '狼人'):
sp.speak('1号是狼人!')
elif (users[1] == '狼人'):
sp.speak('2号是狼人!')
elif (users[2] == '狼人'):
sp.speak('3号是狼人!')
else:
pass
elif (choose == '4人'):
users = ['狼人', '平民', '平民', '平民']
users2 = ['1号', '2号', '3号', '4号']
random.shuffle(users)
users1 = users
sp.speak('请1号来!')
easygui.msgbox('你好1号!')
easygui.msgbox(('你是' + users[0]))
sp.speak('请2号来!')
easygui.msgbox('你好2号!')
easygui.msgbox(('你是' + users[1]))
sp.speak('请3号来!')
easygui.msgbox('你好3号!')
easygui.msgbox(('你是' + users[2]))
sp.speak('请4号来!')
easygui.msgbox('你好4号!')
easygui.msgbox(('你是' + users[3]))
while True:
if (len(users2) == 2):
sp.speak('狼人胜利!')
break
sp.speak('开始投票!')
one = 0
two = 0
three = 0
four = 0
if ('1号' in users2):
sp.speak('请1号来投票!')
a = box.buttonbox('投给谁?',users2)
if (a == '1号'):
one = (one + 1)
elif (a == '2号'):
two = (two + 1)
elif (a == '3号'):
three = (three + 1)
elif (a == '4号'):
four = (four + 1)
else:
pass
if ('2号' in users2):
sp.speak('请2号来投票!')
b = box.buttonbox('投给谁?',users2)
if (b == '1号'):
one = (one + 1)
elif (b == '2号'):
two = (two + 1)
elif (b == '3号'):
three = (three + 1)
elif (b == '4号'):
four = (four + 1)
else:
pass
if ('3号' in users2):
sp.speak('请3号来投票!')
c = box.buttonbox('投给谁?',users2)
if (c == '1号'):
one = (one + 1)
elif (c == '2号'):
two = (two + 1)
elif (c == '3号'):
three = (three + 1)
elif (c == '4号'):
four = (four + 1)
else:
pass
if ('4号' in users2):
sp.speak('请4号来投票!')
d = box.buttonbox('投给谁?',users2)
if (d == '1号'):
one = (one + 1)
elif (d == '2号'):
two = (two + 1)
elif (d == '3号'):
three = (three + 1)
elif (d == '4号'):
four = (four + 1)
else:
pass
if (one >= 2):
sp.speak('1号出局,他是' + users1[0])
if (users[0] == '狼人'):
sp.speak('平民胜利!')
break
else:
users2.remove('1号')
if (two >= 2):
sp.speak('2号出局,他是' + users1[1])
if (users[1] == '狼人'):
sp.speak('平民胜利!')
break
else:
users2.remove('2号')
if (three >= 2):
sp.speak('3号出局,他是' + users1[2])
if (users[2] == '狼人'):
sp.speak('平民胜利!')
break
else:
users2.remove('3号')
if (four >= 2):
sp.speak('4号出局,他是' + users[3])
if (users[3] == '狼人'):
sp.speak('平民胜利!')
break
else:
users2.remove('4号')
elif (choose == '5人'):
users = ['狼人', '平民', '平民', '平民', '猎人']
users2 = ['1号', '2号', '3号', '4号', '5号']
dic = {'1号': users[0], '2号': users[1], '3号': users[2], '4号': users[3], '5号': users[4]}
random.shuffle(users)
users1 = users
sp.speak('请1号来!')
easygui.msgbox('你好1号!')
easygui.msgbox(('你是' + users[0]))
sp.speak('请2号来!')
easygui.msgbox('你好2号!')
easygui.msgbox(('你是' + users[1]))
sp.speak('请3号来!')
easygui.msgbox('你好3号!')
easygui.msgbox(('你是' + users[2]))
sp.speak('请4号来!')
easygui.msgbox('你好4号!')
easygui.msgbox(('你是' + users[3]))
sp.speak('请5号来!')
easygui.msgbox('你好5号!')
easygui.msgbox(('你是' + users[4]))
while True:
if (len(users2) <= 2 and ('狼人' in users)):
sp.speak('狼人胜利!')
break
sp.speak('开始投票!')
one = 0
two = 0
three = 0
four = 0
five = 0
if ('1号' in users2):
sp.speak('请1号来投票!')
a = box.buttonbox('投给谁?',users2)
if (a == '1号'):
one = (one + 1)
elif (a == '2号'):
two = (two + 1)
elif (a == '3号'):
three = (three + 1)
elif (a == '4号'):
four = (four + 1)
elif (a == '5号'):
five = (five + 1)
else:
pass
if ('2号' in users2):
sp.speak('请2号来投票!')
b = box.buttonbox('投给谁?',users2)
if (b == '1号'):
one = (one + 1)
elif (b == '2号'):
two = (two + 1)
elif (b == '3号'):
three = (three + 1)
elif (b == '4号'):
four = (four + 1)
elif (b == '5号'):
five = (five + 1)
else:
pass
if ('3号' in users2):
sp.speak('请3号来投票!')
c = box.buttonbox('投给谁?',users2)
if (c == '1号'):
one = (one + 1)
elif (c == '2号'):
two = (two + 1)
elif (c == '3号'):
three = (three + 1)
elif (c == '4号'):
four = (four + 1)
elif (c == '5号'):
five = (five + 1)
else:
pass
if ('4号' in users2):
sp.speak('请4号来投票!')
d = box.buttonbox('投给谁?',users2)
if (d == '1号'):
one = (one + 1)
elif (d == '2号'):
two = (two + 1)
elif (d == '3号'):
three = (three + 1)
elif (d == '4号'):
four = (four + 1)
elif (d == '5号'):
five = (five + 1)
else:
pass
if ('5号' in users2):
sp.speak('请5号来投票!')
e = box.buttonbox('投给谁?',users2)
if (e == '1号'):
one = (one + 1)
elif (e == '2号'):
two = (two + 1)
elif (e == '3号'):
three = (three + 1)
elif (e == '4号'):
four = (four + 1)
elif (e == '5号'):
five = (five + 1)
else:
pass
if (one >= 2):
sp.speak('1号出局,他是' + users1[0])
if (users1[0] == '狼人'):
sp.speak('平民胜利!')
break
else:
users2.remove('1号')
if (users1[0] == '猎人'):
users.remove('猎人')
sp.speak('1号,请选择一个人和你同归于尽!')
choose2 = box.buttonbox('你要和谁同归于尽?',users2)
if (dic[choose2] == '狼人'):
sp.speak('猎人和'+ choose2 + '同归于尽,他是狼人!')
sp.speak('平民胜利!')
break
else:
sp.speak('猎人和'+ choose2 + '同归于尽,他是平民!')
users2.remove(choose2)
users.remove('平民')
else:
users.remove('平民')
if (two >= 2):
sp.speak('2号出局,他是' + users1[1])
if (users1[1] == '狼人'):
sp.speak('平民胜利!')
break
else:
users2.remove('2号')
if (users1[1] == '猎人'):
users.remove('猎人')
sp.speak('2号,请选择一个人和你同归于尽!')
choose2 = box.buttonbox('你要和谁同归于尽?',users2)
if (dic[choose2] == '狼人'):
sp.speak('猎人和'+ choose2 + '同归于尽,他是狼人!')
sp.speak('平民胜利!')
break
else:
sp.speak('猎人和'+ choose2 + '同归于尽,他是平民!')
users2.remove(choose2)
users.remove('平民')
else:
users.remove('平民')
if (three >= 2):
sp.speak('3号出局,他是' + users1[2])
if (users1[2] == '狼人'):
sp.speak('平民胜利!')
break
else:
users2.remove('3号')
if (users1[2] == '猎人'):
users.remove('猎人')
sp.speak('3号,请选择一个人和你同归于尽!')
choose2 = box.buttonbox('你要和谁同归于尽?',users2)
if (dic[choose2] == '狼人'):
sp.speak('猎人和'+ choose2 + '同归于尽,他是狼人!')
sp.speak('平民胜利!')
break
else:
sp.speak('猎人和'+ choose2 + '同归于尽,他是平民!')
users2.remove(choose2)
users.remove('平民')
else:
users.remove('平民')
if (four >= 2):
sp.speak('4号出局,他是' + users1[3])
if (users1[3] == '狼人'):
sp.speak('平民胜利!')
break
else:
users2.remove('4号')
if (users1[3] == '猎人'):
users.remove('猎人')
sp.speak('4号,请选择一个人和你同归于尽!')
choose2 = box.buttonbox('你要和谁同归于尽?',users2)
if (dic[choose2] == '狼人'):
sp.speak('猎人和'+ choose2 + '同归于尽,他是狼人!')
sp.speak('平民胜利!')
break
else:
sp.speak('猎人和'+ choose2 + '同归于尽,他是平民!')
users2.remove(choose2)
users.remove('平民')
else:
users.remove('平民')
if (five >= 2):
sp.speak('5号出局,他是' + users1[3])
if (users1[3] == '狼人'):
sp.speak('平民胜利!')
break
else:
users2.remove('5号')
if (users1[3] == '猎人'):
users.remove('猎人')
sp.speak('5号,请选择一个人和你同归于尽!')
choose2 = box.buttonbox('你要和谁同归于尽?',users2)
if (dic[choose2] == '狼人'):
sp.speak('猎人和'+ choose2 + '同归于尽,他是狼人!')
sp.speak('平民胜利!')
break
else:
sp.speak('猎人和'+ choose2 + '同归于尽,他是平民!')
users2.remove(choose2)
users.remove('平民')
else:
users.remove('平民')
else:
pass
【提示】
部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:
https://python.codemao.cn