Orxonox  0.0.5 Codename: Arcturus
PacmanGhost.h
Go to the documentation of this file.
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  * Marc Dreher
24  * Co-authors:
25  * ..
26  *
27  */
28 
29 #ifndef _PacmanGhost_H__
30 #define _PacmanGhost_H__
31 
32 #include "OrxonoxPrereqs.h"
33 
34 #include "core/XMLPort.h"
35 
37 
38 namespace orxonox {
39 
41  {
42  public:
43  PacmanGhost(Context* context);
44  virtual ~PacmanGhost();
45 
46  virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
47  virtual void tick(float dt);
48 
49  void move(float dt, Vector3 actuelposition, Vector3 velocity);
50 
51  void resetGhost();
52 
53  void changewith(PacmanGhost* otherghost);
54  void levelupvelo();
55 
56  bool findpos(Vector3 one, Vector3 other);
57  void changemovability();
58  bool dontmove = false;
59 
60  private:
61  int decision = 0;
62  Vector3 resetposition = Vector3(0,10,15);
63  Vector3 velocity;
64  int speed = 20;
65 
66  Vector3 actuelposition;
67  bool ismoving = false;
68  int target_x = 0;
69  int target_z = 0;
70  bool lockmove = false;
71 
72  void setnewTarget(int firstdec);
73  void setnewTarget(int firstdec, int seconddec);
74  void setnewTarget(int firstdec, int seconddec, int thirddec);
75  void setnewTarget(int firstdec, int seconddec, int thirddec, int fourthdec);
76  };
77 
78 }
79 
80 #endif
Vector3 actuelposition
Definition: PacmanGhost.h:66
Declaration of the XMLPort helper classes and macros.
xmlelement
Definition: Super.h:519
Definition: PacmanGhost.h:40
Die Wagnis Klasse hat die folgenden Aufgaben:
Definition: ApplicationPaths.cc:66
Mode
Definition: CorePrereqs.h:102
Vector3 velocity
Definition: PacmanGhost.h:63
Shared library macros, enums, constants and forward declarations for the orxonox library ...
Definition: Context.h:45
#define _OrxonoxExport
Definition: OrxonoxPrereqs.h:60
The ControllableEntity is derived from the orxonox::MobileEntity.
Definition: ControllableEntity.h:48