• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

python表白神器,这是属于程序员的浪漫

python 搞java代码 3年前 (2022-05-21) 17次浏览 已收录 0个评论

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理

一、前言

七夕来临,送给程序员一个变白神器,这是属于我们程序员的浪漫。

二、所用到得库

<span><a href="https://www.gaodaima.com/tag/import" title="查看更多关于import的文章" target="_blank">import</a></span><span> <a href="https://www.gaodaima.com/tag/pygame" title="查看更多关于pygame的文章" target="_blank">pygame</a>
</span><span>import</span><span> random
</span><span>import</span> sys

www#gaodaima.com来源gaodai#ma#com搞@@代~&码网搞代码

 

三、调整界面大小

<span>#</span><span> 根据背景图大小,设置游戏屏幕大小</span>
WIDTH, HEIGHT = 1024, 576
<span>#</span><span> 不全屏</span>
screen = pygame.display.set_mode((WIDTH, HEIGHT), 0, 32<span>)
</span><span>#</span><span> 全屏</span><span>
#</span><span> screen = pygame.display.set_mode((WIDTH, HEIGHT), pygame.FULLSCREEN, 32)</span>
pygame.display.set_caption(<span>"</span><span>小姐姐,你的快递到了。</span><span>"</span>)

 

四、添加界面信息及坐标:

<span>#</span><span> 添加文本信息</span>
<span>def</span> title(text, screen, scale, color=<span>(0, 0, 0)):
    font </span>= pygame.font.SysFont(<span>"</span><span>SimHei</span><span>"</span>, 27<span>)
    textRender </span>=<span> font.render(text, True, color)
    </span><span>#</span><span> 初始化文本的坐标</span>
    screen.blit(textRender, (WIDTH / scale[0], HEIGHT / scale[1<span>]))


</span><span>#</span><span> 按钮</span>
<span>def</span><span> button(text, x, y, w, h, color, screen):
        pygame.draw.rect(screen, color, (x, y, w, h))
        font </span>= pygame.font.SysFont(<span>"</span><span>SimHei</span><span>"</span>, 20<span>)
        textRender </span>= font.render(text, True, (255, 255, 255<span>))
        textRect </span>=<span> textRender.get_rect()
        textRect.center </span>= ((x+w/2), (y+h/2<span>))
        screen.blit(textRender, textRect)


</span><span>#</span><span> 生成随机的位置坐标</span>
<span>def</span><span> get_random_pos():
        x, y </span>= random.randint(10, 600), random.randint(20, 500<span>)
        </span><span>return</span> x, y

 

五、完整代码:

<span>#</span><span> 点击答应按钮后显示的页面</span>
<span>def</span><span> show_like_interface(screen):
    screen.fill((</span>255, 255, 255<span>))
    background1 </span>= pygame.image.load(<span>"</span><span>2.png</span><span>"</span><span>).convert()
    screen.blit(background1, (0, 0))
    pygame.display.update()
    </span><span>while</span><span> True:
        </span><span>for</span> event <span>in</span><span> pygame.event.get():
            </span><span>if</span> event.type ==<span> pygame.QUIT:
                sys.exit()


</span><span>def</span><span> main():
    pygame.init()
    clock </span>=<span> pygame.time.Clock()
    </span><span>#</span><span> 添加背景音乐</span>
    pygame.mixer.music.load(<span>"</span><span>手写的从前-周杰伦.mp3</span><span>"</span><span>)
    pygame.mixer.music.play(</span>-1, 20<span>)
    pygame.mixer.music.set_volume(</span>0.5<span>)
    </span><span>#</span><span> 设置不同意按钮属性</span>
    unlike_pos_x = 130<span>
    unlike_pos_y </span>= 375<span>
    unlike_pos_width </span>= 450<span>
    unlike_pos_height </span>= 55<span>
    unlike_color </span>= (115, 76, 243<span>)
    </span><span>#</span><span> 设置同意按钮属性</span>
    like_pos_x = 130<span>
    like_pos_y </span>= 280<span>
    like_pos_width </span>= 450<span>
    like_pos_height </span>= 55<span>
    like_color </span>= (115, 76, 243<span>)

    running </span>=<span> True
    </span><span>while</span><span> running:
        </span><span>#</span><span> 填充窗口</span>
        screen.fill((255, 255, 255<span>))
        </span><span>#</span><span> 添加背景图</span>
        background = pygame.image.load(<span>"</span><span>1.png</span><span>"</span><span>).convert()
        screen.blit(background, (0, 0))

        </span><span>#</span><span> 获取鼠标坐标</span>
        pos =<span> pygame.mouse.get_pos()
        </span><span>#</span><span> 判断鼠标位置,不同意时,按钮不断变化</span>
        <span>if</span> pos[0] < unlike_pos_x + unlike_pos_width + 5 <span>and</span> pos[0] > unlike_pos_x - 5 <span>and</span> pos[1] < unlike_pos_y + unlike_pos_height + 5 <span>and</span> pos[1] > unlike_pos_y - 5<span>:
            </span><span>while</span><span> True:
                unlike_pos_x, unlike_pos_y </span>=<span> get_random_pos()
                </span><span>if</span> pos[0] < unlike_pos_x + unlike_pos_width + 5 <span>and</span> pos[0] > unlike_pos_x - 5 <span>and</span> pos[1] < unlike_pos_y + unlike_pos_height + 5 <span>and</span> pos[1] > unlike_pos_y - 5<span>:
                    </span><span>continue</span>
                <span>break</span>

        <span>#</span><span> 设置标题及按钮文本信息</span>
        title(<span>"</span><span>1.如果有一天我向你表白,你会怎么样?</span><span>"</span>, screen, scale=[8, 3<span>])
        button(</span><span>"</span><span>A.你小子终于开窍了,你敢表白我就敢答应!</span><span>"</span><span>, like_pos_x, like_pos_y, like_pos_width, like_pos_height, like_color, screen)
        button(</span><span>"</span><span>B.我拿你当闺蜜,你居然想睡我!果断同意!</span><span>"</span><span>, unlike_pos_x, unlike_pos_y, unlike_pos_width, unlike_pos_height, unlike_color, screen)
        </span><span>#</span><span> 设置关闭选项属性</span>
        <span>for</span> event <span>in</span><span> pygame.event.get():
            </span><span>if</span> event.type ==<span> pygame.QUIT:
                sys.exit()
        </span><span>#</span><span> 当鼠标点击同意按钮后,跳转结束页面</span>
        <span>if</span> pos[0] < like_pos_x + like_pos_width + 5 <span>and</span> pos[0] > like_pos_x - 5 <span>and</span> pos[1] < like_pos_y + like_pos_height + 5 <span>and</span> pos[1] > like_pos_y - 5<span>:
            </span><span>if</span> event.type ==<span> pygame.MOUSEBUTTONDOWN:
                show_like_interface(screen)

        pygame.display.flip()
        pygame.display.update()
        clock.tick(</span>60<span>)


main()</span>

 


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:python表白神器,这是属于程序员的浪漫
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址