python小游戏代码大全打枪,python设计一个射击游戏

本篇文章给大家谈谈python简单射击小游戏代码,以及python小游戏代码大全打枪,希望对各位有所帮助,不要忘了收藏本站喔。

Source code download: 本文相关源码

大家好,给大家分享一下python简单射击小游戏代码,很多人还不知道这一点。下面详细解释一下python基础知识点总结图解。现在让我们来看看!

我的游戏有一个很长的代码,但我会粘贴在重要的部分,即子弹射击部分。游戏本质上是一个致命的Kombat风格的游戏,但有飞行机器人和子弹python自动化运维应用。在

在游戏循环之前,我首先预定义了子弹和机器人的函数:def robotr(xr,yr):

gameDisplay.blit(robrimg, (xr,yr))

def robotl(xl,yl):

gameDisplay.blit(roblimg, (xl,yl))

def bulletsr(xbr,ybr):

pygame.draw.circle(gameDisplay, THECOLORS['orange'],(xbr,ybr), 10)

def bulletsl(xbl,ybl):

pygame.draw.circle(gameDisplay, THECOLORS['orange'],(xbl,ybl), 10)

那么移动对象的众多变量:

^{pr2}$

在那之后,代码运行了很长一段时间(大约300-400行),但是在我发射子弹的地方,我有一个类似的事件来表示子弹随着机器人的箭头键移动而“移动”if event.type == pygame.KEYDOWN:

#-------PLAYER 1 MOVEMENT-------

#OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO

if event.key == pygame.K_a:

xr_change = -5

xbr_change = -5 #I have to change the position of the bullet as well so that it doesn't stay in one place and rather shoots from the robot (duh.)

然后用一个类似的代码发射子弹:#-------FIRE CANNON MK1-------

#OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO

if event.key == pygame.K_LSHIFT:

bulletsfx=pygame.mixer.Sound ('boomchickchickmp3.ogg')

bulletsfx.play()

bulletsfx.set_volume(0.2)

xbl_change = 5

if xbl_change == 5:

bulletsl(xbl,ybl)

xbl=xl

当然,我为右边的机器人定义了多次这样的代码。在

在我的程序快结束时(这是我的结尾的简短形式,因为我有额外的变量,所以事情不会从屏幕上掉下来,但现在可以忽略它)我有一个这样的代码,这样我可以将更改重新定义回“0”,以便可以重用这些移动,等等:if event.type == pygame.KEYUP:

#Player 1 events

if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT or event.key == pygame.K_UP or event.key == pygame.K_DOWN or event.key == pygame.K_RCTRL or event.key == pygame.K_DELETE: #or event.key == pygame.K_RSHIFT:

xr_change = 0

yr_change = 0

xbr_change= 0

ybr_change= 0

#Player 2 events

if event.key == pygame.K_a or event.key == pygame.K_d or event.key == pygame.K_w or event.key == pygame.K_s or event.key == pygame.K_LCTRL or event.key == pygame.K_f: #or event.key == pygame.K_LSHIFT:

xl_change = 0

yl_change = 0

xbl_change= 0

ybl_change= 0

##

xr += xr_change

yr += yr_change

xl += xl_change

yl += yl_change

##

xbr += xbr_change

ybr += ybr_change

xbl += xbl_change

ybl += ybl_change

##

bulletsr(xbr,ybr)

bulletsl(xbl,ybl)

robotr(xr,yr)

robotl(xl,yl)

pygame.display.update()

clock.tick(320)

现在我的问题是,当我发射子弹时,它会发射,但我只能发射一次,直到它从我的程序屏幕上消失(没关系,我做了它,所以一旦它离开屏幕,它就会返回给机器人)。否则,如果我继续按键射击,它只会将子弹坐标返回到它原来应该的位置(就像在我射击时,如果我再射击,我可以看到子弹消失回到原来的位置)。在

没有无限多的项目符号,我想知道如何修改函数和一些变量(可能)使之发生。在

  • 23
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值