猫史档案馆


【Pygame Zero】——飞机的旋转

用户:函数Chara函数Chara查看:0 回复:2 评论:0 创建时间:2021-04-17T19:33:40


嗯,没错,我更新了。

失踪人口回归

一年没更新了。

上期传送门:https://shequ.codemao.cn/community/220708

emotion_编程猫_溜了溜了emotion_编程猫_溜了溜了(头顶一凉)

这次呢,我们把飞机放进程序里。

plane = Actor("plane",anchor=("center","center"))
plane.x, plane.y = 169, 440
#...
def draw():
    #...
    plane.draw()

但是,飞机不会动。

我们需要让他面向鼠标

Kitten是这样:

“”“
————————————————
|面向(鼠标指针)|
——————————\_/——
”“”

很简单,对不对?

但这不是Kitten,是Python

新的事件【作者昵称】出现了!

center_image

(按钮:button)

这里很显然,我们需要用参数:pos

那面向怎么弄呢?

sprite.angle #对象的角度,默认0
’‘’
|---|
|    > --> angle:0
|---|

|-^-|
|   |  --> angle:90
|---|

‘’‘
sprite.angle_to(pos)
#在pos的点相对于sprite的角度

看到这里,你们一定已经想到了:

def on_mouse_move(pos):
    plane.angle = plane.angle_to(pos) - 90
# -90是因为飞机本身应该在0度的地方在90度的地方

效果图发评论区

 

 

很抱歉,这次质量不太好

我不禁头涔涔而泪潸潸了【懂得都懂】


回复

上一页1 页 / 共 1下一页
函数Chara函数Chara

center_image飞机图

点赞0


评论


函数Chara函数Chara

 

center_image

一种可选的优化方案:

#...
def on_mouse_move(pos):
    if pos[0] < 450: #让飞机不会倒着飞
        #...

点赞0


评论