X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fobject%2Flantern.cpp;h=b041fb89de7b9d64119561fe85a3369068a0c67a;hb=75acd4b141f45e851a492f089aa9ad24a9552409;hp=531ad9599581ed79c5f6a1416f19655322ac0b30;hpb=ed161bf9da56b598f3db3637c6017fa22e9ab0d7;p=supertux.git diff --git a/src/object/lantern.cpp b/src/object/lantern.cpp index 531ad9599..b041fb89d 100644 --- a/src/object/lantern.cpp +++ b/src/object/lantern.cpp @@ -20,10 +20,14 @@ #include #include "lantern.hpp" + #include "sprite/sprite_manager.hpp" #include "object_factory.hpp" #include "badguy/willowisp.hpp" #include "badguy/treewillowisp.hpp" +#include "audio/sound_manager.hpp" +#include "sprite/sprite.hpp" +#include "video/drawing_context.hpp" Lantern::Lantern(const lisp::Lisp& reader) : Rock(reader, "images/objects/lantern/lantern.sprite"), @@ -31,7 +35,7 @@ Lantern::Lantern(const lisp::Lisp& reader) { //get color from lisp std::vector vColor; - reader.get_vector("color", vColor); + reader.get("color", vColor); lightcolor = Color(vColor); lightsprite = sprite_manager->create("images/objects/lightmap_light/lightmap_light.sprite"); lightsprite->set_blend(Blend(GL_SRC_ALPHA, GL_ONE)); @@ -39,6 +43,16 @@ Lantern::Lantern(const lisp::Lisp& reader) sound_manager->preload("sounds/willocatch.wav"); } +Lantern::Lantern(const Vector& pos) + : Rock(pos, "images/objects/lantern/lantern.sprite"), + lightcolor(0.0f, 0.0f, 0.0f) +{ + lightsprite = sprite_manager->create("images/objects/lightmap_light/lightmap_light.sprite"); + lightsprite->set_blend(Blend(GL_SRC_ALPHA, GL_ONE)); + updateColor(); + sound_manager->preload("sounds/willocatch.wav"); +} + Lantern::~Lantern() { delete lightsprite;