猫史档案馆


【Python作品分享】飞机大战【作业帖】

用户:凡香凡香查看:0 回复:3 评论:0 创建时间:2022-07-17T17:43:51


【作品展示】

center_image

 

【作品介绍】

-

 

【作品源代码】

#导入库
import pgzrun
import random
stop=1
Score=0
#设置窗口大小
WIDTH = 315
HEIGHT = 540
#导入图片素材(己方飞机、敌方飞机、子弹、背景、爆炸图片)
bg = Actor("background")
enemy = Actor("enemy")
hero = Actor("hero")
bullet = Actor("bullet")
blowup=Actor("blowup")
jieshu = Actor("gameover")
#设置图片素材的位置
enemy.x = WIDTH/2
enemy.y = 30
hero.y = 480
hero.x = WIDTH/2
bullet.x = -20
bullet.y = -20
blowup.x = -20
blowup.y = -20
jieshu.x = WIDTH/2
jieshu.y = HEIGHT/2
#def draw():
#显示图片
def draw():
    bg.draw()
    enemy.draw()
    hero.draw()
    bullet.draw()
    if stop==0:
        blowup.draw()
        jieshu.draw()
    screen.draw.text("Score:"+str(Score),center=[60, 20], fontsize=50, color="blue")
#def update():
#设置运动状态
def update():
    global stop,Score
    if stop == 1:
        enemy.y = enemy.y+2
        if enemy.colliderect(bullet) or enemy.y>HEIGHT+25:
            enemy.x=random.randint(30,320)
            enemy.y=-30
            bullet.x=-20
            bullet.y=-20
        bullet.y=bullet.y-10
        if hero.colliderect(enemy):
            stop = 0
        if enemy.colliderect(bullet):
            Score=Score+1
#def on_mouse_down():
#设置鼠标控制机制
def on_mouse_down():
    bullet.x = hero.x
    bullet.y = hero.y-50
#鼠标移动事件
def on_mouse_move(pos):
    hero.y = pos[0]
    hero.y = pos[1]
    hero.x = pos[0]
    hero.x = pos[0]
    blowup.x=hero.x
    blowup.y=hero.y
#def on_key_down():
#设置按键控制机制


pgzrun.go()

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 1下一页
盗码师盗码师

from math import pi, sin, cos

from math import pi, sin, cos

from math import pi, sin, cos

from direct.showbase.ShowBase import ShowBase

from direct.showbase.ShowBase import ShowBase

from direct.task import Task

from direct.actor.Actor import Actor

from direct.interval.IntervalGlobal import Sequence

from panda3d.core import Point3


class MyApp(ShowBase):


    def __init__(self):


        ShowBase.__init__(self)

        self.disableMouse()

        self.environ = self.loader.loadModel("models/environment")

        self.environ.reparentTo(self.render)

        self.environ.reparentTo(self.render)

        self.environ.reparentTo(self.render)

        self.environ.setScale(0.25, 0.25, 0.25)

        self.environ.setPos(-8, 42, 0)

        self.taskMgr.add(self.spinCameraTask, "SpinCameraTask")

        self.pandaActor = Actor("models/panda-model",

                                {"walk": "models/panda-walk4"})

        self.pandaActor.setScale(0.005, 0.005, 0.005)

        self.pandaActor.reparentTo(self.render)



        self.pandaActor.loop("walk")


        PosInterval1 = self.pandaActor.posInterval(13,

                                                Point3(0, -10, 0),

                                                startPos=Point3(0, 10, 0))

        PosInterval2 = self.pandaActor.posInterval(13,

                                                Point3(0, 10, 0),

                                                startPos=Point3(0, -10, 0))

        HprInterval1 = self.pandaActor.hprInterval(3,

                                                Point3(180, 0, 0),

                                                startHpr=Point3(0, 0, 0))

        HprInterval2 = self.pandaActor.hprInterval(3,

                                                Point3(0, 0, 0),

                                                startHpr=Point3(180, 0, 0))


        self.pandaPace = Sequence(PosInterval1,

                                HprInterval1,

                                PosInterval2,

                                HprInterval2,

                                name="pandaPace")

        self.pandaPace.loop()

    def spinCameraTask(self, task):


        angleDegrees = task.time * 6.0

        angleRadians = angleDegrees * (pi / 180.0)

        self.camera.setPos(20 * sin(angleRadians), -20.0 * cos(angleRadians), 3)

        self.camera.setHpr(angleDegrees, 0, 0)

        return Task.cont

app = MyApp()

app.run()

点赞0


评论


穷叉叉OvO穷叉叉OvO

素材给一下

点赞0


评论


穷叉叉OvO穷叉叉OvO

你也做pgzrun啊,牛,和我一样

点赞0


评论