rect

Pygame Button with rounded Corners, border_radius argument does not work

我们两清 提交于 2020-05-23 18:48:06
问题 I am currently learning pygame. When programming rectangles with rounded corners I encountered a problem. pygame.draw.rect() draw a rectangle rect(surface, color, rect) -> Rect rect(surface, color, rect, width=0, border_radius=0, border_radius=-1, border_top_left_radius=-1, border_top_right_radius=-1, border_bottom_left_radius=-1) -> Rect Draws a rectangle on the given surface. border_radius (int) -- (optional) used for drawing rectangle with rounded corners. The supported range is [0, min

200行PYTHON代码实现贪吃蛇

生来就可爱ヽ(ⅴ<●) 提交于 2020-04-07 21:39:09
200行Python代码实现贪吃蛇 话不多说,最后会给出全部的代码,也可以从 这里 Fork,正文开始; 目前实现的功能列表: 贪吃蛇的控制,通过上下左右方向键; 触碰到边缘、墙壁、自身则游戏结束; 接触到食物则食物消失,同时根据食物类型身体会变长; 目前长度显示; 暂停、死亡界面; 运行动图 代码片段分析 各个部分绘制的代码 # 游戏背景以及最下方用于显示文字的背景 def draw_background(): # white background screen.fill(COLORS['white']) pygame.draw.rect(screen,COLORS['black'],(-100,GAME_SIZE[1],3000,200),0) # 绘制墙壁 def draw_wall(): for xy in wall_list: pygame.draw.rect(screen,COLORS['darkgray'],(xy[0]-WALL_WIDTH/2,xy[1]-WALL_WIDTH/2,WALL_WIDTH,WALL_HEIGHT),0) # 绘制蛇,包括头和身体 def draw_snake(): head = snake_list[0] pygame.draw.circle(screen,COLORS['darkred'],(head[0],head[1]),int

1.图片元素<img>和<map>的联用

房东的猫 提交于 2020-04-07 20:47:24
使用<a>、<img>、<map>元素,实现点击图片上的某个区域跳转链接功能: 文件目录: 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 <title>Document</title> 7 </head> 8 <body> 9 <!-- 一个超链接中放一张图片,点击图片,则跳转到太阳系简介 10 点击图片特定区域,跳转到相关页面 --> 11 <a href="https://baike.baidu.com/item/%E5%A4%AA%E9%98%B3%E7%B3%BB/173281?fr=aladdin"> 12 <!-- img元素,usemap要写上map元素的name,加上# --> 13 <img usemap="#solarMap" src="./image/solar.jpg" alt="太阳系图片"> 14 </a> 15 <map name="solarMap"> 16 <!-- shape形状,coords坐标 --> 17 <!-- shape的值有:circle圆、rect矩形、poly多边形 --> 18 <!-

利用pygame开发一款跳跃得分游戏

我是研究僧i 提交于 2020-04-07 15:48:08
利用pygame开发一款跳跃得分游戏 游戏规则:可以左右移动以及空格跳跃,如果获得了特殊道具,就可以跳跃比较远的距离,敌人会随机生成,如果碰到了飞行敌人,就会死亡,没有跳动平台上也会死亡。 主要代码解析 首先创建玩家类 class Player(pg.sprite.Sprite): def __init__(self, game): self._layer = PLAYER_LAYER self.groups = game.all_sprites pg.sprite.Sprite.__init__(self, self.groups) # pg.sprite.Sprite.__init__(self) self.game = game # 不同的状态 self.walking = False self.jumping = False self.current_frame = 0 self.last_update = 0 self.load_images() # 加载图片 self.image = self.standing_frames[0] self.rect = self.image.get_rect() self.rect.center = (WIDTH / 2, HEIGHT / 2) self.pos = vec(WIDTH / 2, HEIGHT / 2) self

Pygame游戏制作跳跃得分游戏作业

纵饮孤独 提交于 2020-04-07 14:44:27
利用pygame开发一款跳跃得分游戏 游戏规则:可以左右移动以及空格跳跃,如果获得了特殊道具,就可以跳跃比较远的距离,如果碰到了飞行敌人,就会死亡,没有跳动平台上也会死亡。 主要代码解析 首先创建玩家类 class Player(pg.sprite.Sprite): def __init__(self, game): self._layer = PLAYER_LAYER self.groups = game.all_sprites pg.sprite.Sprite.__init__(self, self.groups) # pg.sprite.Sprite.__init__(self) self.game = game # 不同的状态 self.walking = False self.jumping = False self.current_frame = 0 self.last_update = 0 self.load_images() # 加载图片 self.image = self.standing_frames[0] self.rect = self.image.get_rect() self.rect.center = (WIDTH / 2, HEIGHT / 2) self.pos = vec(WIDTH / 2, HEIGHT / 2) self.vel = vec

pygame关卡游戏之口红挑战游戏(小组)

吃可爱长大的小学妹 提交于 2020-04-07 00:30:54
游戏简介及操作 : 1.游戏分为三关,每关限时60秒。 2.游戏每关难度递增。(轮盘的转速越来越快,口红数量的增多) 3.口红命中一个,增加10分。 4.口红命中重复位置即为失败。 开发工具 :Pycharm 游戏页面截图 : 首页: 第一关: 下一关显示:(关卡之间的过渡,基本上每两关之间就有,直到所有关卡结束) 第二关: 第三关: 失败页: 游戏制作步骤 一、准备素材 搜集素材以及字体 二、游戏初始设置 1.设置游戏屏幕大小,游戏界面标题 SCREEN_WIDTH = 480 SCREEN_HEIGHT = 800 pygame.init() screen = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT)) # 游戏界面标题 pygame.display.set_caption('口红挑战') image_dir = 'image/lipstick/' ttf_dir = 'ttf/' index_background = pygame.image.load(image_dir+'index_background.jpg') index_background = pygame.transform.scale(index_background, (SCREEN_WIDTH, SCREEN_HEIGHT))

