X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fworldmap%2Fspecial_tile.cpp;h=d804496ac1d79010f45f3dc6ad73d4cf31d95a1d;hb=50d202ea82e3025ade7ef464f33417d0cb6d5caa;hp=c855d05a937feeb04edbe3cd35d0c2f20bd6e553;hpb=cb941f239a04ee0588c99bfcdcd6aff62e1fbc98;p=supertux.git diff --git a/src/worldmap/special_tile.cpp b/src/worldmap/special_tile.cpp index c855d05a9..d804496ac 100644 --- a/src/worldmap/special_tile.cpp +++ b/src/worldmap/special_tile.cpp @@ -1,13 +1,11 @@ -// $Id$ -// // SuperTux // Copyright (C) 2004 Ingo Ruhnke // Copyright (C) 2006 Christoph Sommer // -// This program is free software; you can redistribute it and/or -// modify it under the terms of the GNU General Public License -// as published by the Free Software Foundation; either version 2 -// of the License, or (at your option) any later version. +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -15,41 +13,45 @@ // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License -// along with this program; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +// along with this program. If not, see . #include -#include "worldmap/special_tile.hpp" -#include "sprite/sprite_manager.hpp" #include "sprite/sprite.hpp" +#include "sprite/sprite_manager.hpp" +#include "util/reader.hpp" #include "video/drawing_context.hpp" +#include "worldmap/special_tile.hpp" -namespace WorldMapNS -{ +namespace worldmap { -SpecialTile::SpecialTile(const lisp::Lisp* lisp) - : passive_message(false), invisible(false), - apply_action_north(true), apply_action_east(true), - apply_action_south(true), apply_action_west(true) +SpecialTile::SpecialTile(const Reader& lisp) : + pos(), + sprite(), + map_message(), + passive_message(false), + script(), + invisible(false), + apply_action_north(true), + apply_action_east(true), + apply_action_south(true), + apply_action_west(true) { - lisp->get("x", pos.x); - lisp->get("y", pos.y); - lisp->get("invisible-tile", invisible); - + lisp.get("x", pos.x); + lisp.get("y", pos.y); + lisp.get("invisible-tile", invisible); + if(!invisible) { std::string spritefile = ""; - lisp->get("sprite", spritefile); - sprite.reset(sprite_manager->create(spritefile)); + lisp.get("sprite", spritefile); + sprite = sprite_manager->create(spritefile); } - lisp->get("map-message", map_message); - lisp->get("passive-message", passive_message); - lisp->get("script", script); - lisp->get("teleport-to-x", teleport_dest.x); - lisp->get("teleport-to-y", teleport_dest.y); + lisp.get("map-message", map_message); + lisp.get("passive-message", passive_message); + lisp.get("script", script); std::string apply_direction; - lisp->get("apply-to-direction", apply_direction); + lisp.get("apply-to-direction", apply_direction); if(!apply_direction.empty()) { apply_action_north = false; apply_action_south = false; @@ -86,3 +88,4 @@ SpecialTile::update(float ) } +/* EOF */