#include <moof/math.hh>
#include <moof/script.hh>
#include <moof/settings.hh>
-#include <moof/texture.hh>
+#include <moof/sprite.hh>
#include "Character.hh"
#include "Scene.hh"
Quad(const moof::vector3* vertices[4],
const std::string& texture,
int tileIndex) :
- mTilemap(texture),
+ mTilemap(texture, tileIndex),
mBlending(false),
mFog(false),
mSurface(NONE)
//}
}
- if (!mTilemap.tile_coordinates(tileIndex, mTexCoords))
- {
- moof::log_warning << "no index " << tileIndex <<
- " in texture " << texture << std::endl;
-
- mTexCoords[0] = mTexCoords[1] =
- mTexCoords[3] = mTexCoords[6] = 0.0;
- mTexCoords[2] = mTexCoords[4] =
- mTexCoords[5] = mTexCoords[7] = 1.0;
- }
-
aabb_.enclose_vertices(mVertices, 4);
sphere_.point = aabb_.center();
sphere_.radius = (aabb_.min - sphere_.point).length();
}
//glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
- mTilemap.bind();
-
- glVertexPointer(3, GL_SCALAR, 0, mVertices[0].data());
- glTexCoordPointer(2, GL_SCALAR, 0, mTexCoords);
-
- glDrawArrays(GL_TRIANGLE_FAN, 0, 4);
+ mTilemap.draw(mVertices);
glDisable(GL_BLEND);
glDisable(GL_FOG);
}
- moof::vector3 mVertices[4];
- moof::scalar mTexCoords[8];
+ moof::vector3 mVertices[4];
- moof::texture mTilemap;
+ moof::sprite mTilemap;
bool mBlending;
bool mFog;
- moof::matrix4 mTransform;
- std::string mTexture;
+ moof::matrix4 mTransform;
+ std::string mTexture;
std::list< boost::shared_ptr<impl::Quad> > mObjects;
std::list<moof::line2> mLines;
moof::script::status load(moof::settings& settings, moof::script& script)
{
- std::string path(name());
- if (!resource::find(path))
+ std::string path = moof::resource::find_file("scenes/"+name(), "lua");
+ if (path.empty())
{
script.push("the scene file could not be found");
return moof::script::file_error;
vertices[h][wPlus1] = moof::demote(mTransform *
moof::vector4(wPlus1, h, 0.0, 1.0));
- if (index == moof::texture::no_tile) continue;
+ if (index == moof::image::no_tile) continue;
const moof::vector3* corners[4] = {
&vertices[h][w],