diff --git a/data/bowling.projectile b/data/bowling.projectile index f3dba811f..b8f041578 100644 --- a/data/bowling.projectile +++ b/data/bowling.projectile @@ -4,7 +4,7 @@ (name "Bowling") (model "bowling.ac") (mesh "bowling.b3d") - (icon "bowling-icon.rgb") + (icon "bowling-icon.png") (speed 4.0) (min-height 0.2) ; height above terrain below which a ball is ; started to be pulled up diff --git a/data/bubblegum.projectile b/data/bubblegum.projectile index 32b7aa201..76e33d2e3 100644 --- a/data/bubblegum.projectile +++ b/data/bubblegum.projectile @@ -3,7 +3,7 @@ (tuxkart-collectable (name "Bubble Gum") (model "../items/bubblegum.ac") - (icon "bubblegum-icon.rgb") + (icon "bubblegum-icon.png") (speed 50.0) (min-height 0.3) (max-height 1.0) diff --git a/data/cake.projectile b/data/cake.projectile index 2450a931c..57bc8f203 100644 --- a/data/cake.projectile +++ b/data/cake.projectile @@ -3,7 +3,7 @@ (tuxkart-collectable (name "cake") (mesh "cake.b3d") - (icon "cake-icon.rgb") + (icon "cake-icon.png") (speed 50.0) (min-height 0.2) (max-height 1.0) diff --git a/data/plunger.projectile b/data/plunger.projectile index f8b26f4df..9692eda32 100644 --- a/data/plunger.projectile +++ b/data/plunger.projectile @@ -4,7 +4,7 @@ (name "Plunger") (model "plunger.ac") (mesh "plunger.b3d") - (icon "plunger-icon.rgb") + (icon "plunger-icon.png") (speed 35.0) (min-height 0.2) ; height above terrain below which a plunger is ; started to be pulled up diff --git a/src/io/file_manager.cpp b/src/io/file_manager.cpp index 9be052e41..565c7baa2 100644 --- a/src/io/file_manager.cpp +++ b/src/io/file_manager.cpp @@ -233,6 +233,10 @@ bool FileManager::findFile(std::string& full_path, std::string FileManager::getTextureFile(const std::string& FNAME) const { std::string path; + // FIXME: work around when loading and converting tracks: FNAME + // (which is based on an irrlicht return value) contains the + // full path + //if(m_file_system->existFile(FNAME.c_str())) return FNAME; findFile(path, FNAME, m_texture_search_path); return path; } // makeTexturePath diff --git a/src/items/item_manager.cpp b/src/items/item_manager.cpp index 73ce1e8b1..22a95ee63 100644 --- a/src/items/item_manager.cpp +++ b/src/items/item_manager.cpp @@ -136,8 +136,7 @@ void ItemManager::loadDefaultItems() for(std::set::iterator i = files.begin(); i != files.end(); ++i) { - // FIXME: We should try to check the extension, - // i.e. load only .3ds files + if(StringUtils::extension(*i)!="b3d") continue; scene::IMesh *mesh = irr_driver->getAnimatedMesh(*i); if(!mesh) continue; std::string shortName = StringUtils::basename(StringUtils::without_extension(*i)); diff --git a/src/material.cpp b/src/material.cpp index b84381ed2..a34831496 100644 --- a/src/material.cpp +++ b/src/material.cpp @@ -113,7 +113,11 @@ void Material::init(unsigned int index) void Material::install(bool is_full_path) { #ifdef HAVE_IRRLICHT - m_texture = irr_driver->getTexture(file_manager->getTextureFile(m_texname)); + if(m_texname!="") + { + // Avoid irrlicht warning about not being able to load texture. + m_texture = irr_driver->getTexture(file_manager->getTextureFile(m_texname)); + } #else if ( isSphereMap () ) { diff --git a/src/tracks/track.cpp b/src/tracks/track.cpp index 6aca8d5ec..f6562ad67 100644 --- a/src/tracks/track.cpp +++ b/src/tracks/track.cpp @@ -1127,11 +1127,12 @@ void Track::convertTrackToBullet(const scene::IMesh *mesh) } video::SMaterial irrMaterial=mb->getMaterial(); video::ITexture* t=irrMaterial.getTexture(0); - // FIXME: if no material is given, perhaps define a default? + const Material* material=0; TriangleMesh *tmesh = m_track_mesh; if(t) { - material=material_manager->getMaterial(std::string(t->getName().c_str())); + std::string image = std::string(t->getName().c_str()); + material=material_manager->getMaterial(StringUtils::basename(image)); if(material->isZipper()) tmesh = m_non_collision_mesh; }