当前位置: 首页 > news >正文

用户交互----进入游戏

一、增加交互----点击和拖动

1、点击鼠标画点的程序

设置

import pygame                           # Setup
pygame.init()
screen = pygame.display.set_mode([800,600])
pygame.display.set_caption("单击画圆点")
keep_going = True
RED = (255,0,0)                         # RGB color triplet for RED
radius = 15

在游戏循环中处理鼠标点击事件 

while keep_going:                       # Game loopfor event in pygame.event.get():    # Handling events if event.type == pygame.QUIT: keep_going = Falseif event.type == pygame.MOUSEBUTTONDOWN:spot = event.pospygame.draw.circle(screen, RED, spot, radius)

更新屏幕以及退出时要干嘛并整合 

# ClickDots.py
import pygame                           # Setup
pygame.init()
screen = pygame.display.set_mode([800,600])
pygame.display.set_caption("单击画圆点")
keep_going = True
RED = (255,0,0)                         # RGB color triplet for RED
radius = 15
while keep_going:                       # Game loopfor event in pygame.event.get():    # Handling events if event.type == pygame.QUIT: keep_going = Falseif event.type == pygame.MOUSEBUTTONDOWN:spot = event.pospygame.draw.circle(screen, RED, spot, radius)pygame.display.update()             # Update displaypygame.quit()                           # Exit

2、拖动绘制连续的圆点的程序

拖动的特点是鼠标在按下的同时鼠标在移动。

该程序的总体结构与上面相同,故直接给出代码:

# DragDots.py
import pygame                           # Setup
pygame.init()
screen = pygame.display.set_mode([800,600])
pygame.display.set_caption("Click and drag to draw")
keep_going = True
YELLOW = (255,255,0)                    # RGB color triplet for YELLOW
radius = 15
mousedown = False
while keep_going:                       # Game loopfor event in pygame.event.get():    # Handling eventsif event.type == pygame.QUIT: keep_going = Falseif event.type == pygame.MOUSEBUTTONDOWN:mousedown = Trueif event.type == pygame.MOUSEBUTTONUP:mousedown = Falseif mousedown:                       # Draw/update graphicsspot = pygame.mouse.get_pos()pygame.draw.circle(screen, YELLOW, spot, radius)pygame.display.update()             # Update displaypygame.quit()                           # Exit

二、高级交互----笑脸爆炸

1、笑脸精灵

2、设置精灵

3、更新精灵

4、较大和较小的笑脸

5、整合

三、SmileyPop1.0版

1、检测碰撞和删除精灵

2、整合

四、本章小结

五、编程挑战

http://www.lryc.cn/news/94991.html

相关文章:

  • 排序算法 - 快速排序(4种方法实现)
  • C++入门知识点
  • 开眼界了,AI绘画商业化最强玩家是“淘宝商家”
  • 机器学习与深度学习——自定义函数进行线性回归模型
  • 大屏项目也不难
  • c#webclient请求中经常出现的几种异常
  • 设计模式-原型模式
  • sentinel介绍-分布式微服务流量控制
  • 基于Redisson的Redis结合布隆过滤器使用
  • BrowserRouter刷新404解决方案
  • 解决appium-doctor报opencv4nodejs cannot be found
  • 安卓通过adb pull和adb push 手机与电脑之间传输文件
  • java常用的lambda表达式总结
  • 分布式应用之zookeeper集群+消息队列Kafka
  • GStreamer学习笔记(四)
  • DBeaver连接华为高斯数据库 DBeaver连接Gaussdb数据库 DBeaver connect Gaussdb
  • .net core 2.1 简单部署IIS运行
  • 提高视觉检测系统稳定性的隐藏办法——10G高速图像采集卡
  • 注解方式实现数据库字段加密与解密
  • C\C++ 使用socket判断ip是否能连通
  • 数学建模-相关系数
  • Ubuntu下安装、配置及重装CUDA教程
  • 自学网络安全(黑客)为什么火了?
  • Android S 修改关于手机的logo
  • Mysql 备份与还原
  • Cadence PCB 仿真Model Integrity专题
  • 记一次阿里云被挖矿处理记录
  • Linux系统使用(超详细)
  • 【问题总结】Docker环境下备份和恢复postgresql数据库
  • 《TCP IP网络编程》第六章