pgzrun 拼图游戏制作过程详解(3)

3. 绘制完整的拼图

  •  建立Gird列表存储小拼图的基本信息

Gird=[]
for i in range(6):for j in range(4):Square=Actor("girl_06")Square.left=Square_size*jSquare.top=Square_size*iGird.append(Square)
  • 修改draw()绘制函数
    建立循环绘制Gird列表中的所有小拼图

def draw():screen.clear()for Square in Gird:Square.draw()

        执行效果如图所示:

        

  • 建立列表Squares存储所有的小拼图文件
    为了能把24个不同的小拼图块都显示出来,利用列表Squares存储所有的小拼图文件
Squares=[Actor("girl_01"),Actor("girl_02"),Actor("girl_03"),Actor("girl_04"),Actor("girl_05"),Actor("girl_06"),Actor("girl_07"),Actor("girl_08"),Actor("girl_09"),Actor("girl_10"),Actor("girl_11"),Actor("girl_12"),Actor("girl_13"),Actor("girl_14"),Actor("girl_15"),Actor("girl_16"),Actor("girl_17"),Actor("girl_18"),Actor("girl_19"),Actor("girl_20"),Actor("girl_21"),Actor("girl_22"),Actor("girl_23"),Actor("girl_24")]

        修改Gird列表中的图块对象,通过索引调用Squares中的小拼图。

Square=Squares[i*4+j]

执行效果如图所示:

完整代码如下: 

# 利用列表存储所有的图块信息 将完整的图片显示出来
import pgzrun  # 导入游戏库TITLE="pgzrun 拼图游戏"  # 窗口标题
Square_size=125         # 设定移动图块的大小
WIDTH=Square_size*4     # 窗口宽度
HEIGHT=Square_size*6    # 窗口高度Squares=[Actor("girl_01"),Actor("girl_02"),Actor("girl_03"),Actor("girl_04"),Actor("girl_05"),Actor("girl_06"),Actor("girl_07"),Actor("girl_08"),Actor("girl_09"),Actor("girl_10"),Actor("girl_11"),Actor("girl_12"),Actor("girl_13"),Actor("girl_14"),Actor("girl_15"),Actor("girl_16"),Actor("girl_17"),Actor("girl_18"),Actor("girl_19"),Actor("girl_20"),Actor("girl_21"),Actor("girl_22"),Actor("girl_23"),Actor("girl_24")]
Gird=[]
for i in range(6):for j in range(4):Square=Squares[i*4+j]Square.left=Square_size*jSquare.top=Square_size*iGird.append(Square)def draw():screen.clear()for Square in Gird:Square.draw()def update():passpgzrun.go()

pgzrun拼图游戏素材包下载 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/107460.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

开源大模型ChatGLM2-6B 1. 租一台GPU服务器测试下

0. 环境 租用了1台GPU服务器,系统 ubuntu20,GeForce RTX 3090 24G。过程略。本人测试了ai-galaxy的,今天发现网友也有推荐autodl的。 (GPU服务器已经关闭,因此这些信息已经失效) SSH地址:* 端…

虚拟机作为master远程控制台式机中的机器人在仿真环境中进行slam地图构建与自主导航

文章目录 前言一、思路流程二、具体步骤1.虚拟机网络配置2.台式机网络配置3.网络测试 三、远程操控SLAM建立地图三、远程操控SLAM导航 前言 虚拟机作为master远程控制台式机中的机器人在仿真环境中进行slam地图构建与自主导航 最近有时间一直在搞Ubuntu虚拟机与台式机的通讯&…

Java复习-多线程编程

多线程编程 解决并发访问的问题。 一. 继承 Thread 类实现多线程 1. 继承实现 继承thread类 class MyThread extends Thread{}覆写run主方法 多线程要执行的功能都应该在 run() 方法中定义。 class MyThread extends Thread { // 线程的主体类private String title;public…

澄海区图书馆《乡村振兴战略下传统村落文化旅游设计》许少辉八一新著

澄海区图书馆《乡村振兴战略下传统村落文化旅游设计》许少辉八一新著

2022年全国研究生数学建模竞赛华为杯D题PISA架构芯片资源排布问题求解全过程文档及程序

2022年全国研究生数学建模竞赛华为杯 D题 PISA架构芯片资源排布问题 原题再现: 一、背景介绍 芯片是电子行业的基础,在当前日益复杂的国际形势下,芯片成了各个大国必争的高科技技术。本课题关注网络通信领域的交换芯片,传统的交…

华为云云耀云服务器L实例评测|使用Linux系统与Docker部署.net/c#项目

目录 前言 如何在CentOS运行项目 登录CentOS 使用Rider打包 使用Visual Studio打包 项目运行 后台运行 开放端口 如何在Docker中运行项目 项目运行 前言 本章详细介绍,.net Core项目从打包到部署上华为云云耀云服务器L实例的过程与一些细节问题。在这里…

解决stable diffusion webui1.6 wd1.4 tagger加载失败的问题

由于webui源码的变化,需要修改两个地方的import 1.tagger/ui.py # 第十行 # from webui import wrap_gradio_gpu_call # 原代码 from modules.call_queue import wrap_gradio_gpu_call1.preload.py # 第4行开始 # from modules.shared import models_path # 原…

每日一博 - 闲聊经典微服务架构

文章目录 概述Arch小结 概述 典型的微服务架构是一种软件架构模式,其中一个应用程序被拆分成多个小型、相对独立的服务单元,每个服务单元都专注于执行特定的业务功能。这些服务单元可以独立开发、部署和扩展,通常通过网络通信协议进行互相通…

docker 部署 node.js(express) 服务

1、在 express 项目根目录下新增 Dockerfile 文件,内容如下: 创建服务容器的方法,可以根据自己的情况选择: 1、以下示例为宿主机没有安装 node 环境的写法; 2、先在本地构建包含 node 和 express 的基础镜像&#xff0…

第6章_freeRTOS入门与工程实践之创建FreeRTOS工程

本教程基于韦东山百问网出的 DShanMCU-F103开发板 进行编写,需要的同学可以在这里获取: https://item.taobao.com/item.htm?id724601559592 配套资料获取:https://rtos.100ask.net/zh/freeRTOS/DShanMCU-F103 freeRTOS系列教程之freeRTOS入…

深入学习 GC 算法 - 标记清除算法

前言: 📕作者简介:热爱编程的小七,致力于C、Java、Python等多编程语言,热爱编程和长板的运动少年! 📘相关专栏Java基础语法,JavaEE初阶,数据库,数据结构和算法…

骨传导耳机的危害有哪些?会损害听力吗?

如果正常的使用,骨传导耳机是没有危害的,由于骨传导耳机独特的传声方式,所以并不会对人体造成损伤,还可以在一定程度上保护听力。 如果想更具体知道骨传导耳机有什么危害,就要先了解什么是骨传导耳机,骨传…