mirror of
https://github.com/zoriya/Bomberman.git
synced 2026-06-06 19:22:20 +00:00
basic bot_ia class template
This commit is contained in:
@@ -64,6 +64,8 @@ set(SOURCES
|
||||
sources/Component/Collision/CollisionComponent.hpp
|
||||
sources/System/Collision/CollisionSystem.hpp
|
||||
sources/System/Collision/CollisionSystem.cpp
|
||||
sources/Component/IA/IAComponent.hpp
|
||||
sources/Component/IA/IAComponent.cpp
|
||||
)
|
||||
|
||||
add_executable(bomberman
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
/*
|
||||
** EPITECH PROJECT, 2021
|
||||
** Bomberman
|
||||
** File description:
|
||||
** IAComponent
|
||||
*/
|
||||
|
||||
#include "IAComponent.hpp"
|
||||
#include <lua.hpp>
|
||||
|
||||
namespace BBM
|
||||
{
|
||||
IAComponent::IAComponent(WAL::Entity &entity, std::string scriptPath)
|
||||
: Component(entity),
|
||||
_scriptPath(scriptPath)
|
||||
{ }
|
||||
|
||||
IAComponent::IAComponent(WAL::Entity &entity)
|
||||
: Component(entity),
|
||||
_scriptPath()
|
||||
{ }
|
||||
|
||||
WAL::Component *IAComponent::clone(WAL::Entity &entity) const
|
||||
{
|
||||
return new IAComponent(entity);
|
||||
}
|
||||
|
||||
Vector3f IAComponent::getPosition(void) const
|
||||
{
|
||||
return (this->_pos);
|
||||
}
|
||||
|
||||
void IAComponent::setPosition(Vector3f &pos)
|
||||
{
|
||||
this->_pos = pos;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
/*
|
||||
** EPITECH PROJECT, 2021
|
||||
** Bomberman
|
||||
** File description:
|
||||
** IAComponent
|
||||
*/
|
||||
|
||||
#ifndef IACOMPONENT_HPP_
|
||||
#define IACOMPONENT_HPP_
|
||||
|
||||
#include "Component/Component.hpp"
|
||||
#include "Entity/Entity.hpp"
|
||||
#include "Models/Vector3.hpp"
|
||||
|
||||
namespace BBM
|
||||
{
|
||||
class IAComponent : public WAL::Component
|
||||
{
|
||||
private:
|
||||
|
||||
Vector3f _pos;
|
||||
const std::string _scriptPath;
|
||||
|
||||
public:
|
||||
|
||||
//! @brief get IA Position
|
||||
Vector3f getPosition(void) const;
|
||||
|
||||
//! @param pos Position of the player
|
||||
//! @brief set IA position
|
||||
void setPosition(Vector3f &);
|
||||
|
||||
//! @inherit
|
||||
WAL::Component *clone(WAL::Entity &entity) const override;
|
||||
|
||||
//! @brief A IA component can't be instantiated, it should be derived.
|
||||
explicit IAComponent(WAL::Entity &entity);
|
||||
|
||||
//! @brief Constructor
|
||||
IAComponent(WAL::Entity &entity, std::string scripPath);
|
||||
|
||||
//! @brief A IA component can't be instantiated, it should be derived.
|
||||
IAComponent(const IAComponent &) = default;
|
||||
|
||||
//! @brief default destructor
|
||||
~IAComponent() override = default;
|
||||
|
||||
//! @brief A IA component can't be assigned
|
||||
IAComponent &operator=(const IAComponent &) = delete;
|
||||
protected:
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
#endif /* !IACOMPONENT_HPP_ */
|
||||
Reference in New Issue
Block a user