supertux
src
object
light.hpp
1
// SuperTux
2
// Copyright (C) 2006 Matthias Braun <matze@braunis.de>
3
//
4
// This program is free software: you can redistribute it and/or modify
5
// it under the terms of the GNU General Public License as published by
6
// the Free Software Foundation, either version 3 of the License, or
7
// (at your option) any later version.
8
//
9
// This program is distributed in the hope that it will be useful,
10
// but WITHOUT ANY WARRANTY; without even the implied warranty of
11
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
// GNU General Public License for more details.
13
//
14
// You should have received a copy of the GNU General Public License
15
// along with this program. If not, see <http://www.gnu.org/licenses/>.
16
17
#ifndef HEADER_SUPERTUX_OBJECT_LIGHT_HPP
18
#define HEADER_SUPERTUX_OBJECT_LIGHT_HPP
19
20
#include "math/vector.hpp"
21
#include "sprite/sprite_ptr.hpp"
22
#include "supertux/game_object.hpp"
23
#include "video/color.hpp"
24
25
class
Light
:
public
GameObject
26
{
27
public
:
28
Light
(
const
Vector& center,
const
Color
& color =
Color
(1.0, 1.0, 1.0, 1.0));
29
~
Light
()
override
;
30
virtual
bool
is_saveable
()
const override
{
31
return
false
;
32
}
33
34
virtual
GameObjectClasses
get_class_types
()
const override
{
return
GameObject::get_class_types
().add(
typeid
(
Light
)); }
35
36
virtual
void
update
(
float
dt_sec)
override
;
37
virtual
void
draw
(
DrawingContext
& context)
override
;
38
39
protected
:
40
Vector position;
41
Color
color;
42
SpritePtr sprite;
43
};
44
45
#endif
46
47
/* EOF */
Light
Definition:
light.hpp:25
Light::draw
virtual void draw(DrawingContext &context) override
The GameObject should draw itself onto the provided DrawingContext if this function is called...
Definition:
light.cpp:39
Light::get_class_types
virtual GameObjectClasses get_class_types() const override
List notable classes in inheritance hierarchy of class.
Definition:
light.hpp:34
Light::update
virtual void update(float dt_sec) override
This function is called once per frame and allows the object to update it's state.
Definition:
light.cpp:34
GameObject
This class is responsible for: Updating and drawing the object.
Definition:
game_object.hpp:83
Light::is_saveable
virtual bool is_saveable() const override
Indicates if the object will be saved.
Definition:
light.hpp:30
GameObject::get_class_types
virtual GameObjectClasses get_class_types() const
List notable classes in inheritance hierarchy of class.
Definition:
game_object.cpp:113
Color
Definition:
color.hpp:26
GameObjectClasses
A helper structure to list all the type_indexes of the classes in the type hierarchy of a given class...
Definition:
game_object.hpp:57
DrawingContext
This class provides functions for drawing things on screen.
Definition:
drawing_context.hpp:42
Generated by
1.8.13