pygame-----魔塔大闯关

倖福魔咒の 提交于 2020-04-06 22:28:58
游戏介绍:一开始玩家有100的生命值,10的攻击力,10的防御力,玩家可以通过获得相应颜色钥匙来打开相应颜色得门,随后通过打开门来攻击鬼怪来获取生命值和金币,药水提升生命值,获得蓝色宝石来提升预防力,获取红色宝石来获取攻击力,直至将所有妖怪,宝石等获得通过第一层。 运行结果: 游戏开发制作流程 : 1.收集素材(背景,玩家,敌人,宝石) 2.创建攻击函数 3.创建魔塔函数 一,收集素材 百度搜索所需的素材,并通过ps来进行简单的处理 二,创建攻击函数 2.1定义两个对象(主角和怪物) def fight (A , B , cancel= 0 ): a=A.attack-B.defend b=B.attack-A.defend 2.2函数输出为【0】表示打不过,胜利输出受损生命值,设置cancel可以撤销本次战斗即回到之前状态 if a<= 0 : return [ 0 ] if a> 0 and b<= 0 : if (cancel== 0 ): A.gold+=B.gold if (cancel!= 0 ): A.life=alife B.life=blife return 0 2.3进行战斗结果 for i in range ( 1 , 100 ): B.life=B.life-a if B.life< 0 : if (cancel== 0 ): B.life=blife A

pygame植物大战僵尸

北慕城南 提交于 2020-04-06 22:10:18
开发工具:VS code 1.效果界面预览 2.引入需要的模块,配置图片路径,设置界面宽高背景颜色,创建游戏主入口。 #1引入需要的模块 import pygame import random #1配置图片地址 IMAGE_PATH = 'imgs/' #1设置页面宽高 scrrr_width=800 scrrr_height =560 #1创建控制游戏结束的状态 GAMEOVER = False #1主程序 class MainGame(): #1加载游戏窗口 def init_window(self): #1调用显示模块的初始化 pygame.display.init() #1创建窗口 MainGame.window = pygame.display.set_mode([scrrr_width,scrrr_height]) # #1开始游戏 def start_game(self): #1初始化窗口 self.init_window() #1只要游戏没结束,就一直循环 while not GAMEOVER: #1渲染白色背景 MainGame.window.fill((255, 255, 255)) #1实时更新 pygame.display.update() #1启动主程序 if __name__ == '__main__': game = MainGame() game