#ifndef _SCENE_HH_
#define _SCENE_HH_
+#include <list>
#include <string>
#include <boost/shared_ptr.hpp>
#include <Moof/Cullable.hh>
#include <Moof/Drawable.hh>
#include <Moof/Resource.hh>
+#include <Moof/Script.hh>
class Character;
public:
- Scene(const std::string& name);
+ explicit Scene(const std::string& name);
static SceneP alloc(const std::string& name)
{
return SceneP(new Scene(name));
}
+ Mf::Script::Status load(Mf::Script& script);
+
void draw(Mf::Scalar alpha) const;
void drawIfVisible(Mf::Scalar alpha, const Mf::Frustum& frustum) const;
+ Mf::Scalar getZCoord(const Mf::Vector2& position) const;
+
+ bool castRay(const Mf::Ray<2>& ray,
+ std::list<Mf::Ray<2>::Intersection>& hits) const;
bool checkForCollision(Character& character);
static std::string getPath(const std::string& name);