Zen 0.3.0
Loading...
Searching...
No Matches
Player.cpp
1#include "Player.h"
2
3bool Player::onGround() const { return pos.y <= 0.0f; }
4
5void Player::update(Zen::DeltaTime deltaTime, bool jumpPressed) {
6 m_wasOnGround = onGround();
7 m_justJumped = false;
8
9 if (jumpPressed && onGround()) {
10 vy = jumpPower;
11 m_justJumped = true;
12 ZEN_LOG_TRACE("Jumped");
13 }
14
15 vy += gravity * deltaTime.seconds();
16 pos.y += vy * deltaTime.seconds();
17
18 if (pos.y < 0.0f) {
19 pos.y = 0.0f;
20 vy = 0.0f;
21 }
22
23 emitter.pos = pos;
24 emitter.props.position = pos;
25}