mirror of
https://forge.univ-lyon1.fr/tplifap4/dungeonanddeamon.git
synced 2024-02-27 13:31:50 +01:00
debut mouvement animation player
This commit is contained in:
@ -1,5 +1,5 @@
|
||||
#include "GestionPlayer.h"
|
||||
|
||||
#include <SpriteFrames.hpp>
|
||||
#include <ConfigFile.hpp>
|
||||
#include <Input.hpp>
|
||||
#include <ResourceLoader.hpp>
|
||||
@ -7,8 +7,8 @@
|
||||
|
||||
GestionPlayer::GestionPlayer()
|
||||
{
|
||||
sprite_player_ptr = Sprite::_new();
|
||||
|
||||
sprite_player_ptr = AnimatedSprite::_new();
|
||||
texture_player_ptr.instance();
|
||||
texture_player_ptr->_new();
|
||||
}
|
||||
@ -27,6 +27,7 @@ void GestionPlayer::_process(float dt) // dt = deltaTime
|
||||
{
|
||||
traitementInput(dt);
|
||||
p.velocity = move_and_slide(p.velocity);
|
||||
animation();
|
||||
|
||||
}
|
||||
|
||||
@ -53,7 +54,17 @@ void GestionPlayer::setupPlayer()
|
||||
|
||||
//setup du sprite
|
||||
//Godot::print("SetUp de Sprite");
|
||||
sprite_player_ptr->set_texture(texture_player_ptr);
|
||||
Ref<SpriteFrames> spriteFrames = ResourceLoader::get_singleton()->load("res://Character/Hero Knight/HeroKnight/HeroKnight.tres");
|
||||
sprite_player_ptr->set_sprite_frames(spriteFrames);
|
||||
|
||||
PoolStringArray AnimNames = spriteFrames->get_animation_names();
|
||||
PoolStringArray::Read r = AnimNames.read();
|
||||
Godot::print("Animations Names");
|
||||
for (int i = 0; i < AnimNames.size(); ++i)
|
||||
{
|
||||
Godot::print(r[i]);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void GestionPlayer::traitementInput(float dt)
|
||||
@ -85,6 +96,27 @@ void GestionPlayer::traitementInput(float dt)
|
||||
|
||||
}
|
||||
|
||||
void GestionPlayer::animation()
|
||||
{
|
||||
|
||||
if (p.velocity.x > 0.0f)
|
||||
{
|
||||
sprite_player_ptr->play("Walk");
|
||||
sprite_player_ptr->set_flip_h(false);
|
||||
}
|
||||
else if (p.velocity.x < 0.0f)
|
||||
{
|
||||
sprite_player_ptr->play("Walk");
|
||||
sprite_player_ptr->set_flip_h(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
sprite_player_ptr->play("Idle");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
void GestionPlayer::setPosition(int x, int y)
|
||||
{
|
||||
Transform2D t;
|
||||
|
@ -2,7 +2,7 @@
|
||||
#include <CircleShape2D.hpp>
|
||||
#include <CollisionShape2D.hpp>
|
||||
#include <Sprite.hpp>
|
||||
|
||||
#include <AnimatedSprite.hpp>
|
||||
|
||||
|
||||
#include "Player.h"
|
||||
@ -12,7 +12,9 @@ using namespace godot;
|
||||
class GestionPlayer : public KinematicBody2D
|
||||
{
|
||||
public:
|
||||
Sprite* sprite_player_ptr;
|
||||
|
||||
AnimatedSprite* sprite_player_ptr;
|
||||
|
||||
|
||||
Ref<Resource> texture_player_ptr;
|
||||
|
||||
@ -44,6 +46,7 @@ private:
|
||||
void saut();
|
||||
void idle();
|
||||
void attack();
|
||||
void animation();
|
||||
public:
|
||||
const float speed = 100.f;
|
||||
const float GamePlayMultiplicator = 100.0f;
|
||||
|
Reference in New Issue
Block a user