51
Dev开发社区
首页
文章
问答
工具
搜索
登录
注册
#sc
pygame-KidsCanCode系列jumpy-part10-角色动画(上)
上一节学习如何利用spritesheet加载图片,但是player仍然是一张静态的图片,比较枯燥,我们要让它动起来!Player类,先把各种状态的图片加载起来:1#加载各种状态的图片序列2defload_images(self):3#站立状态的图片4self.standing_frames=[self.game.spr...
代码星球
·
2020-04-06
pygame-KidsCanCode
系列
jumpy-part10-
角色
动画
pygame-KidsCanCode系列jumpy-part9-使用spritesheet
做过前端的兄弟应该都知道csssprite(也称css精灵),这是一种常用的减少http请求次数的优化手段。把很多小图拼成一张大图,只加载1次,然后用css定位到不区的区域,从而展示不同的图片。游戏中也是类似的道理,如下图:每一个小图片,都有自己的x,y,width,height信息,通常会放在一个xml中,类似:1&...
代码星球
·
2020-04-06
pygame-KidsCanCode
系列
jumpy-part9-
使用
spritesheet
pygame-KidsCanCode系列jumpy-part8-记录历史最高分
通常在多玩家的游戏中,每个玩家都会有自己的得分,最高分数会成为该游戏的最佳记录。这一篇,学习下如何记录最高得分:(为了简化代码,本文采用文件方式,仅记录本机得分,明白原理后,可以将得分保存在云端或数据库中,就可能支持多玩家了)。首先要在settings.py中新建一个常量:HIGH_SCORE_FILE="../dat...
代码星球
·
2020-04-06
pygame-KidsCanCode
系列
jumpy-part8-
记录
历史
pygame-KidsCanCode系列jumpy-part7-游戏启动/结束画面
通常一个游戏启动(start)或结束(gameover)时,都会显示一个画面,来引导用户。这节,我们学习如何处理这块逻辑。其实之前,我们已经预留了2个函数,只要把它实现即可:defshow_start_screen(self):self.screen.fill(BG_COLOR)self.draw_text(TITLE...
代码星球
·
2020-04-06
pygame-KidsCanCode
系列
jumpy-part7-
游戏
启动
pygame-KidsCanCode系列jumpy-part6-主角挂掉重新开始
游戏的虚拟世界中,最让人happy的一个因素就是主角挂了,而且重来,只要restart就行了,不象现实中人的生命只有1次。回顾上节的效果,如果方块向下落时,挡板没接住,整个游戏就跪了:如果我们希望方块挂了之后,可以重新来过,可以这样做,修改Game类的update方法:defupdate(self):self.all_...
代码星球
·
2020-04-06
pygame-KidsCanCode
系列
jumpy-part6-
主角
挂掉
pygame-KidsCanCode系列jumpy-part5-屏幕滚动
接上回继续,方块不断向上跳动的过程中,从视觉上看,整个背景屏幕应该不断向下滚动,而且上方要不断出现新档板(否则就没办法继续向上跳了),这节我们将来实现这种效果,感觉好象很复杂,但实现起来其实很简单,只要对main.py略做调整:Game类的update方法改成下面这样defupdate(self):self.all_s...
代码星球
·
2020-04-06
pygame-KidsCanCode
系列
jumpy-part5-
屏幕
滚动
pygame-KidsCanCode系列jumpy-part4-弹跳
终于要到弹跳环节了,向上弹跳其实很简单,按下空格触发时,只要把y轴速度给一个向上的速度即可。Player类,新加一个jump()方法:defjump(self):self.vel.y=-25调用该方法,会使方块具有向上25px的速度,然后由于重力依然在起作用,所以二者结合,就会形成向上弹跳的效果。然后在main.py中...
代码星球
·
2020-04-06
pygame-KidsCanCode
系列
jumpy-part4-
弹跳
pygame-KidsCanCode系列jumpy-part3-重力及碰撞检测
这个游戏叫jumpy,大致玩法就是模拟超级玛丽一样,可以不停在各个档板上跳动,同时受到重力的作用,会向下掉,如果落下时,没有站在档板上,就挂了。这节,我们加入重力因素,继续改造sprites.pyfrompart_03.settingsimport*importpygameaspgvec=pg.math.Vector2...
代码星球
·
2020-04-06
pygame-KidsCanCode
系列
jumpy-part3-
力及
碰撞
pygame-KidsCanCode系列jumpy-part2-加速度与摩擦力
上一节,我们整理了一个游戏开发的新框架(即:Game类),本节将运用这个框架,实现基本的加速度及摩托力效果。先定义游戏的精灵(下面代码命名为sprites.py)frompart_02.settingsimport*importpygameaspg#Vector可以看成(x,y)的封装vec=pg.math.Vecto...
代码星球
·
2020-04-06
pygame-KidsCanCode
系列
jumpy-part2-
加速度
摩擦力
pygame-KidsCanCode系列jumpy-part1-如何组织复杂游戏的代码
武侠小说中,高手过招讲究起手式,所谓"行家一伸手,便知有没有"。程序开发、软件架构中,也是类似的道理,当业务逻辑越来越复杂,代码越来越多时,一个好的项目结构,从目录命名、模块分层这些,从一开始就决定了后面的代码是否易于维护。所以这节主要讨论下,游戏中如何组织自己的代码,回忆上节学到的最小开发框架(即:模板),一个游戏大...
代码星球
·
2020-04-06
pygame-KidsCanCode
系列
jumpy-part1-
如何
组织
pygame-KidsCanCode系列jumpy-part0-使用sprite
油管(youtube)上有一个号称"史上最好的pygame教程"(传送门:https://www.youtube.com/watch?v=VO8rTszcW4s&list=PLsk-HSGFjnaH5yghzu7PcOzm9NhsW0Urw),作者思路很清晰,循序渐进,很适合大人学会了,然后指导孩子入门。作者还...
代码星球
·
2020-04-06
pygame-KidsCanCode
系列
jumpy-part0-
使用
sprite
spring cloud:config-server中@RefreshScope的"陷阱"
springcloud的config-serfver主要用于提供分布式的配置管理,其中有一个重要的注解:@RefreshScope,如果代码中需要动态刷新配置,在需要的类上加上该注解就行。但某些复杂的注入场景下,这个注解使用不当,配置可能仍然不动态刷新,比如下面的场景:1.先定义一个配置类(假设这里面定义了一个apiU...
代码星球
·
2020-04-06
quot
spring
cloud
config-server
@RefreshScope
spring-boot 速成(6) 整合disconf
spring-boot虽然不推荐使用xml文件做为配置文件,但是并没有把路堵死,所以与disconf的整合,仍旧可以沿用之前的xml方式来处理。 一、在Application类上用注解导入xmlpackagecom.example;importorg.springframework.boot.Spring...
代码星球
·
2020-04-06
spring-boot
速成
整合
disconf
gradle项目中如何支持java与scala混合使用?
之前写过一篇maven项目中java与scala如何混用,今天来看看gradle项目中如何达到同样的效果:一、目录结构基本上跟maven一样,tips:这一堆目录结构不用死记,后面会讲如何用gradle命令快速生成 二、build.gradle配置1group'yjmyzz'2version'1.0-SNAP...
代码星球
·
2020-04-06
gradle
目中
如何
支持
java
scala 学习笔记(07) 一等公民的函数
在scala中一切皆对象,一切皆函数,函数跟Int,String、Class等其它类型是处于同等的地位,换句话说,使用函数跟使用普通的类型一样,没什么区别,因此:1、函数可以赋值给变量,可以当参数传递defhelloWorld(msg:String):Unit={println("Hello,"+msg)}deffoo...
代码星球
·
2020-04-06
scala
学习
笔记
一等
公民
首页
上一页
...
227
228
229
230
231
...
下一页
尾页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他