sách gpt4 ai đã đi

python - 滑动 Sprite

In lại 作者:太空宇宙 更新时间:2023-11-03 19:25:27 32 4
mua khóa gpt4 Nike

我希望我的 Sprite 像在冰上一样滑动。因此,如果他在地面上,那么他可以正常行走,但当他接触冰时,他会滑动,直到有东西阻止他。有谁知道如何才能做到这一点?谢谢

1 Câu trả lời

像“Sprite Movement Towards a Target ”示例一样操纵摩擦系数(修改如下):

class Sprite(pygame.sprite.Sprite):
ICE = 0.01
LAND = 1.

định nghĩa __init__(bản thân):
# ...
self.normal_friction = .95 # friction while accelerating
self.slowing_friction = .8 # friction while slowing down

def update(self):
# ...
if self.dir: # if there is a direction to move

if self.in_ice_region():
surface_coefficient = Sprite.ICE
khác:
surface_coefficient = Sprite.LAND

if self.distance_check(self.dist): # if we need to slow down
self.speedX += (self.dir[0] * (self.speed / 2)) # reduced speed
self.speedY += (self.dir[1] * (self.speed / 2))
self.speedX *= surface_coefficient * self.slowing_friction # increased friction
self.speedY *= surface_coefficient * self.slowing_friction

else: # if we need to go normal speed
self.speedX += (self.dir[0] * self.speed) # calculate speed from direction to move and speed constant
self.speedY += (self.dir[1] * self.speed)
self.speedX *= surface_coefficient * self.normal_friction # apply friction
self.speedY *= surface_coefficient * self.normal_friction

self.trueX += self.speedX # store true x decimal values
self.trueY += self.speedY
self.rect.center = (round(self.trueX),round(self.trueY)) # apply values to sprite.center

关于python - 滑动 Sprite ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8306471/

32 4 0
太空宇宙
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com