贪玩的我~终于回来了!
今日过后,日常更新——挺长一段时间都不在状态的。好好调整中!
最近在给大家研究一些新游戏,大家喜欢打篮球嘛?
(木子高中还参加过篮球比赛,棒棒~虽然打得不咋滴就是了~哈哈哈)
文末可得代码啦~
大学时期,最喜欢跟着室友一起去看学校的各种篮球比赛的。哈哈哈,有姐妹的话就懂得~
估计学编程的女孩子还是挺少的哈,男孩子的话不懂我就不解释啦~回家了可以问下自己的
女朋友又是不是也这样子干过!嘻嘻.jpg
今天小编的话就给大家用代码做一款简约的《篮球小游戏》,爱我的代码评论区扣666吖~
正文一、环境安装1)各种素材(图片、代码)
资料挺多滴,等下代码就只展示主要的一些代码哈!
2)运行环境小编使用的环境:Python3、Pycharm社区版、pygame、numpy、 scipy 模块部分自带就不
展示啦。
模块安装:pip install -i https://pypi.douban.com/simple/ 模块名
二、代码展示1)游戏界面文字
设置的是双人模式撒欢,可以两个人一起玩儿的,玩家1跟玩家2轮流投篮滴。
import Pygame
BLACK = (0, 0, 0)
RED = (255, 0, 0)
class Text:
def text_objects(self, text, font, color):
TextSurface = font.render(text, True, color)
return textSurface, textSurface.get_rect()
def score_display(self, world, screen):
p1color = RED if world.p1turn else BLACK
p2color = BLACK if world.p1turn else RED
self.add_to_screen(
screen, 30, "Player 1: " str(world.p1score) " points", 150, 50, p1color
)
self.add_to_screen(
screen, 30, "Player 2: " str(world.p2score) " points", 150, 90, p2color
)
def victory_message(self, world, screen):
winner = 1 if world.p1score > world.p2score else 2
self.add_to_screen(
screen, 100, "The winner is Player " str(winner) "!", 640, 320
)
def add_to_screen(self, screen, font_size, text, center_x, center_y, color):
largeText = pygame.font.Font("freesansbold.ttf", font_size)
TextSurf, TextRect = self.text_objects(text, largeText, color)
TextRect.center = (center_x, center_y)
screen.blit(TextSurf, TextRect)
2)主程序
import pygame
from Ball import Ball2D
from World import World
from PowerBar import PowerBar
from Text import Text
BLACK = (0, 0, 0)
WHITE = (255, 255, 255)
RED = (255, 0, 0)
def main():
# initializing pygame
pygame.init()
clock = pygame.time.Clock()
# top left corner is (0,0)
win_width = 1280
win_height = 640
screen = pygame.display.set_mode((win_width, win_height))
pygame.display.set_caption("Basketball篮球游戏")
world = World()
power = PowerBar()
scoreboard = Text()
world.add_rim("disk-red.png", 5).set_pos([1000, 300])
world.add_rim("disk-red.png", 5).set_pos([1075, 300])
dt = 0.1
while True:
# 100 fps
clock.tick(60)
# Clear the background, and draw the sprites
screen.fill(WHITE)
power.draw(screen)
world.draw(screen)
pygame.draw.arc(screen, RED, (50, 50, 50, 50), 1, 1, 10)
# draw rim line
pygame.draw.line(screen, RED, [1000, 340], [1075, 340], 10)
# draw backboard
pygame.draw.line(screen, RED, [1075, 250], [1075, 640], 10)
scoreboard.score_display(world, screen)
if world.won:
scoreboard.victory_message(world, screen)
pygame.display.update()
clock.tick(1)
# countdown timer to close the game when won
for i in range(100):
pass
break
elif not world.shot:
power.start(world)
else:
won = world.update(dt, power)
pygame.display.update()
if __name__ == "__main__":
main()
三、效果展示1)游戏玩家一
2)游戏玩家二
3)随机投篮用多大的力气投篮就在蓄力的时候点一下鼠标左键在相应的蓝条点击,刚开始肯定不适应,
要慢慢试,看哪里是最适合的时候。每次投篮一次10分哦~
总结好啦~这款《篮球小游戏》到这里就结束啦!小编写的简易版本的撒,要继续优化啦~
老规矩,资料素材源码啥的顺便加一张我看过的篮球动漫里面的人物!好看吧~
完整的免费源码领取处:私信小编06即可哦~往期部分文章推荐——项目1.0 超级玛丽
程序员自制游戏:超级玛丽100%真实版,能把你玩哭了~【附源码】
项目1.1 扫雷
Pygame实战:据说这是史上最难扫雷游戏,没有之一,你们感受下......
项目4.9 天天酷跑小游戏
《天天酷跑》是不是真的不火了?Python发布“酷跑 ”计划。
项目7.0 赛车游戏
【Pygame实战】如果你是赛车爱好者:这款新赛车游戏分分钟让你上瘾(超跑又是谁的梦想?)
项目7.1 虐单身狗游戏
Pygame实战:慎点|虐单身狗的最高境界是…【附源码】
文章汇总——项目1.0 Python—2021 |已有文章汇总 | 持续更新,直接看这篇就够了
(更多内容 源码都在文章汇总哦!!欢迎阅读~)
,Copyright © 2008-2022 秒下下载站
m.down10s.com .All Rights Reserved