ajustement godot

This commit is contained in:
p1923381
2020-03-25 12:13:37 +01:00
parent 65e871c2c2
commit 2d5b5b0ae8
14 changed files with 133 additions and 68 deletions

View File

@ -1,25 +1,71 @@
#include "GestionPlayer.h"
void GestionPlayer::droit()
{
#include "GestionPlayer.h"
using namespace godot;
void Player::_register_methods() {
register_method((char*)"_process", &Player::_process);
}
void GestionPlayer::gauche()
{
void Player::_init() {}
Player::Player() {
velocity = Vector2(0, 0);
}
void GestionPlayer::bas()
Player::~Player() {}
void Player::_process(float delta)
{
UpdateMotionFromInput();
velocity = move_and_slide(velocity, FLOOR);
}
void GestionPlayer::saut()
void Player::UpdateMotionFromInput()
{
velocity = Vector2(0, 0);
FLOOR = Vector2(0, -1);
Input* i = Input::get_singleton();
if (i->is_action_pressed("ui_left"))
{
velocity.x -= speed;
void play(String anim = "run", bool backwards = false);
}
else if (i->is_action_pressed("ui_right"))
velocity.x += speed;
else
velocity.x = 0.0;
if (i->is_action_pressed("ui_select")) {
if (on_ground == true) {
velocity.y = power_jump;
on_ground = false;
}
}
if (is_on_floor()) {
on_ground = true;
velocity.y += 0;
}
else {
on_ground = false;
velocity.y += gravity;
}
}
void GestionPlayer::idle()
{
}
void GestionPlayer::attack()
{
}

View File

@ -1,17 +1,59 @@
#pragma once
#include "Player.h"
class GestionPlayer
{
public:
Player p;
#pragma once
public:
void droit();
void gauche();
void bas();
void saut();
void idle();
void attack();
#include <Godot.hpp>
#include <KinematicBody2D.hpp>
#include <Input.hpp>
namespace godot {
class Player : public KinematicBody2D
{
// Godot structure
private:
GODOT_CLASS(Player, KinematicBody2D)
public:
static void _register_methods();
void _init();
void _process(float delta);
Player();
~Player();
// Gameplay variables
public:
const int speed = 100;
const int gravity = 90;
const int power_jump = -2500;
bool on_ground = false;
bool right;
bool left;
bool jump;
private:
Vector2 velocity;
Vector2 FLOOR;
// Gameplay methods
public:
void UpdateMotionFromInput();
private:
};
}
attack();
};