X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fobject%2Fthunderstorm.cpp;h=7ebc16d7313b62fd51ccecb969bf0be8b20b44dd;hb=f54cc265c8d680bdf5da5fd962a28c2d70efd37a;hp=4e761a11ccc4280aa9b8276f2541b2658a3d9626;hpb=889e4b217757d361c8e5633480e8a1e2e2c7dbe4;p=supertux.git diff --git a/src/object/thunderstorm.cpp b/src/object/thunderstorm.cpp index 4e761a11c..7ebc16d73 100644 --- a/src/object/thunderstorm.cpp +++ b/src/object/thunderstorm.cpp @@ -1,12 +1,10 @@ -// $Id$ -// // SuperTux - Thunderstorm Game Object // 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 @@ -14,35 +12,30 @@ // 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 "object/thunderstorm.hpp" -#include "thunderstorm.hpp" -#include "scripting/squirrel_util.hpp" #include "audio/sound_manager.hpp" -#include "video/drawing_context.hpp" -#include "object_factory.hpp" #include "object/electrifier.hpp" - -#include -#include -#include "main.hpp" -#include "resources.hpp" -#include "sector.hpp" -#include "gettext.hpp" -#include "object/player.hpp" -#include "lisp/list_iterator.hpp" -#include "log.hpp" +#include "scripting/squirrel_util.hpp" +#include "supertux/globals.hpp" +#include "supertux/object_factory.hpp" +#include "supertux/sector.hpp" +#include "util/reader.hpp" namespace { - const float LIGHTNING_DELAY = 2.0f; - const float FLASH_DISPLAY_TIME = 0.1f; +const float LIGHTNING_DELAY = 2.0f; +const float FLASH_DISPLAY_TIME = 0.1f; } -Thunderstorm::Thunderstorm(const lisp::Lisp& reader) - : running(true), interval(10.0f), layer(LAYER_BACKGROUNDTILES-1) +Thunderstorm::Thunderstorm(const Reader& reader) : + running(true), + interval(10.0f), + layer(LAYER_BACKGROUNDTILES-1), + time_to_thunder(), + time_to_lightning(), + flash_display_timer() { reader.get("name", name); reader.get("running", running); @@ -52,8 +45,8 @@ Thunderstorm::Thunderstorm(const lisp::Lisp& reader) } reader.get("layer", layer); - sound_manager->preload("sounds/explosion.wav"); - sound_manager->preload("sounds/upgrade.wav"); + sound_manager->preload("sounds/thunder.wav"); + sound_manager->preload("sounds/lightning.wav"); if (running) { running = false; // else start() is ignored @@ -92,7 +85,7 @@ void Thunderstorm::expose(HSQUIRRELVM vm, SQInteger table_idx) { if (name == "") return; - Scripting::Thunderstorm* interface = new Scripting::Thunderstorm(this); + scripting::Thunderstorm* interface = new scripting::Thunderstorm(this); expose_object(vm, table_idx, interface, name, true); } @@ -100,7 +93,7 @@ void Thunderstorm::unexpose(HSQUIRRELVM vm, SQInteger table_idx) { if (name == "") return; - Scripting::unexpose_object(vm, table_idx, name); + scripting::unexpose_object(vm, table_idx, name); } void @@ -124,7 +117,7 @@ Thunderstorm::stop() void Thunderstorm::thunder() { - sound_manager->play("sounds/explosion.wav"); + sound_manager->play("sounds/thunder.wav"); } void @@ -137,16 +130,15 @@ Thunderstorm::lightning() void Thunderstorm::flash() { - sound_manager->play("sounds/upgrade.wav"); - sound_manager->play("sounds/explosion.wav"); + sound_manager->play("sounds/lightning.wav"); flash_display_timer.start(FLASH_DISPLAY_TIME); } void Thunderstorm::electrify() { - Sector::current()->add_object(new Electrifier(75, 1421, 0.5)); - Sector::current()->add_object(new Electrifier(76, 1422, 0.5)); + Sector::current()->add_object(new Electrifier(200, 1421, 0.5)); + Sector::current()->add_object(new Electrifier(201, 1422, 0.5)); } -IMPLEMENT_FACTORY(Thunderstorm, "thunderstorm"); +/* EOF */