X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fscripting%2Fcamera.cpp;h=d50fec297d98878ac4fe759b0e5180bf4c4e0771;hb=08813a74da6ac1fd045a105e4e8105f1d7f716f0;hp=6f6173b1b90924d1bd581ddab5529bc213f3baa6;hpb=5b7f9214cb929399f1a855ef5807018a9447d510;p=supertux.git diff --git a/src/scripting/camera.cpp b/src/scripting/camera.cpp index 6f6173b1b..d50fec297 100644 --- a/src/scripting/camera.cpp +++ b/src/scripting/camera.cpp @@ -1,34 +1,68 @@ -#include +// SuperTux +// Copyright (C) 2006 Matthias Braun +// +// 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 +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// 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, see . -#include -#include -#include "camera.hpp" +#include "object/camera.hpp" -#define NOIMPL printf("%s not implemented.\n", __PRETTY_FUNCTION__); +#include "scripting/camera.hpp" +#include "util/log.hpp" -namespace Scripting +#define NOIMPL log_fatal << __FUNCTION__ << " not implemented." + +namespace Scripting { +Camera::Camera(::Camera* camera) + : camera(camera) +{ } + +Camera::~Camera() +{ } + +void +Camera::reload_config() { - Camera::Camera() - { } - - Camera::~Camera() - { } - - void - Camera::shake(float , float , float ) - { - NOIMPL; - } - - void - Camera::set_pos(float , float ) - { - NOIMPL; + camera->reload_config(); +} + +void +Camera::shake(float speed, float x, float y) +{ + camera->shake(speed, x, y); +} + +void +Camera::set_pos(float , float ) +{ +} + +void +Camera::set_mode(const std::string& mode) +{ + if(mode == "normal") { + camera->mode = ::Camera::NORMAL; + } else if(mode == "manual") { + camera->mode = ::Camera::MANUAL; + } else { + log_fatal << "Camera mode '" << mode << "' unknown."; } +} - void - Camera::set_mode(const std::string& ) - { - NOIMPL; - } +void +Camera::scroll_to(float x, float y, float scrolltime) +{ + camera->scroll_to(Vector(x, y), scrolltime); } +} + +/* EOF */