Changement Gestion Player

This commit is contained in:
Amaury 2020-03-31 11:09:47 +02:00
parent 8143db69b1
commit 74fbc1ed6c
3 changed files with 24 additions and 35 deletions

View File

@ -51,13 +51,14 @@ void GestionJeu::_process()
void GestionJeu::create_scene()
{
Godot::print("Add childs");
add_child(gPlayer);
add_child(gTerrain);
}
void GestionJeu::setup_scene()
{
gPlayer->setPosition(15, 150);
gTerrain->AjoutSolSolide(1, 1, 10, 300);
}

View File

@ -8,11 +8,9 @@
GestionPlayer::GestionPlayer()
{
sprite_player_ptr = Sprite::_new();
collision_player_ptr = CollisionShape2D::_new();
texture_player_ptr.instance();
texture_player_ptr->_new();
shape_player_ptr.instance();
shape_player_ptr->_new();
}
void GestionPlayer::_register_methods()
@ -45,29 +43,10 @@ void GestionPlayer::_ready()
void GestionPlayer::createPlayer()
{
add_child(sprite_player_ptr);
add_child(collision_player_ptr);
}
void GestionPlayer::setupPlayer()
{
Transform2D t;
Vector2 v;
Size2 s;
//setup de la size
s.x = 1;
s.y = 1;
v.x = 10;
v.y = 500;
t.set_origin(v);
t.scale(s);
set_transform(t);
//Setup du shape
//Godot::print("SetUp de Shape");
shape_player_ptr.ptr()->_new();
//Chargement de la texture
//Godot::print("SetUp de Texture");
texture_player_ptr = ResourceLoader::get_singleton()->load("res://Character/Hero Knight/HeroKnight/Layer 1_sprite_01.png");
@ -75,10 +54,6 @@ void GestionPlayer::setupPlayer()
//setup du sprite
//Godot::print("SetUp de Sprite");
sprite_player_ptr->set_texture(texture_player_ptr);
//setup du collision Shape
//Godot::print("SetUp de CollisionShape");
collision_player_ptr->set_shape(shape_player_ptr);
}
void GestionPlayer::traitementInput()
@ -95,9 +70,6 @@ void GestionPlayer::traitementInput()
if (i->is_action_pressed("ui_select"))
saut();
if (is_on_floor()) {
on_ground = true;
p.velocity.y += 0;
@ -108,6 +80,23 @@ void GestionPlayer::traitementInput()
}
}
void GestionPlayer::setPosition(int x, int y)
{
Transform2D t;
Vector2 v;
Size2 s;
//setup de la size
s.x = 1;
s.y = 1;
v.x = x;
v.y = y;
t.set_origin(v);
t.scale(s);
set_transform(t);
}
void GestionPlayer::droit()
{
Godot::print("Deplacement a droite");
@ -126,9 +115,7 @@ void GestionPlayer::bas()
void GestionPlayer::saut()
{
p.velocity.y = power_jump;
p.velocity.y = power_jump;
}
void GestionPlayer::idle()

View File

@ -13,10 +13,8 @@ class GestionPlayer : public KinematicBody2D
{
public:
Sprite* sprite_player_ptr;
CollisionShape2D* collision_player_ptr;
Ref<Resource> texture_player_ptr;
Ref<CircleShape2D> shape_player_ptr;
private:
GODOT_CLASS(GestionPlayer, KinematicBody2D)
@ -36,7 +34,10 @@ public:
public:
void traitementInput();
void setPosition(int x, int y);
private:
void droit();
void gauche();
void bas();