00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #include <config.h>
00017
00018 #include "sprite/sprite.hpp"
00019 #include "sprite/sprite_manager.hpp"
00020 #include "util/reader.hpp"
00021 #include "video/drawing_context.hpp"
00022 #include "worldmap/teleporter.hpp"
00023
00024 namespace worldmap {
00025
00026 Teleporter::Teleporter(const Reader& lisp) :
00027 pos(),
00028 sprite(),
00029 worldmap(),
00030 spawnpoint(),
00031 automatic(false),
00032 message()
00033 {
00034 lisp.get("x", pos.x);
00035 lisp.get("y", pos.y);
00036
00037 std::string spritefile = "";
00038 if (lisp.get("sprite", spritefile)) {
00039 sprite = sprite_manager->create(spritefile);
00040 }
00041
00042 lisp.get("worldmap", worldmap);
00043 lisp.get("spawnpoint", spawnpoint);
00044 lisp.get("automatic", automatic);
00045 lisp.get("message", message);
00046 }
00047
00048 void
00049 Teleporter::draw(DrawingContext& context)
00050 {
00051 if (sprite.get() != 0) sprite->draw(context, pos*32 + Vector(16, 16), LAYER_OBJECTS - 1);
00052 }
00053
00054 void
00055 Teleporter::update(float )
00056 {
00057 }
00058
00059 }
00060
00061