Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/pickupsFS14/src/modules/jump/JumpPlatformTimer.h @ 10066

Last change on this file since 10066 was 10050, checked in by fvultier, 11 years ago

Added a whole bunch of code

File size: 2.9 KB
Line 
1/*
2 *   ORXONOX - the hottest 3D action shooter ever to exist
3 *                    > www.orxonox.net <
4 *
5 *
6 *   License notice:
7 *
8 *   This program is free software; you can redistribute it and/or
9 *   modify it under the terms of the GNU General Public License
10 *   as published by the Free Software Foundation; either version 2
11 *   of the License, or (at your option) any later version.
12 *
13 *   This program is distributed in the hope that it will be useful,
14 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
15 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 *   GNU General Public License for more details.
17 *
18 *   You should have received a copy of the GNU General Public License
19 *   along with this program; if not, write to the Free Software
20 *   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
21 *
22 *   Author:
23 *      Fabian 'x3n' Landau
24 *   Co-authors:
25 *      ...
26 *
27 */
28
29/**
30    @file JumpPlatformTimer.h
31    @brief Declaration of the JumpPlatformTimer class.
32    @ingroup Jump
33*/
34
35#ifndef _JumpPlatformTimer_H__
36#define _JumpPlatformTimer_H__
37
38#include "jump/JumpPrereqs.h"
39
40#include "util/Math.h"
41
42#include "worldentities/MovableEntity.h"
43#include "graphics/ParticleSpawner.h"
44
45
46namespace orxonox
47{
48
49    /**
50    @brief
51        This class manages the ball for @ref orxonox::Jump "Jump".
52
53        It is responsible for both the movement of the ball in the x,z-plane as well as its interaction with the boundaries of the playing field (defined by the @ref orxonox::JumpCenterpoint "JumpCenterpoint") and the @ref orxonox::JumpFigure "JumpFigures". Or more precisely, it makes the ball bounce off then upper and lower delimiters of the playing field, it makes the ball bounce off the bats and also detects when a player scores and takes appropriate measures.
54
55    @author
56        Fabian 'x3n' Landau
57
58    @ingroup Jump
59    */
60    class _JumpExport JumpPlatformTimer : public JumpPlatform
61    {
62        public:
63            JumpPlatformTimer(Context* context);
64            virtual ~JumpPlatformTimer();
65
66            virtual void tick(float dt);
67            virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
68
69            virtual void setProperties(float time);
70            virtual bool isActive(void);
71            virtual void touchFigure();
72
73            void setEffectPath(const std::string& effectPath)
74                { this->effectPath_ = effectPath; }
75
76            const std::string& getEffectPath() const
77                { return this->effectPath_; }
78
79            void setEffectStartTime(const float effectStartTime)
80                { this->effectStartTime_ = effectStartTime; }
81
82            const float getEffectStartTime() const
83                { return this->effectStartTime_; }
84
85        protected:
86            float time_;
87            ParticleSpawner* particleSpawner;
88            std::string effectPath_;
89            float effectStartTime_;
90    };
91}
92
93#endif /* _JumpPlatformTimer_H__ */
Note: See TracBrowser for help on using the repository browser.