#ifndef EDITSCENE_CHARACTERSPAWNEREDITOR_HPP
#define EDITSCENE_CHARACTERSPAWNEREDITOR_HPP
#pragma once

#include "ComponentEditor.hpp"
#include "../components/CharacterSpawner.hpp"
#include <OgreSceneManager.h>

/**
 * @brief Editor panel for CharacterSpawnerComponent.
 */
class CharacterSpawnerEditor
	: public ComponentEditor<CharacterSpawnerComponent> {
public:
	explicit CharacterSpawnerEditor(Ogre::SceneManager *sceneMgr);

	const char *getName() const override
	{
		return "Character Spawner";
	}

protected:
	bool renderComponent(flecs::entity entity,
			     CharacterSpawnerComponent &spawner) override;

private:
	Ogre::SceneManager *m_sceneMgr;
};

#endif // EDITSCENE_CHARACTERSPAWNEREDITOR_HPP
