Как в ursina добавить приседание и бег
Добрая ночь, я новичок в Python и вообще в программировании. И мне надо при нажатии на Shift чтобы у player ускорялась передвижение, это первая проблема, с которой я столкнулся.
Вторая - мне надо чтобы на расстоянии меньше 8 блоков player не мог ломать блоки, это я примерно понял как сделать, но не правильно.
И третье - тоже самое что и Shift, но Ctrl надо сделать приседание как в майнкрафт.
Очень буду благодарен получить быстро помощь.
Вот код:
from ursina import *
from ursina.prefabs.first_person_controller import FirstPersonController
app = Ursina()
window.title = 'MineTools' # название окна
window.borderless = False # менять разрешение
window.fullscreen = False # полноэкранный режим
window.exit_button.visible = False # Не показывать внутриигровой красный крестик, закрывающий окно
window.fps_counter.enabled = True # показывать фпс
camera.orthographic = False #плавнасть
e = Entity()
e.model = 'cube'
e.color = color.random_color()
e.position = (16, 2, 16)
e.size = 10
class Block(Button):
def init(self, position=(0, 0, 0)):
super().init(
parent = scene,
position = position,
model = "cube",
urigin_y = 5,
color= color.gray,
highilight_color = color.black,
)
def input(self, key):
if self.hovered:
if key == 'right mouse down' and position == position > 8:
voxel = Block(position = self.position + mouse.normal)
if key == 'left mouse down':
destroy(self)
for z in range(16):
for x in range(16):
voxel = Block((x, 0, z))
for z in range(1):
for x in range(1):
voxel = Block((17, 0, 18))
def update():
if player.position == (0, -5, 0):
player.position = (0,10,0)
player = FirstPersonController(position =(0, 10, 0))
app.run()