[Orxonox-commit 6751] r11379 - in code/branches/SuperOrxoBros_FS17: data/levels data/levels/templates src/modules/superorxobros
jkindle at orxonox.net
jkindle at orxonox.net
Thu Mar 23 15:57:16 CET 2017
Author: jkindle
Date: 2017-03-23 15:57:14 +0100 (Thu, 23 Mar 2017)
New Revision: 11379
Added:
code/branches/SuperOrxoBros_FS17/data/levels/SOB.oxw
code/branches/SuperOrxoBros_FS17/data/levels/templates/superorxobrow.oxw
code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBCenterpoint.cc
code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBCenterpoint.h
code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBFigure.cc
code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBFigure.h
code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBPrereqs.h
Log:
added some structire. Next to do, fix Centerpoint and error when compiling
Added: code/branches/SuperOrxoBros_FS17/data/levels/SOB.oxw
===================================================================
--- code/branches/SuperOrxoBros_FS17/data/levels/SOB.oxw (rev 0)
+++ code/branches/SuperOrxoBros_FS17/data/levels/SOB.oxw 2017-03-23 14:57:14 UTC (rev 11379)
@@ -0,0 +1,64 @@
+<LevelInfo
+ name = "SOOOOB"
+ description = "Level for the coding tutorial."
+ tags = "minigame"
+ screenshot = "codingtutorial.png"
+ startingships = "spaceshipassff, spaceshipghost, spaceshipspacecruiser"
+/>
+
+<?lua
+ include("HUDTemplates3.oxo")
+ include("stats.oxo")
+ include("templates/spaceshipAssff.oxt")
+
+?>
+
+<Level plugins = "superorxobros" gametype="SOB">
+
+
+ <?lua include("includes/notifications.oxi") ?>
+
+ <Scene
+ ambientlight = "0.5, 0.5, 0.5"
+ skybox = "Orxonox/skyBoxBasic"
+ >
+
+
+
+ <Light type=directional position="0,0,0" direction="0.253, 0.593, -0.765" diffuse="1.0, 0.9, 0.9, 1.0" specular="1.0, 0.9, 0.9, 1.0" />
+ <SpawnPoint position="991.729, -110.11, 435.404" orientation="0.534038, 0.563456, 0.212168, 0.593553" spawnclass=SpaceShip pawndesign=shipselection />
+
+
+
+ <MovableEntity rotationrate=5 rotationaxis="0,0,1">
+ <attached>
+ <SOBCenterpoint>
+ <attached>
+ <Model position="0,0,60" mesh="cube.mesh" scale3D="105,1,1" />
+ <Model position="0,0,-60" mesh="cube.mesh" scale3D="105,1,1" />
+
+ <ParticleSpawner name=scoreeffect_right position="120,0, 45" source="Orxonox/sparks2" lifetime=0.1 autostart=0 />
+ <ParticleSpawner name=scoreeffect_right position="120,0, 30" source="Orxonox/BigExplosion1part2" lifetime=3.0 autostart=0 />
+ <ParticleSpawner name=scoreeffect_right position="120,0, 15" source="Orxonox/sparks2" lifetime=0.1 autostart=0 />
+ <ParticleSpawner name=scoreeffect_right position="120,0, 0" source="Orxonox/BigExplosion1part2" lifetime=0.1 autostart=0 />
+ <ParticleSpawner name=scoreeffect_right position="120,0,-15" source="Orxonox/sparks2" lifetime=0.1 autostart=0 />
+ <ParticleSpawner name=scoreeffect_right position="120,0,-30" source="Orxonox/BigExplosion1part2" lifetime=3.0 autostart=0 />
+ <ParticleSpawner name=scoreeffect_right position="120,0,-45" source="Orxonox/sparks2" lifetime=0.1 autostart=0 />
+
+ <ParticleSpawner name=scoreeffect_left position="-120,0, 45" source="Orxonox/sparks2" lifetime=0.1 autostart=0 />
+ <ParticleSpawner name=scoreeffect_left position="-120,0, 30" source="Orxonox/BigExplosion1part2" lifetime=3.0 autostart=0 />
+ <ParticleSpawner name=scoreeffect_left position="-120,0, 15" source="Orxonox/sparks2" lifetime=0.1 autostart=0 />
+ <ParticleSpawner name=scoreeffect_left position="-120,0, 0" source="Orxonox/BigExplosion1part2" lifetime=0.1 autostart=0 />
+ <ParticleSpawner name=scoreeffect_left position="-120,0,-15" source="Orxonox/sparks2" lifetime=0.1 autostart=0 />
+ <ParticleSpawner name=scoreeffect_left position="-120,0,-30" source="Orxonox/BigExplosion1part2" lifetime=3.0 autostart=0 />
+ <ParticleSpawner name=scoreeffect_left position="-120,0,-45" source="Orxonox/sparks2" lifetime=0.1 autostart=0 />
+
+ </attached>
+ </SOBCenterpoint>
+ </attached>
+ </MovableEntity>
+
+
+
+ </Scene>
+</Level>
Added: code/branches/SuperOrxoBros_FS17/data/levels/templates/superorxobrow.oxw
===================================================================
--- code/branches/SuperOrxoBros_FS17/data/levels/templates/superorxobrow.oxw (rev 0)
+++ code/branches/SuperOrxoBros_FS17/data/levels/templates/superorxobrow.oxw 2017-03-23 14:57:14 UTC (rev 11379)
@@ -0,0 +1,87 @@
+<LevelInfo
+ name = "Superorxobros"
+ description = "Pong in space!"
+ tags = "minigame"
+ screenshot = "pong.png"
+/>
+
+<?lua
+ include("HUDTemplates3.oxo")
+ include("stats.oxo")
+ include("pongHUD.oxo")
+ include("templates/lodInformation.oxt")
+?>
+
+
+
+
+
+
+
+<Level
+ plugins = "superorxobros"
+ gametype = "Deathmatch"
+>
+
+
+
+ <Scene
+ ambientlight = "0.5, 0.5, 0.5"
+ skybox = "Orxonox/skyBoxBasic"
+ >
+ <Light type=directional position="0,0,0" direction="0.253, 0.593, -0.765" diffuse="1.0, 0.9, 0.9, 1.0" specular="1.0, 0.9, 0.9, 1.0" />
+
+ <SpawnPoint position="991.729, -110.11, 435.404" orientation="0.534038, 0.563456, 0.212168, 0.593553" />
+
+ <MovableEntity rotationrate=5 rotationaxis="0,0,1">
+ <attached>
+ <SOBCenterpoint name=pongcenter dimension="200,120" balltemplate=pongball battemplate=pongbat ballspeed=200 ballaccfactor=1.0 batspeed=130 batlength=0.25>
+ <attached>
+ <Model position="0,0,60" mesh="cube.mesh" scale3D="105,1,1" />
+ <Model position="0,0,-60" mesh="cube.mesh" scale3D="105,1,1" />
+
+ <ParticleSpawner name=scoreeffect_right position="120,0, 45" source="Orxonox/sparks2" lifetime=0.1 autostart=0 />
+ <ParticleSpawner name=scoreeffect_right position="120,0, 30" source="Orxonox/BigExplosion1part2" lifetime=3.0 autostart=0 />
+ <ParticleSpawner name=scoreeffect_right position="120,0, 15" source="Orxonox/sparks2" lifetime=0.1 autostart=0 />
+ <ParticleSpawner name=scoreeffect_right position="120,0, 0" source="Orxonox/BigExplosion1part2" lifetime=0.1 autostart=0 />
+ <ParticleSpawner name=scoreeffect_right position="120,0,-15" source="Orxonox/sparks2" lifetime=0.1 autostart=0 />
+ <ParticleSpawner name=scoreeffect_right position="120,0,-30" source="Orxonox/BigExplosion1part2" lifetime=3.0 autostart=0 />
+ <ParticleSpawner name=scoreeffect_right position="120,0,-45" source="Orxonox/sparks2" lifetime=0.1 autostart=0 />
+
+ <ParticleSpawner name=scoreeffect_left position="-120,0, 45" source="Orxonox/sparks2" lifetime=0.1 autostart=0 />
+ <ParticleSpawner name=scoreeffect_left position="-120,0, 30" source="Orxonox/BigExplosion1part2" lifetime=3.0 autostart=0 />
+ <ParticleSpawner name=scoreeffect_left position="-120,0, 15" source="Orxonox/sparks2" lifetime=0.1 autostart=0 />
+ <ParticleSpawner name=scoreeffect_left position="-120,0, 0" source="Orxonox/BigExplosion1part2" lifetime=0.1 autostart=0 />
+ <ParticleSpawner name=scoreeffect_left position="-120,0,-15" source="Orxonox/sparks2" lifetime=0.1 autostart=0 />
+ <ParticleSpawner name=scoreeffect_left position="-120,0,-30" source="Orxonox/BigExplosion1part2" lifetime=3.0 autostart=0 />
+ <ParticleSpawner name=scoreeffect_left position="-120,0,-45" source="Orxonox/sparks2" lifetime=0.1 autostart=0 />
+
+<!-- TODO: Create a Pong Score Sound and include it here.
+This WorldSound works, but doesn't make sense, since it is played together with ambient/moodDependedDirectory/Ganymede.ogg -->
+ <!--WorldSound name="scoreSound" position="0,0,0" source="sounds/PongScore_cut.ogg" >
+ <events>
+ <play>
+ <EventListener event=pongcenter />
+ </play>
+ </events>
+ </WorldSound-->
+
+ <?lua
+ for i = 1, 15, 1 do
+ ?>
+ <ParticleSpawner name=scoreeffect_center position="<?lua print(math.random() * 200 - 100) ?>,0,<?lua print(math.random() * 120 - 60) ?>" source="Orxonox/sparks2" lifetime=0.02 autostart=0 startdelay=<?lua print(math.random() * 0.7) ?> />
+ <?lua end ?>
+
+ </attached>
+ </SOBCenterpoint>
+ </attached>
+ </MovableEntity>
+
+
+
+
+
+
+
+ </Scene>
+</Level>
Added: code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBCenterpoint.cc
===================================================================
--- code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBCenterpoint.cc (rev 0)
+++ code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBCenterpoint.cc 2017-03-23 14:57:14 UTC (rev 11379)
@@ -0,0 +1,86 @@
+/*
+ * ORXONOX - the hottest 3D action shooter ever to exist
+ * > www.orxonox.net <
+ *
+ *
+ * License notice:
+ *
+ * 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 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, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * Author:
+ * Fabian 'x3n' Landau
+ * Co-authors:
+ * ...
+ *
+ */
+
+/**
+ @file PongCenterpoint.cc
+ @brief Implementation of the PongCenterpoint class.
+*/
+
+#include "SOBCenterpoint.h"
+
+#include "core/CoreIncludes.h"
+#include "core/XMLPort.h"
+
+#include "SOB.h"
+
+namespace orxonox
+{
+ RegisterClass(SOBCenterpoint);
+
+ /**
+ @brief
+ Constructor. Registers and initializes the object and checks whether the gametype is actually Pong.
+ */
+ SOBCenterpoint::SOBCenterpoint(Context* context) : StaticEntity(context)
+ {
+ RegisterObject(SOBCenterpoint);
+
+
+ this->checkGametype();
+ }
+
+ /**
+ @brief
+ Method to create a PongCenterpoint through XML.
+ */
+ void SOBCenterpoint::XMLPort(Element& xmlelement, XMLPort::Mode mode)
+ {
+ SUPER(SOBCenterpoint, XMLPort, xmlelement, mode);
+
+ //XMLPortParam(SOBCenterpoint, "dimension", setFieldDimension, getFieldDimension, xmlelement, mode);
+ //XMLPortParam(SOBCenterpoint, "balltemplate", setBalltemplate, getBalltemplate, xmlelement, mode);
+ // XMLPortParam(SOBCenterpoint, "battemplate", setBattemplate, getBattemplate, xmlelement, mode);
+ // XMLPortParam(SOBCenterpoint, "ballspeed", setBallSpeed, getBallSpeed, xmlelement, mode);
+ // XMLPortParam(SOBCenterpoint, "ballaccfactor", setBallAccelerationFactor, getBallAccelerationFactor, xmlelement, mode);
+ // XMLPortParam(SOBCenterpoint, "batspeed", setBatSpeed, getBatSpeed, xmlelement, mode);
+ // XMLPortParam(SOBCenterpoint, "batlength", setBatLength, getBatLength, xmlelement, mode);
+ }
+
+ /**
+ @brief
+ Checks whether the gametype is Pong and if it is, sets its centerpoint.
+ */
+ void SOBCenterpoint::checkGametype()
+ {
+ if (this->getGametype() != nullptr && this->getGametype()->isA(Class(SOB)))
+ {
+ SOB* SOBGametype = orxonox_cast<SOB*>(this->getGametype());
+ SOBGametype->setCenterpoint(this);
+ }
+ }
+}
Added: code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBCenterpoint.h
===================================================================
--- code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBCenterpoint.h (rev 0)
+++ code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBCenterpoint.h 2017-03-23 14:57:14 UTC (rev 11379)
@@ -0,0 +1,67 @@
+/*
+/*
+ * ORXONOX - the hottest 3D action shooter ever to exist
+ * > www.orxonox.net <
+ *
+ *
+ * License notice:
+ *
+ * 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 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, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * Author:
+ * Fabian 'x3n' Landau
+ * Co-authors:
+ * ...
+ *
+ */
+
+/**
+ @file PongCenterpoint.h
+ @brief Declaration of the PongCenterpoint class.
+ @ingroup Pong
+*/
+
+#ifndef _SOBCenterpoint_H__
+#define _SOBCenterpoint_H__
+
+#include "superorxobros/SOBPrereqs.h"
+
+#include <string>
+
+#include <util/Math.h>
+
+#include "worldentities/StaticEntity.h"
+
+namespace orxonox
+{
+
+
+
+ class _SOBExport SOBCenterpoint : public StaticEntity
+ {
+ public:
+ SOBCenterpoint(Context* context); //!< Constructor. Registers and initializes the object and checks whether the gametype is actually Pong.
+ virtual ~SOBCenterpoint() {}
+
+ virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode) override; //!< Method to create a PongCenterpoint through XML.
+
+
+
+ private:
+ void checkGametype(); //!< Checks whether the gametype is Pong and if it is, sets its centerpoint.
+ };
+}
+
+#endif /* _SOBCenterpoint_H__ */
Added: code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBFigure.cc
===================================================================
--- code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBFigure.cc (rev 0)
+++ code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBFigure.cc 2017-03-23 14:57:14 UTC (rev 11379)
@@ -0,0 +1,175 @@
+/*
+ * ORXONOX - the hottest 3D action shooter ever to exist
+ * > www.orxonox.net <
+ *
+ *
+ * License notice:
+ *
+ * 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 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, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * Author:
+ * Fabien Vultier
+ * Co-authors:
+ * ...
+ *
+ */
+
+/**
+ @file SOBFigure.cc
+ @brief This class represents your figure when you play the minigame. Here the movement of the figure, activating items, ... are handled.
+*/
+
+#include "SOBFigure.h"
+
+#include "core/CoreIncludes.h"
+#include "core/XMLPort.h"
+#include "graphics/Model.h"
+
+
+namespace orxonox
+{
+ RegisterClass(SOBFigure);
+
+ SOBFigure::SOBFigure(Context* context) : ControllableEntity(context)
+ {
+ RegisterObject(SOBFigure);
+
+ // initialize variables
+
+ moveUpPressed_ = false;
+ moveDownPressed_ = false;
+ moveLeftPressed_ = false;
+ moveDownPressed_ = false;
+ firePressed_ = false;
+ timeSinceLastFire_ = 0.0;
+
+ gravityAcceleration_ = 8.0;
+
+ dead_ = false;
+ }
+
+ void SOBFigure::XMLPort(Element& xmlelement, XMLPort::Mode mode)
+ {
+ SUPER(SOBFigure, XMLPort, xmlelement, mode);
+
+ }
+
+ void SOBFigure::tick(float dt)
+ {
+ SUPER(SOBFigure, tick, dt);
+
+ if (hasLocalController())
+ {
+ timeSinceLastFire_ += dt;
+
+ // Move up/down
+ Vector3 velocity = getVelocity();
+
+
+
+ velocity.z -= gravityAcceleration_;
+
+
+
+
+ // Move left/right
+ if (dead_ == false)
+ {
+ if (moveRightPressed_)
+ velocity.x = 75;
+ else if (moveLeftPressed_)
+ velocity.x = 75;
+ else
+ velocity.x = 0;
+ }
+ else
+ {
+ velocity.x = 0.0;
+ }
+
+
+
+ setVelocity(velocity);
+
+
+
+ }
+
+ // Move through the left and right screen boundaries
+
+ //setPosition(position);
+
+ // Reset key variables
+ moveUpPressed_ = false;
+ moveDownPressed_ = false;
+ moveLeftPressed_ = false;
+ moveDownPressed_ = false;
+
+ }
+
+
+
+
+
+ /* void SOBFigure::CollisionWithEnemy(SOBEnemy* enemy)
+ {
+ if (rocketActive_ == nullptr && propellerActive_ == nullptr && shieldActive_ == nullptr)
+ {
+ dead_ = true;
+ }
+ }*/
+
+
+
+
+
+
+ void SOBFigure::moveFrontBack(const Vector2& value)
+ {
+ if (value.x > 0)
+ {
+ moveUpPressed_ = true;
+ moveDownPressed_ = false;
+ }
+ else
+ {
+ moveUpPressed_ = false;
+ moveDownPressed_ = true;
+ }
+ }
+
+ void SOBFigure::moveRightLeft(const Vector2& value)
+ {
+ if (value.x > 0)
+ {
+ moveLeftPressed_ = false;
+ moveRightPressed_ = true;
+ }
+ else
+ {
+ moveLeftPressed_ = true;
+ moveRightPressed_ = false;
+ }
+ }
+
+
+
+
+
+ void SOBFigure::fired(unsigned int firemode)
+ {
+ firePressed_ = true;
+ }
+}
Added: code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBFigure.h
===================================================================
--- code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBFigure.h (rev 0)
+++ code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBFigure.h 2017-03-23 14:57:14 UTC (rev 11379)
@@ -0,0 +1,74 @@
+/*
+ * ORXONOX - the hottest 3D action shooter ever to exist
+ * > www.orxonox.net <
+ *
+ *
+ * License notice:
+ *
+ * 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 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, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * Author:
+ * Fabien Vultier
+ * Co-authors:
+ * ...
+ *
+ */
+
+#ifndef _SOBFigure_H__
+#define _SOBFigure_H__
+
+#include "superorxobros/SOBPrereqs.h"
+#include "worldentities/ControllableEntity.h"
+
+namespace orxonox
+{
+ class _SOBExport SOBFigure : public ControllableEntity
+ {
+ public:
+ SOBFigure(Context* context); //!< Constructor. Registers and initializes the object.
+ virtual ~SOBFigure() {}
+ virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode) override;
+ virtual void tick(float dt) override;
+ virtual void moveFrontBack(const Vector2& value) override; //!< Overloaded the function to steer the figure up and down.
+ virtual void moveRightLeft(const Vector2& value) override; //!< Overloaded the function to steer the figure up and down.
+
+
+ virtual void fired(unsigned int firemode) override;
+
+ //virtual void CollisionWithEnemy(SOBEnemy* enemy);
+
+
+
+
+ bool dead_;
+
+
+ private:
+
+ bool moveUpPressed_;
+ bool moveDownPressed_;
+ bool moveLeftPressed_;
+ bool moveRightPressed_;
+ bool firePressed_;
+ float gravityAcceleration_;
+ float timeSinceLastFire_;
+
+
+
+
+ };
+}
+
+#endif /* _SOBFigure_H__ */
Added: code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBPrereqs.h
===================================================================
--- code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBPrereqs.h (rev 0)
+++ code/branches/SuperOrxoBros_FS17/src/modules/superorxobros/SOBPrereqs.h 2017-03-23 14:57:14 UTC (rev 11379)
@@ -0,0 +1,83 @@
+/*
+ * ORXONOX - the hottest 3D action shooter ever to exist
+ * > www.orxonox.net <
+ *
+ *
+ * License notice:
+ *
+ * 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 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, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * Author:
+ * Reto Grieder
+ * Co-authors:
+ * ...
+ *
+ */
+
+/**
+ at file
+ at brief
+ Shared library macros, enums, constants and forward declarations for the pong module
+*/
+
+#ifndef _SOBPrereqs_H__
+#define _SOBPrereqs_H__
+
+#include "OrxonoxConfig.h"
+#include "OrxonoxPrereqs.h"
+
+//-----------------------------------------------------------------------
+// Shared library settings
+//-----------------------------------------------------------------------
+
+#if defined(ORXONOX_PLATFORM_WINDOWS) && !defined(SOB_STATIC_BUILD)
+# ifdef SOB_SHARED_BUILD
+# define _SOBExport __declspec(dllexport)
+# else
+# if defined( __MINGW32__ )
+# define _SOBExport
+# else
+# define _SOBExport __declspec(dllimport)
+# endif
+# endif
+# define _SOBPrivate
+#elif defined (ORXONOX_GCC_VISIBILITY)
+# define _SOBExport __attribute__ ((visibility("default")))
+# define _SOBPrivate __attribute__ ((visibility("hidden")))
+#else
+# define _SOBExport
+# define _SOBPrivate
+#endif
+
+//-----------------------------------------------------------------------
+// Forward declarations
+//-----------------------------------------------------------------------
+
+namespace orxonox
+{
+ /* class Pong;
+ class PongAI;
+ class PongBall;
+ class PongBat;
+ class PongBot;*/
+ class SOBCenterpoint;
+
+ class SOB;
+ class SOBFigure;
+ /*
+ class PongScore;*/
+}
+
+#endif /* _SOBPrereqs_H__ */
More information about the Orxonox-commit
mailing list