[Orxonox-commit 7073] r11690 - in code/branches/Presentation_HS17: . data/levels data/overlays src/libraries/core src/libraries/tools src/modules/overlays/hud src/modules/questsystem src/orxonox src/orxonox/controllers src/orxonox/graphics src/orxonox/infos src/orxonox/items src/orxonox/worldentities src/orxonox/worldentities/pawns
patricwi at orxonox.net
patricwi at orxonox.net
Mon Dec 18 12:40:00 CET 2017
Author: patricwi
Date: 2017-12-18 12:40:00 +0100 (Mon, 18 Dec 2017)
New Revision: 11690
Added:
code/branches/Presentation_HS17/data/overlays/HUDTemplate_test.oxo
Removed:
code/branches/Presentation_HS17/data/levels/ArrowLevel.oxw
code/branches/Presentation_HS17/data/levels/scriptableControllerTest.oxw
code/branches/Presentation_HS17/data/levels/scripts/
code/branches/Presentation_HS17/src/modules/overlays/hud/HUDWaypoints.cc
code/branches/Presentation_HS17/src/modules/overlays/hud/HUDWaypoints.h
code/branches/Presentation_HS17/src/orxonox/controllers/ArrowController.cc
code/branches/Presentation_HS17/src/orxonox/controllers/ArrowController.h
code/branches/Presentation_HS17/src/orxonox/controllers/AutonomousDroneController.cc
code/branches/Presentation_HS17/src/orxonox/controllers/AutonomousDroneController.h
code/branches/Presentation_HS17/src/orxonox/controllers/WaypointArrow.cc
code/branches/Presentation_HS17/src/orxonox/controllers/WaypointArrow.h
code/branches/Presentation_HS17/src/orxonox/scriptablecontroller/
code/branches/Presentation_HS17/src/orxonox/worldentities/Arrow.cc
code/branches/Presentation_HS17/src/orxonox/worldentities/Arrow.h
code/branches/Presentation_HS17/src/orxonox/worldentities/AutonomousDrone.cc
code/branches/Presentation_HS17/src/orxonox/worldentities/AutonomousDrone.h
Modified:
code/branches/Presentation_HS17/
code/branches/Presentation_HS17/data/overlays/HUDPickupTemplate.oxo
code/branches/Presentation_HS17/data/overlays/HUDTemplates3.oxo
code/branches/Presentation_HS17/src/libraries/core/BaseObject.h
code/branches/Presentation_HS17/src/libraries/tools/Timer.cc
code/branches/Presentation_HS17/src/libraries/tools/Timer.h
code/branches/Presentation_HS17/src/modules/overlays/hud/CMakeLists.txt
code/branches/Presentation_HS17/src/modules/questsystem/Quest.cc
code/branches/Presentation_HS17/src/orxonox/CMakeLists.txt
code/branches/Presentation_HS17/src/orxonox/Level.cc
code/branches/Presentation_HS17/src/orxonox/Level.h
code/branches/Presentation_HS17/src/orxonox/controllers/CMakeLists.txt
code/branches/Presentation_HS17/src/orxonox/graphics/Model.cc
code/branches/Presentation_HS17/src/orxonox/infos/GametypeInfo.cc
code/branches/Presentation_HS17/src/orxonox/infos/GametypeInfo.h
code/branches/Presentation_HS17/src/orxonox/infos/HumanPlayer.cc
code/branches/Presentation_HS17/src/orxonox/items/ShipPart.cc
code/branches/Presentation_HS17/src/orxonox/worldentities/CMakeLists.txt
code/branches/Presentation_HS17/src/orxonox/worldentities/ControllableEntity.cc
code/branches/Presentation_HS17/src/orxonox/worldentities/ControllableEntity.h
code/branches/Presentation_HS17/src/orxonox/worldentities/MobileEntity.cc
code/branches/Presentation_HS17/src/orxonox/worldentities/WorldEntity.cc
code/branches/Presentation_HS17/src/orxonox/worldentities/WorldEntity.h
code/branches/Presentation_HS17/src/orxonox/worldentities/pawns/Pawn.cc
Log:
rolled back to functional without 2 branches
Index: code/branches/Presentation_HS17
===================================================================
--- code/branches/Presentation_HS17 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17 2017-12-18 11:40:00 UTC (rev 11690)
Property changes on: code/branches/Presentation_HS17
___________________________________________________________________
Modified: svn:mergeinfo
## -15,11 +15,10 ##
/code/branches/SOBv2_HS17:11459-11677
/code/branches/SciptableControllerFS15:10308-10613
/code/branches/ScriptableController:9999-10075
-/code/branches/ScriptableController_HS17:11462-11685
/code/branches/SpaceRace_HS16:11214-11357
/code/branches/StoryModeMap_HS16:11221-11358
/code/branches/SuperOrxoBros_FS17:11365-11448
-/code/branches/Waypoints_HS17:11496-11687
+/code/branches/Waypoints_HS17:11688-11689
/code/branches/ai:6592-7033
/code/branches/ai2:8721-8880
/code/branches/bigships:8137-8588
Deleted: code/branches/Presentation_HS17/data/levels/ArrowLevel.oxw
===================================================================
--- code/branches/Presentation_HS17/data/levels/ArrowLevel.oxw 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/data/levels/ArrowLevel.oxw 2017-12-18 11:40:00 UTC (rev 11690)
@@ -1,78 +0,0 @@
-<LevelInfo
- name = "ArrowLevel"
- description = "A level to show the funtionality of the Waypoint Arrow."
- tags = "test"
- screenshot = "emptylevel.png"
-/>
-
-<?lua
- include("stats.oxo")
- include("HUDTemplates3.oxo")
- include("templates/lodInformation.oxt")
- include("templates/HeavyCruiser.oxt")
-?>
-
-<?lua
- include("templates/spaceshipEscort.oxt")
- include("templates/endurancetest_template.oxt")
- include("templates/endurancetest_template.oxt")
- include("templates/spaceshipPirate.oxt")
- include("templates/spaceshipAssff.oxt")
-
-
-?>
-
-<Level>
- <templates>
- <Template link=lodtemplate_default />
- </templates>
- <?lua include("includes/notifications.oxi") ?>
-
- <NotificationQueueCEGUI
- name="narrative"
- targets="simpleNotification"
- size=3
- displayTime=3.9
- position="0.2, 0, 0.1, 0"
- fontSize="23"
- fontColor="0.3, 1, 0.2, 0.8"
- alignment="HorzCentred"
- displaySize="0.6, 0, 0, 0"
- />
-
- <Scene
- ambientlight = "0.5, 0.5, 0.5"
- skybox = "Orxonox/Starbox"
- >
-
-
- <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="50,0,0" direction="1,0,0" spawnclass=SpaceShip pawndesign=spaceshipassff />
-
-
-
-
- <Arrow>
- <attached>
- <Model scale="10" mesh="arrow.mesh"/>
- </attached>
- </Arrow>
-
-<ArrowController accuracy = 2000>
- <gpspoints>
- <Model mesh="cube.mesh" scale=8 position="100,100,100"/>
- <Model mesh="cube.mesh" scale=8 position="400,200,187"/>
- <Model mesh="cube.mesh" scale=8 position="-200,-500,615"/>
- <Model mesh="cube.mesh" scale=8 position="0,0,0"/>
- </gpspoints>
- </ArrowController>
-
-
-
-
- </Scene>
-</Level>
-
Deleted: code/branches/Presentation_HS17/data/levels/scriptableControllerTest.oxw
===================================================================
--- code/branches/Presentation_HS17/data/levels/scriptableControllerTest.oxw 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/data/levels/scriptableControllerTest.oxw 2017-12-18 11:40:00 UTC (rev 11690)
@@ -1,42 +0,0 @@
-<LevelInfo
- name = "scriptableControllerTest"
- description = "A level with absolutely nothing in it."
- tags = "test"
- screenshot = "emptylevel.png"
-/>
-
-<?lua
- include("stats.oxo")
- include("HUDTemplates3.oxo")
- include("templates/lodInformation.oxt")
- include("templates/HeavyCruiser.oxt")
-?>
-
-<?lua
- include("templates/spaceshipEscort.oxt")
- include("templates/endurancetest_template.oxt")
-?>
-
-<Level script="scripts/scriptableControllerTest.lua">
- <templates>
- <Template link=lodtemplate_default />
- </templates>
- <?lua include("includes/notifications.oxi") ?>
-
- <Scene
- ambientlight = "0.8, 0.8, 0.8"
- skybox = "Orxonox/Starbox"
- >
-
- <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 team=0 position="-200,0,0" lookat="0,0,0" spawnclass=SpaceShip pawndesign=spaceshipescort />
-
- <ModularSpaceShip id="Station" velocity= "0,0,0" position="50000000,0,0" lookat= "0,0,0" health="500" maxhealth="500" initialhealth="500">
- <templates>
- <Template link=endurance />
- </templates>
- </ModularSpaceShip>
-
- </Scene>
-</Level>
-
Modified: code/branches/Presentation_HS17/data/overlays/HUDPickupTemplate.oxo
===================================================================
--- code/branches/Presentation_HS17/data/overlays/HUDPickupTemplate.oxo 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/data/overlays/HUDPickupTemplate.oxo 2017-12-18 11:40:00 UTC (rev 11690)
@@ -91,7 +91,7 @@
pickpoint = "0, 1"
correctaspect = true
iconmaterial = "Orxonox/BarIconSpeed"
- >
+ >
<BarColour position = 0.0 colour = "0.7,0.5,0.2" />
<BarColour position = 0.5 colour = "0.2,0.7,0.2" />
<BarColour position = 1.0 colour = "0.7,0.2,0.2" />
@@ -192,6 +192,7 @@
visible = "true"
/>
+
<HUDTimer
name = "Timer"
position = "0.5, 0.25"
Copied: code/branches/Presentation_HS17/data/overlays/HUDTemplate_test.oxo (from rev 11689, code/branches/Waypoints_HS17/data/overlays/HUDTemplate_test.oxo)
===================================================================
--- code/branches/Presentation_HS17/data/overlays/HUDTemplate_test.oxo (rev 0)
+++ code/branches/Presentation_HS17/data/overlays/HUDTemplate_test.oxo 2017-12-18 11:40:00 UTC (rev 11690)
@@ -0,0 +1,226 @@
+<!--
+<Template name="defaultHUD">
+ <OverlayGroup name = "defaultHUD" scale = "1, 1">
+ <ChatOverlay
+ name = "chat"
+ position = "0.03, 0.5"
+ font = "VeraMono"
+ caption = ""
+ textsize = 0.025
+ />
+
+ <GametypeStatus
+ name = "state"
+ position = "0.5, 0.85"
+ font = "VeraMono"
+ textsize = 0.05
+ colour = "1.0, 1.0, 0.0, 0.8"
+ align = "center"
+ />
+ </OverlayGroup>
+</Template>
+-->
+
+<Template name="spectatorhud">
+ <OverlayGroup name = "spectatorhud" scale = "1, 1">
+ </OverlayGroup>
+</Template>
+
+<Template name="rockethud">
+ <OverlayGroup name = "rockethud" scale = "1, 1">
+ <HUDRocketFuelBar
+ name = "RocketFuelBar1"
+ background = "Orxonox/BarBackground"
+ size = "0.40, 0.04"
+ position = "0.0 , 1.0 "
+ pickpoint = "0, 1"
+ correctaspect = true
+ iconmaterial = "Orxonox/BarIconFuel"
+ >
+ <BarColour position = 0.0 colour = "0.7,0.2,0.2" />
+ <BarColour position = 0.5 colour = "0.7,0.7,0.2" />
+ <BarColour position = 1.0 colour = "0.2,0.7,0.2" />
+ </HUDRocketFuelBar>
+ </OverlayGroup>
+</Template>
+
+<Template name="spaceshiphud">
+ <OverlayGroup name = "spaceshiphud" scale = "1, 1">
+ <Map />
+
+ <HUDHealthBar
+ name = "HealthBar1"
+ background = "Orxonox/HealthBarBackground"
+ size = "0.40, 0.08"
+ position = "0.0 , 0.85 "
+ pickpoint = "0, 1"
+ bartexture = "healthbar_bar.png"
+ textfont = "VeraMono"
+ textusebarcolour = true
+ textscale = 0.4
+ textoffset = "0.325, -0.825"
+ textpickpoint = "0, 0"
+ textalign = "right"
+ correctaspect = true
+ iconmaterial = "Orxonox/BarIconHealth"
+ >
+ <BarColour position = 0.0 colour = "0.7,0.2,0.2" />
+ <BarColour position = 0.5 colour = "0.7,0.7,0.2" />
+ <BarColour position = 1.0 colour = "0.2,0.7,0.2" />
+ </HUDHealthBar>
+
+ <HUDShieldBar
+ name = "ShieldBar1"
+ background = "Orxonox/BarBackground"
+ size = "0.40, 0.04"
+ position = "0.0 , 0.9 "
+ pickpoint = "0, 1"
+ correctaspect = true
+ iconmaterial = "Orxonox/BarIconShield"
+ >
+ <BarColour position = 0.0 colour = "0.7,0.2,0.2" />
+ <BarColour position = 0.5 colour = "0.7,0.7,0.2" />
+ <BarColour position = 1.0 colour = "0.2,0.7,0.2" />
+ </HUDShieldBar>
+
+ <HUDSpeedBar
+ name = "SpeedBar1"
+ background = "Orxonox/BarBackground"
+ size = "0.40, 0.04"
+ position = "0.0 , 0.95 "
+ pickpoint = "0, 1"
+ correctaspect = true
+ iconmaterial = "Orxonox/BarIconSpeed"
+ >
+ <BarColour position = 0.0 colour = "0.7,0.5,0.2" />
+ <BarColour position = 0.5 colour = "0.2,0.7,0.2" />
+ <BarColour position = 1.0 colour = "0.7,0.2,0.2" />
+ </HUDSpeedBar>
+
+ <HUDBoostBar
+ name = "BoostBar1"
+ background = "Orxonox/BarBackground"
+ size = "0.40, 0.04"
+ position = "0.0 , 1.0 "
+ pickpoint = "0, 1"
+ correctaspect = true
+ iconmaterial = "Orxonox/BarIconBoost"
+ >
+ <BarColour position = 0.0 colour = "0.7,0.2,0.2" />
+ <BarColour position = 0.5 colour = "0.7,0.7,0.2" />
+ <BarColour position = 1.0 colour = "0.2,0.7,0.2" />
+ </HUDBoostBar>
+
+ <HUDEnemyHealthBar
+ name = "EnemyHealthBar"
+ background = "Orxonox/HealthBarBackground"
+ size = "0.4, 0.08"
+ position = "1 ,0"
+ pickpoint = "1, 0"
+ bartexture = "healthbar_bar.png"
+ textfont = "VeraMono"
+ textusebarcolour = true
+ textscale = 0.4
+ textoffset = "-0.675, 0.175"
+ textpickpoint = "0, 0"
+ textalign = "right"
+ correctaspect = true
+ iconmaterial = "Orxonox/BarIconHealth"
+ >
+ <BarColour position = 0.0 colour = "0.7,0.2,0.2" />
+ <BarColour position = 0.5 colour = "0.7,0.7,0.2" />
+ <BarColour position = 1.0 colour = "0.2,0.7,0.2" />
+ </HUDEnemyHealthBar>
+
+ <HUDEnemyShieldBar
+ name = "EnemyShieldBar1"
+ background = "Orxonox/BarBackground"
+ size = "0.40, 0.04"
+ position = "1.0 , 0.1 "
+ pickpoint = "1, 0"
+ correctaspect = true
+ iconmaterial = "Orxonox/BarIconShield"
+ >
+ <BarColour position = 0.0 colour = "0.7,0.2,0.2" />
+ <BarColour position = 0.5 colour = "0.7,0.7,0.2" />
+ <BarColour position = 1.0 colour = "0.2,0.7,0.2" />
+ </HUDEnemyShieldBar>
+
+ <HUDNavigation
+ name = "Navigation"
+ correctaspect = true
+ font = "Monofur"
+ textsize = 0.02
+ navMarkerSize = 0.03
+ aimMarkerSize = 0.02
+ />
+
+ <HUDRadar
+ name = "Radar"
+ background = "Orxonox/Radar3D"
+ material2D = "Orxonox/Radar"
+ material3DMiddle = "Orxonox/Radar3D"
+ material3DFront = "Orxonox/Radar3DFront"
+ material3DBack = "Orxonox/Radar3DBack"
+ correctaspect = true
+ size = "0.17, 0.17"
+ position = "1.0, 1.0"
+ pickpoint = "1.0, 1.0"
+ rotation = 0
+ sensitivity = 1.0
+ halfDotSizeDistance = 3000
+ detectionLimit = 10000.0
+ maximumDotSize = 0.1
+ maximumDotSize3D = 0.06
+ mapAngle3D = 0.6435011
+ />
+
+ <HUDWeaponSystem
+ name = "WeaponSystem"
+ correctaspect = true
+ position = "0.01, 0.01"
+ pickpoint = "0, 0"
+ visible = "true"
+ weaponModeHUDSize = "0.09, 0.03"
+ />
+
+ <HUDPickupSystem
+ name = "PickupSystem"
+ correctaspect = true
+ position = "0.32, 0.81"
+ pickpoint = "0.0, 0.0"
+ visible = "false"
+ />
+
+ <HUDWaypoints
+ name = "Waypoints"
+ correctaspect = true
+ position = "0.32, 0.81"
+ pickpoint = "0.0, 0.0"
+ visible = "true"
+ />
+
+
+ <HUDTimer
+ name = "Timer"
+ position = "0.5, 0.25"
+ font = "VeraMono"
+ textsize = 0.1
+ colour = "1.0, 1.0, 0.0, 0.8"
+ align = "center"
+ />
+
+ <GUIOverlay
+ name = "QuestGUI"
+ guiname = "QuestGUI"
+ visible = "false"
+ />
+
+ <GUIOverlay
+ name = "PickupInventory"
+ guiname = "PickupInventory"
+ visible = "false"
+ />
+
+ </OverlayGroup>
+</Template>
Modified: code/branches/Presentation_HS17/data/overlays/HUDTemplates3.oxo
===================================================================
--- code/branches/Presentation_HS17/data/overlays/HUDTemplates3.oxo 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/data/overlays/HUDTemplates3.oxo 2017-12-18 11:40:00 UTC (rev 11690)
@@ -189,7 +189,7 @@
correctaspect = true
position = "0.32, 0.81"
pickpoint = "0.0, 0.0"
- visible = "true"
+ visible = "false"
/>
<HUDTimer
Modified: code/branches/Presentation_HS17/src/libraries/core/BaseObject.h
===================================================================
--- code/branches/Presentation_HS17/src/libraries/core/BaseObject.h 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/libraries/core/BaseObject.h 2017-12-18 11:40:00 UTC (rev 11690)
@@ -57,7 +57,6 @@
class Scene;
class Gametype;
class Level;
- class ScriptableController;
/// The BaseObject is the parent of all classes representing an instance in the game.
class _CoreExport BaseObject : public OrxonoxClass
@@ -192,7 +191,6 @@
static void loadAllEventStates(Element& xmlelement, XMLPort::Mode mode, BaseObject* object, Identifier* identifier);
-
protected:
void addEventState(const std::string& name, EventState* container);
EventState* getEventState(const std::string& name) const;
Modified: code/branches/Presentation_HS17/src/libraries/tools/Timer.cc
===================================================================
--- code/branches/Presentation_HS17/src/libraries/tools/Timer.cc 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/libraries/tools/Timer.cc 2017-12-18 11:40:00 UTC (rev 11690)
@@ -157,14 +157,6 @@
this->setTimer(interval, bLoop, executor, bKillAfterCall);
}
- Timer::Timer(float interval, bool bLoop, std::function<void ()> func, bool bKillAfterCall)
- {
- this->init();
- RegisterObject(Timer);
-
- this->setTimer(interval, bLoop, func, bKillAfterCall);
- }
-
/**
@brief Initializes the Timer
*/
@@ -200,24 +192,13 @@
this->bLoop_ = bLoop;
this->executor_ = executor;
this->bActive_ = true;
- this->isStdFunction_ = false;
this->time_ = this->interval_;
this->bKillAfterCall_ = bKillAfterCall;
- if(executor != nullptr)
- executor->getFunctor()->setSafeMode(true);
+ executor->getFunctor()->setSafeMode(true);
}
- void Timer::setTimer(float interval, bool bLoop, std::function<void ()> func, bool bKillAfterCall)
- {
- // Without the cast, the call would be ambiguous, because nullptr is castable to
- // both, ExecutorPtr and std::function.
- this->setTimer(interval, bLoop, static_cast<ExecutorPtr>(nullptr), bKillAfterCall);
- this->function_ = func;
- this->isStdFunction_ = true;
- }
-
/**
@brief Calls the executor and destroys the timer if requested.
*/
@@ -225,10 +206,7 @@
{
bool temp = this->bKillAfterCall_; // to avoid errors with bKillAfterCall_=false and an exutors which destroy the timer
- if(this->isStdFunction_)
- this->function_();
- else
- (*this->executor_)();
+ (*this->executor_)();
if (temp)
delete this;
Modified: code/branches/Presentation_HS17/src/libraries/tools/Timer.h
===================================================================
--- code/branches/Presentation_HS17/src/libraries/tools/Timer.h 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/libraries/tools/Timer.h 2017-12-18 11:40:00 UTC (rev 11690)
@@ -107,10 +107,8 @@
Timer();
Timer(float interval, bool bLoop, const ExecutorPtr& executor, bool bKillAfterCall = false);
- Timer(float interval, bool bLoop, std::function<void (void)> func, bool bKillAfterCall = false);
void setTimer(float interval, bool bLoop, const ExecutorPtr& executor, bool bKillAfterCall = false);
- void setTimer(float interval, bool bLoop, std::function<void (void)> func, bool bKillAfterCall = false);
void run();
@@ -154,9 +152,7 @@
void init();
ExecutorPtr executor_; //!< The executor of the function that will be called when the time expires
- std::function<void (void)> function_;
- bool isStdFunction_;
long long interval_; //!< The time-interval in micro seconds
bool bLoop_; //!< If true, the executor gets called every @a interval seconds
bool bActive_; //!< If true, the timer ticks and calls the executor if the time's up
Modified: code/branches/Presentation_HS17/src/modules/overlays/hud/CMakeLists.txt
===================================================================
--- code/branches/Presentation_HS17/src/modules/overlays/hud/CMakeLists.txt 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/modules/overlays/hud/CMakeLists.txt 2017-12-18 11:40:00 UTC (rev 11690)
@@ -10,7 +10,6 @@
HUDTimer.cc
HUDEnemyHealthBar.cc
HUDEnemyShieldBar.cc
- HUDWaypoints.cc
HUDWeaponMode.cc
HUDWeapon.cc
HUDWeaponSystem.cc
Deleted: code/branches/Presentation_HS17/src/modules/overlays/hud/HUDWaypoints.cc
===================================================================
--- code/branches/Presentation_HS17/src/modules/overlays/hud/HUDWaypoints.cc 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/modules/overlays/hud/HUDWaypoints.cc 2017-12-18 11:40:00 UTC (rev 11690)
@@ -1,42 +0,0 @@
-
-
-
-
-#include <vector>
-#include <string>
-
-#include "HUDWaypoints.h"
-#include "core/CoreIncludes.h"
-#include "core/XMLPort.h"
-#include "util/Convert.h"
-#include "core/class/Super.h"
-#include "pickup/Pickup.h"
-#include "HUDPickupItem.h"
-#include "pickup/PickupManager.h"
-
-namespace orxonox
-{
- RegisterClass(HUDWaypoints);
-
- HUDWaypoints::HUDWaypoints(Context* context) : OrxonoxOverlay(context)
- {
- RegisterObject(HUDWaypoints);
-
- overlayElement_ = static_cast<Ogre::PanelOverlayElement* >(Ogre::OverlayManager::getSingleton().createOverlayElement("Panel", "HUDWaypoints" + getUniqueNumberString()));
- overlayElement_->setMaterialName("PickupBar");
- overlayElement_->setPosition(0.0f,0.0f);
- overlayElement_->setDimensions(0.35f,0.075f);
- this->background_->addChild(overlayElement_);
- }
-
-
- HUDWaypoints::~HUDWaypoints()
- {
- /* if (this->isInitialized())
- {
- this->picks.clear();
- }*/
- }
-
-
-}
\ No newline at end of file
Deleted: code/branches/Presentation_HS17/src/modules/overlays/hud/HUDWaypoints.h
===================================================================
--- code/branches/Presentation_HS17/src/modules/overlays/hud/HUDWaypoints.h 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/modules/overlays/hud/HUDWaypoints.h 2017-12-18 11:40:00 UTC (rev 11690)
@@ -1,69 +0,0 @@
-/*
- * 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:
- * Patrick Wintermeyer
- * Co-authors:
- * ...
- *
- */
-
-
-#ifndef _HUDWaypoints_H__
-#define _HUDWaypoints_H__
-
-#include "overlays/OverlaysPrereqs.h"
-
-#include <map>
-#include <vector>
-#include <string>
-
-
-#include <OgreOverlayManager.h>
-#include <OgrePanelOverlayElement.h>
-
-#include "overlays/OrxonoxOverlay.h"
-#include "worldentities/pawns/Pawn.h"
-#include "overlays/OverlayGroup.h"
-#include "pickup/Pickup.h"
-#include "pickup/PickupRepresentation.h"
-#include "HUDPickupItem.h"
-
-namespace orxonox
-{
- class _OverlaysExport HUDWaypoints : public OrxonoxOverlay
- {
- public:
- HUDWaypoints(Context* context);
- virtual ~HUDWaypoints();
-
- bool repaint=false; //if we shouldnt repaint, set this to false
-
- private:
-
- Ogre::PanelOverlayElement* overlayElement_;
- WeakPtr<Pawn> owner_;
-
- std::vector<PickupRepresentation> pickupRepresentations_;
- };
-}
-
-#endif
\ No newline at end of file
Modified: code/branches/Presentation_HS17/src/modules/questsystem/Quest.cc
===================================================================
--- code/branches/Presentation_HS17/src/modules/questsystem/Quest.cc 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/modules/questsystem/Quest.cc 2017-12-18 11:40:00 UTC (rev 11690)
@@ -79,10 +79,21 @@
XMLPortObject(Quest, QuestHint, "hints", addHint, getHint, xmlelement, mode);
XMLPortObject(Quest, QuestEffect, "fail-effects", addFailEffect, getFailEffect, xmlelement, mode);
XMLPortObject(Quest, QuestEffect, "complete-effects", addCompleteEffect, getCompleteEffect, xmlelement, mode);
+ //XMLPortObject(Quest, Worldentity, "arrowtarget", addArrowTarget, getArrowTarget, xmlelement, mode);
QuestManager::getInstance().registerQuest(this); // Registers the Quest with the QuestManager.
}
+
+ /*bool Quest::addArrowTarget(Quest* quest){
+
+ assert(quest);
+
+
+ }*/
+
+
+
/**
@brief
Sets the parent-quest of the Quest.
Modified: code/branches/Presentation_HS17/src/orxonox/CMakeLists.txt
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/CMakeLists.txt 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/CMakeLists.txt 2017-12-18 11:40:00 UTC (rev 11690)
@@ -51,7 +51,6 @@
ADD_SUBDIRECTORY(interfaces)
ADD_SUBDIRECTORY(items)
ADD_SUBDIRECTORY(overlays)
-ADD_SUBDIRECTORY(scriptablecontroller)
ADD_SUBDIRECTORY(sound)
ADD_SUBDIRECTORY(weaponsystem)
ADD_SUBDIRECTORY(worldentities)
Modified: code/branches/Presentation_HS17/src/orxonox/Level.cc
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/Level.cc 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/Level.cc 2017-12-18 11:40:00 UTC (rev 11690)
@@ -41,7 +41,6 @@
#include "gametypes/Gametype.h"
#include "overlays/OverlayGroup.h"
#include "LevelManager.h"
-#include "scriptablecontroller/scriptable_controller.h"
namespace orxonox
{
@@ -56,7 +55,6 @@
this->registerVariables();
this->xmlfilename_ = this->getFilename();
this->xmlfile_ = nullptr;
- this->controller_.reset(new ScriptableController());
}
Level::~Level()
@@ -80,8 +78,6 @@
XMLPortParam(Level, "plugins", setPluginsString, getPluginsString, xmlelement, mode);
XMLPortParam(Level, "gametype", setGametypeString, getGametypeString, xmlelement, mode).defaultValues("Gametype");
- XMLPortParamLoadOnly(Level, "script", setScript, xmlelement, mode);
-
XMLPortObject(Level, MeshLodInformation, "lodinformation", addLodInfo, getLodInfo, xmlelement, mode);
XMLPortObjectExtended(Level, BaseObject, "", addObject, getObject, xmlelement, mode, true, false);
}
Modified: code/branches/Presentation_HS17/src/orxonox/Level.h
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/Level.h 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/Level.h 2017-12-18 11:40:00 UTC (rev 11690)
@@ -41,8 +41,6 @@
namespace orxonox
{
- class ScriptableController;
-
class _OrxonoxExport Level : public BaseObject, public Synchronisable, public Context
{
public:
@@ -56,13 +54,7 @@
MeshLodInformation* getLodInfo(std::string meshName) const;
- inline ScriptableController *getScriptableController(void)
- { return this->controller_.get(); }
- inline const std::string &getScript(void)
- { return this->level_script_; }
-
-
private:
void registerVariables();
void addObject(BaseObject* object);
@@ -85,20 +77,14 @@
void networkcallback_applyXMLFile();
- inline void setScript(const std::string &script)
- { this->level_script_ = script; }
-
-
std::string pluginsString_;
std::list<PluginReference*> plugins_;
+
std::string gametype_;
std::string xmlfilename_;
XMLFile* xmlfile_;
std::list<BaseObject*> objects_;
std::map<std::string,MeshLodInformation*> lodInformation_;
-
- std::unique_ptr<ScriptableController> controller_;
- std::string level_script_;
};
}
Deleted: code/branches/Presentation_HS17/src/orxonox/controllers/ArrowController.cc
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/controllers/ArrowController.cc 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/controllers/ArrowController.cc 2017-12-18 11:40:00 UTC (rev 11690)
@@ -1,156 +0,0 @@
-/*
- * 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:
- * Oli Scheuss
- * Co-authors:
- * Damian 'Mozork' Frick
- *
- */
-
-#include "ArrowController.h"
-#include "HumanController.h"
-#include "worldentities/WorldEntity.h"
-
-#include "worldentities/Arrow.h"
-#include "util/Math.h"
-
-namespace orxonox
-{
-
- RegisterClass(ArrowController);
-
-
-
- /**
- @brief
- Constructor.
- */
- ArrowController::ArrowController(Context* context) : Controller(context)
- {
-
- RegisterObject(ArrowController);
-
- this->currentGPSPoint_ = 0;
- this->accuracy_ = 1000.0f;
-
- arrow = nullptr;
-
- for(Arrow* a: ObjectList<Arrow>())
- arrow = a;
-
- assert(arrow != nullptr);
- this->setControllableEntity(arrow);
-
- orxout() << "constructor aufgerufen" << endl;
- }
-
- //Set the distance you need to reach before the next waypoint will be selected
- void ArrowController::setAccuracy(float accuracy){
- this->accuracy_ = accuracy;
- }
-
- float ArrowController::getAccuracy(){
- return this->accuracy_;
- };
-
- void ArrowController::addGPSPoint(WorldEntity* gpspoint)
- {
- this->gpspoints_.push_back(gpspoint);
- }
-
- WorldEntity* ArrowController::getGPSPoint(unsigned int index) const
- {
- if (index < this->gpspoints_.size())
- return this->gpspoints_[index];
- else
- return nullptr;
- }
- /**
- @brief
- Destructor.
- */
-
- ArrowController::~ArrowController()
- {
- for (WorldEntity* gpspoint : this->gpspoints_)
- {
- if(gpspoint)
- gpspoint->destroy();
- }
-
- }
-
-
- void ArrowController::XMLPort(Element& xmlelement, XMLPort::Mode mode)
- {
- SUPER(ArrowController, XMLPort, xmlelement, mode);
-
- XMLPortObject(ArrowController, WorldEntity, "gpspoints", addGPSPoint, getGPSPoint, xmlelement, mode);
- XMLPortParam(ArrowController, "accuracy", setAccuracy, getAccuracy, xmlelement, mode);
- }
-
- void ArrowController::tick(float dt)
- {
- if (!this->isActive())
- return;
-
- if (this->gpspoints_.size() == 0 || !this->getControllableEntity())
- return;
- //Set all waypoint to invisible at the beginning
- if (this->currentGPSPoint_ == 0){
- for(unsigned int i = 0; i < this->gpspoints_.size(); i++ )
- this->gpspoints_[i]->setVisible(false);
- }
- //Make the arrow inivisible as soon as you reached the last Waypoint, otherwise make the next waypoint visible
- if(currentGPSPoint_ >= gpspoints_.size()){
- this->getControllableEntity()->setVisible(false);
- return;
- }
- else this->gpspoints_[this->currentGPSPoint_]->setVisible(true);
-
- //Set the next waypoint as target as soon as you reached the previous one
- if (this->gpspoints_[this->currentGPSPoint_]->getWorldPosition().squaredDistance(this->getControllableEntity()->getPosition()) <= this->accuracy_){
- this->gpspoints_[this->currentGPSPoint_]->setVisible(false);
- this->currentGPSPoint_ = (this->currentGPSPoint_ + 1);
- return;
- }
-
- Vector3 target = gpspoints_[currentGPSPoint_]->getWorldPosition();
- WorldEntity::TransformSpace trans = WorldEntity::TransformSpace::World;
-
- //Get the position and orientation of the Spaceship
- Vector3 spaceShipPosition = HumanController::getLocalControllerSingleton()->getControllableEntity()->getWorldPosition();
- Quaternion spaceShipOrientation = HumanController::getLocalControllerSingleton()->getControllableEntity()->getOrientation();
-
- //Calculate the new arrow position
- Vector3 ss_y = spaceShipOrientation.yAxis();
- spaceShipPosition.x += 20 * ss_y.x;
- spaceShipPosition.y += 20 * ss_y.y;
- spaceShipPosition.z += 20 * ss_y.z;
-
- //Update Arrow position and orientation
- this->getControllableEntity()->setPosition(spaceShipPosition);
- this->getControllableEntity()->lookAt(target, trans, Vector3(0,0,1));
-
-
- }
-}
Deleted: code/branches/Presentation_HS17/src/orxonox/controllers/ArrowController.h
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/controllers/ArrowController.h 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/controllers/ArrowController.h 2017-12-18 11:40:00 UTC (rev 11690)
@@ -1,73 +0,0 @@
-/*
- * 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:
- * Oli Scheuss
- * Co-authors:
- * Damian 'Mozork' Frick
- *
- */
-
-#ifndef _ArrowController_H__
-#define _ArrowController_H__
-
-#include "OrxonoxPrereqs.h"
-
-#include "Controller.h"
-#include "tools/interfaces/Tickable.h"
-#include "worldentities/Arrow.h"
-
-namespace orxonox
-{
- /**
- @brief
- Controller for the Arrow of the PPS tutorial.
- @author
- Oli Scheuss
- */
- class _OrxonoxExport ArrowController : public Controller, public Tickable
- {
- public:
- ArrowController(Context* context);
- virtual ~ArrowController();
-
- virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode) override;
-
- void addGPSPoint(WorldEntity* gpspoint);
- WorldEntity* getGPSPoint(unsigned int index) const;
- void setAccuracy(float accuracy);
- float getAccuracy();
-
- virtual void tick(float dt); //!< The controlling happens here. This method defines what the controller has to do each tick.
-
- protected:
-
- std::vector<WeakPtr<WorldEntity>> gpspoints_;
- size_t currentGPSPoint_;
- float accuracy_;
- WorldEntity* defaultGPSpoint_;
-
- private:
- Arrow *arrow;
- };
-}
-
-#endif /* _ArrowController_H__ */
Deleted: code/branches/Presentation_HS17/src/orxonox/controllers/AutonomousDroneController.cc
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/controllers/AutonomousDroneController.cc 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/controllers/AutonomousDroneController.cc 2017-12-18 11:40:00 UTC (rev 11690)
@@ -1,111 +0,0 @@
-/*
- * 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:
- * Oli Scheuss
- * Co-authors:
- * Damian 'Mozork' Frick
- *
- */
-
-#include "AutonomousDroneController.h"
-
-#include "worldentities/AutonomousDrone.h"
-#include "util/Math.h"
-
-namespace orxonox
-{
- //TODO: Put your code in here:
- // Create the factory for the drone controller.
- RegisterClass(AutonomousDroneController);
-
-
- /**
- @brief
- Constructor.
- @param context
- The context of this object.
- */
- AutonomousDroneController::AutonomousDroneController(Context* context) : Controller(context)
- {
- //TODO: Place your code here:
- RegisterObject(AutonomousDroneController);
-
-
- // Make sure to register the object and create the factory.
-
- // This checks that our context really is a drone
- // and saves the pointer to the drone for the controlling commands
- /* NOTE from Sandro: This is currently broken */
- //AutonomousDrone* drone = dynamic_cast<AutonomousDrone*>(context);
- //assert(drone != nullptr);
- //this->setControllableEntity(drone);
- }
-
- /**
- @brief
- Destructor.
- */
- AutonomousDroneController::~AutonomousDroneController()
- {
-
- }
-
- /**
- @brief
- The controlling happens here. This method defines what the controller has to do each tick.
- @param dt
- The duration of the tick.
- */
- void AutonomousDroneController::tick(float dt)
- {
- /* NOTE: Ugly hack by Sandro to make the tutorial work for the moment.
- * This will be reverted once the framework update is complete
- */
- //AutonomousDrone *myDrone = static_cast<AutonomousDrone*>(this->getControllableEntity());
- ObjectList<AutonomousDrone> objectList;
- ObjectList<AutonomousDrone>::iterator it = objectList.begin();
- AutonomousDrone* myDrone = *it;
-
- if (myDrone != nullptr)
- {
-
-
- //myDrone -> moveFrontBack(50*dt);
- myDrone -> rotateRoll(2*dt);
-
- myDrone -> rotateYaw(2*dt);
-
-
- //TODO: Place your code here:
- // Steering commands
- // You can use the commands provided by the AutonomousDrone to steer it:
- // - moveFrontBack, moveRightLeft, moveUpDown
- // - rotatePitch, rotateYaw, rotateRoll
- // You will see, that the AutonomousDrone has two variants for each of these commands, one with a vector as input and one with just a float. Use the one with just the float as input.
- // Apply them to myDrone (e.g. myDrone->rotateYaw(..) )
- // dt is the time passed since the last call of the tick function in seconds.
-
-
-
- }
- }
-}
Deleted: code/branches/Presentation_HS17/src/orxonox/controllers/AutonomousDroneController.h
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/controllers/AutonomousDroneController.h 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/controllers/AutonomousDroneController.h 2017-12-18 11:40:00 UTC (rev 11690)
@@ -1,59 +0,0 @@
-/*
- * 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:
- * Oli Scheuss
- * Co-authors:
- * Damian 'Mozork' Frick
- *
- */
-
-#ifndef _AutonomousDroneController_H__
-#define _AutonomousDroneController_H__
-
-#include "OrxonoxPrereqs.h"
-
-#include "Controller.h"
-#include "tools/interfaces/Tickable.h"
-
-namespace orxonox
-{
- /**
- @brief
- Controller for the AutonomousDrone of the PPS tutorial.
- @author
- Oli Scheuss
- */
- class _OrxonoxExport AutonomousDroneController : public Controller, public Tickable
- {
- public:
- AutonomousDroneController(Context* context);
- virtual ~AutonomousDroneController();
-
- virtual void tick(float dt); //!< The controlling happens here. This method defines what the controller has to do each tick.
-
- protected:
-
- private:
- };
-}
-
-#endif /* _AutonomousDroneController_H__ */
Modified: code/branches/Presentation_HS17/src/orxonox/controllers/CMakeLists.txt
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/controllers/CMakeLists.txt 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/controllers/CMakeLists.txt 2017-12-18 11:40:00 UTC (rev 11690)
@@ -18,6 +18,4 @@
FlyingController.cc
FightingController.cc
MasterController.cc
- AutonomousDroneController.cc
- ArrowController.cc
)
Deleted: code/branches/Presentation_HS17/src/orxonox/controllers/WaypointArrow.cc
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/controllers/WaypointArrow.cc 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/controllers/WaypointArrow.cc 2017-12-18 11:40:00 UTC (rev 11690)
@@ -1,67 +0,0 @@
-/*
- * 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:
- * ...
- *
- */
-
-#include "WaypointArrow.h"
-
-#include "core/CoreIncludes.h"
-#include "worldentities/ControllableEntity.h"
-
-namespace orxonox
-{
- RegisterClass(WaypointArrow);
-
- WaypointArrow::WaypointArrow(Context* context) : ArtificialController(context)
- {
- RegisterObject(WaypointController);
- this->setAccuracy(100);
- }
-
- WaypointController::~WaypointController()
- {
- for (WorldEntity* waypoint : this->waypoints_)
- {
- if(waypoint)
- waypoint->destroy();
- }
- }
-
- void WaypointController::tick(float dt)
- {
- if (!this->isActive())
- return;
-
- if (this->waypoints_.size() == 0 || !this->getControllableEntity())
- return;
-
- if (this->waypoints_[this->currentWaypoint_]->getWorldPosition().squaredDistance(this->getControllableEntity()->getPosition()) <= this->squaredaccuracy_)
- this->currentWaypoint_ = (this->currentWaypoint_ + 1) % this->waypoints_.size();
-
- this->moveToPosition(this->waypoints_[this->currentWaypoint_]->getWorldPosition());
- }
-
-}
Deleted: code/branches/Presentation_HS17/src/orxonox/controllers/WaypointArrow.h
===================================================================
Modified: code/branches/Presentation_HS17/src/orxonox/graphics/Model.cc
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/graphics/Model.cc 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/graphics/Model.cc 2017-12-18 11:40:00 UTC (rev 11690)
@@ -72,6 +72,7 @@
SUPER(Model, XMLPort, xmlelement, mode);
XMLPortParam(Model, "lodLevel", setLodLevel, getLodLevel, xmlelement, mode);
+
XMLPortParam(Model, "mesh", setMeshSource, getMeshSource, xmlelement, mode);
XMLPortParam(Model, "renderQueueGroup", setRenderQueueGroup, getRenderQueueGroup, xmlelement, mode);
XMLPortParam(Model, "material", setMaterial, getMaterial, xmlelement, mode);
Modified: code/branches/Presentation_HS17/src/orxonox/infos/GametypeInfo.cc
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/infos/GametypeInfo.cc 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/infos/GametypeInfo.cc 2017-12-18 11:40:00 UTC (rev 11690)
@@ -42,8 +42,6 @@
#include "controllers/HumanController.h"
#include "interfaces/GametypeMessageListener.h"
#include "interfaces/NotificationListener.h"
-#include "scriptablecontroller/scriptable_controller.h"
-#include "Level.h"
#include "PlayerInfo.h"
@@ -77,7 +75,6 @@
this->counter_ = 10;
this->spawned_ = false;
this->readyToSpawn_ = false;
- this->isFirstSpawn_ = true;
this->registerVariables();
}
@@ -312,21 +309,9 @@
if(GameMode::isMaster())
{
if(this->hasStarted() && !this->hasEnded())
+
this->setSpawnedHelper(player, true);
}
-
- // TODO We might want to handle the subsequent spawns as well somehow
- if(player->isHumanPlayer() && player->isLocalPlayer() && this->isFirstSpawn_)
- {
- this->isFirstSpawn_ = false;
- this->getLevel()->getScriptableController()->setPlayer(player);
-
- // This handles paths relative to the 'level' directory
- std::string script = this->getLevel()->getScript();
- if(script.at(0) != '/')
- script = "../levels/" + script; // Not very dynamic
- this->getLevel()->getScriptableController()->runScript(script);
- }
}
/**
Modified: code/branches/Presentation_HS17/src/orxonox/infos/GametypeInfo.h
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/infos/GametypeInfo.h 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/infos/GametypeInfo.h 2017-12-18 11:40:00 UTC (rev 11690)
@@ -82,7 +82,7 @@
*/
inline bool isStartCountdownRunning() const
{ return this->bStartCountdownRunning_; }
-
+
void changedStartCountdownRunning(void); // Is called when the start countdown has been either started or stopped.
/**
@@ -167,7 +167,6 @@
std::set<PlayerInfo*> spawnedPlayers_; //!< A set of players that are currently spawned.
bool spawned_; //!< Whether the local Player is currently spawned.
bool readyToSpawn_; //!< Whether the local Player is ready to spawn.
- bool isFirstSpawn_;
};
}
Modified: code/branches/Presentation_HS17/src/orxonox/infos/HumanPlayer.cc
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/infos/HumanPlayer.cc 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/infos/HumanPlayer.cc 2017-12-18 11:40:00 UTC (rev 11690)
@@ -37,8 +37,6 @@
#include "controllers/NewHumanController.h"
#include "gametypes/Gametype.h"
#include "overlays/OverlayGroup.h"
-#include "Level.h"
-#include "scriptablecontroller/scriptable_controller.h"
namespace orxonox
{
Modified: code/branches/Presentation_HS17/src/orxonox/items/ShipPart.cc
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/items/ShipPart.cc 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/items/ShipPart.cc 2017-12-18 11:40:00 UTC (rev 11690)
@@ -41,8 +41,6 @@
#include "worldentities/StaticEntity.h"
#include "items/PartDestructionEvent.h"
#include "chat/ChatManager.h"
-#include "Level.h"
-#include "scriptablecontroller/scriptable_controller.h"
namespace orxonox
@@ -216,11 +214,6 @@
parent_->setHealth(parent_->getHealth() - ((damage - shielddamage) - healthdamage) * (1- this->damageAbsorption_));
}
}
-
- // This is a bit hacky, but it takes away damage control from the pawn, so it has to handle
- // that as well.
- this->getLevel()->getScriptableController()->pawnHit(parent_, originator, parent_->getHealth(), parent_->getShieldHealth());
-
if (this->health_ < 0)
this->death();
Deleted: code/branches/Presentation_HS17/src/orxonox/worldentities/Arrow.cc
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/worldentities/Arrow.cc 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/worldentities/Arrow.cc 2017-12-18 11:40:00 UTC (rev 11690)
@@ -1,174 +0,0 @@
-/*
- * 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:
- * Oli Scheuss
- * Co-authors:
- * Damian 'Mozork' Frick
- *
- */
-
-#include "Arrow.h"
-
-#include "core/CoreIncludes.h"
-#include "BulletDynamics/Dynamics/btRigidBody.h"
-
-namespace orxonox
-{
-
- RegisterClass(Arrow);
- /**
- @brief
- Constructor. Registers the object and initializes some default values.
- @param creator
- The creator of this object.
- */
- Arrow::Arrow(Context* context) : ControllableEntity(context)
- {
- RegisterObject(Arrow);
-
- this->localLinearAcceleration_.setValue(0, 0, 0);
- this->localAngularAcceleration_.setValue(0, 0, 0);
- this->primaryThrust_ = 100;
- this->auxiliaryThrust_ = 100;
- this->rotationThrust_ = 10;
-
- this->setCollisionType(CollisionType::Dynamic);
-
-
- }
-
- /**
- @brief
- Destructor. Destroys controller, if present.
- */
- Arrow::~Arrow()
- {
-
- }
-
- /**
- @brief
- Method for creating a Arrow through XML.
- */
- void Arrow::XMLPort(Element& xmlelement, XMLPort::Mode mode)
- {
- // This calls the XMLPort function of the parent class
- SUPER(Arrow, XMLPort, xmlelement, mode);
-
- XMLPortParam(Arrow, "primaryThrust", setPrimaryThrust, getPrimaryThrust, xmlelement, mode);
- XMLPortParam(Arrow, "auxiliaryThrust", setAuxiliaryThrust, getAuxiliaryThrust, xmlelement, mode);
- XMLPortParam(Arrow, "rotationThrust", setRotationThrust, getRotationThrust, xmlelement, mode);
-
- }
-
- /**
- @brief
- Defines which actions the Arrow has to take in each tick.
- @param dt
- The length of the tick.
- */
- void Arrow::tick(float dt)
- {
- SUPER(Arrow, tick, dt);
-
- this->localLinearAcceleration_.setX(this->localLinearAcceleration_.x() * getMass() * this->auxiliaryThrust_);
- this->localLinearAcceleration_.setY(this->localLinearAcceleration_.y() * getMass() * this->auxiliaryThrust_);
- if (this->localLinearAcceleration_.z() > 0)
- this->localLinearAcceleration_.setZ(this->localLinearAcceleration_.z() * getMass() * this->auxiliaryThrust_);
- else
- this->localLinearAcceleration_.setZ(this->localLinearAcceleration_.z() * getMass() * this->primaryThrust_);
- this->physicalBody_->applyCentralForce(physicalBody_->getWorldTransform().getBasis() * this->localLinearAcceleration_);
- this->localLinearAcceleration_.setValue(0, 0, 0);
-
- this->localAngularAcceleration_ *= this->getLocalInertia() * this->rotationThrust_;
- this->physicalBody_->applyTorque(physicalBody_->getWorldTransform().getBasis() * this->localAngularAcceleration_);
- this->localAngularAcceleration_.setValue(0, 0, 0);
- }
-
- /**
- @brief
- Moves the Arrow in the negative z-direction (Front/Back) by an amount specified by the first component of the input 2-dim vector.
- @param value
- The vector determining the amount of the movement.
- */
- void Arrow::moveFrontBack(const Vector2& value)
- {
- this->localLinearAcceleration_.setZ(this->localLinearAcceleration_.z() - value.x);
- }
-
- /**
- @brief
- Moves the Arrow in the x-direction (Right/Left) by an amount specified by the first component of the input 2-dim vector.
- @param value
- The vector determining the amount of the movement.
- */
- void Arrow::moveRightLeft(const Vector2& value)
- {
- this->localLinearAcceleration_.setX(this->localLinearAcceleration_.x() + value.x);
- }
-
- /**
- @brief
- Moves the Arrow in the y-direction (Up/Down) by an amount specified by the first component of the input 2-dim vector.
- @param value
- The vector determining the amount of the movement.
- */
- void Arrow::moveUpDown(const Vector2& value)
- {
- this->localLinearAcceleration_.setY(this->localLinearAcceleration_.y() + value.x);
- }
-
- /**
- @brief
- Rotates the Arrow around the y-axis by the amount specified by the first component of the input 2-dim vector.
- @param value
- The vector determining the amount of the angular movement.
- */
- void Arrow::rotateYaw(const Vector2& value)
- {
- this->localAngularAcceleration_.setY(this->localAngularAcceleration_.y() - value.x);
- }
-
- /**
- @brief
- Rotates the Arrow around the x-axis by the amount specified by the first component of the input 2-dim vector.
- @param value
- The vector determining the amount of the angular movement.
- */
- void Arrow::rotatePitch(const Vector2& value)
- {
- this->localAngularAcceleration_.setX(this->localAngularAcceleration_.x() + value.x);
- }
-
- /**
- @brief
- Rotates the Arrow around the z-axis by the amount specified by the first component of the input 2-dim vector.
- @param value
- The vector determining the amount of the angular movement.
- */
- void Arrow::rotateRoll(const Vector2& value)
- {
- this->localAngularAcceleration_.setZ(this->localAngularAcceleration_.z() + value.x);
- }
-
-
-}
Deleted: code/branches/Presentation_HS17/src/orxonox/worldentities/Arrow.h
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/worldentities/Arrow.h 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/worldentities/Arrow.h 2017-12-18 11:40:00 UTC (rev 11690)
@@ -1,147 +0,0 @@
-/*
- * 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:
- * Oli Scheuss
- * Co-authors:
- * Damian 'Mozork' Frick
- *
- */
-
-#ifndef _Arrow_H__
-#define _Arrow_H__
-
-#include "OrxonoxPrereqs.h"
-
-#include "core/XMLPort.h"
-//#include "controllers/ArrowController.h"
-
-#include "ControllableEntity.h"
-#include "WorldEntity.h"
-
-namespace orxonox {
-
- /**
- @brief
- Drone, that is made to move upon a specified pattern.
- This class was constructed for the PPS tutorial.
- @author
- Oli Scheuss
- */
- class _OrxonoxExport Arrow : public ControllableEntity
- {
- public:
- Arrow(Context* context);
- virtual ~Arrow();
-
- virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating an Arrow through XML.
- virtual void tick(float dt); //!< Defines which actions the Arrow has to take in each tick.
-
- virtual void moveFrontBack(const Vector2& value);
- virtual void moveRightLeft(const Vector2& value);
- virtual void moveUpDown(const Vector2& value);
-
- virtual void rotateYaw(const Vector2& value);
- virtual void rotatePitch(const Vector2& value);
- virtual void rotateRoll(const Vector2& value);
-
- /**
- @brief Moves the Drone in the Front/Back-direction by the specifed amount.
- @param value The amount by which the drone is to be moved.
- */
- inline void moveFrontBack(float value)
- { this->moveFrontBack(Vector2(value, 0)); }
- /**
- @brief Moves the Drone in the Right/Left-direction by the specifed amount.
- @param value The amount by which the drone is to be moved.
- */
- inline void moveRightLeft(float value)
- { this->moveRightLeft(Vector2(value, 0)); }
- /**
- @brief Moves the Drone in the Up/Down-direction by the specifed amount.
- @param value The amount by which the drone is to be moved.
- */
- inline void moveUpDown(float value)
- { this->moveUpDown(Vector2(value, 0)); }
-
- /**
- @brief Rotates the Drone around the y-axis by the specifed amount.
- @param value The amount by which the drone is to be rotated.
- */
- inline void rotateYaw(float value)
- { this->rotateYaw(Vector2(value, 0)); }
- /**
- @brief Rotates the Drone around the x-axis by the specifed amount.
- @param value The amount by which the drone is to be rotated.
- */
- inline void rotatePitch(float value)
- { this->rotatePitch(Vector2(value, 0)); }
- /**
- @brief Rotates the Drone around the z-axis by the specifed amount.
- @param value The amount by which the drone is to be rotated.
- */
- inline void rotateRoll(float value)
- { this->rotateRoll(Vector2(value, 0)); }
-
- /**
- @brief Sets the primary thrust to the input amount.
- @param thrust The amount of thrust.
- */
- inline void setPrimaryThrust( float thrust )
- { this->primaryThrust_ = thrust; }
- //TODO: Place your set-functions here.
-
- inline void setAuxiliaryThrust ( float thrust )
- { this -> auxiliaryThrust_ = thrust; }
-
- inline void setRotationThrust (float thrust)
- { this -> rotationThrust_ = thrust;}
- // Hint: auxiliary thrust, rotation thrust.
-
- /**
- @brief Gets the primary thrust to the input amount.
- @return The amount of thrust.
- */
- inline float getPrimaryThrust()
- { return this->primaryThrust_; }
-
- inline float getAuxiliaryThrust()
- { return this->auxiliaryThrust_;}
-
- inline float getRotationThrust()
- { return this->rotationThrust_;}
-
- //TODO: Place your get-functions here.
-
- private:
- //ArrowController *myController_; //!< The controller of the Arrow.
-
- btVector3 localLinearAcceleration_; //!< The linear acceleration that is used to move the Arrow the next tick.
- btVector3 localAngularAcceleration_; //!< The linear angular acceleration that is used to move the Arrow the next tick.
- float primaryThrust_; //!< The amount of primary thrust. This is just used, when moving forward.
- float auxiliaryThrust_; //!< The amount of auxiliary thrust. Used for all other movements (except for rotations).
- float rotationThrust_; //!< The amount of rotation thrust. Used for rotations only.s
-
- };
-
-}
-
-#endif // _Arrow_H__
Deleted: code/branches/Presentation_HS17/src/orxonox/worldentities/AutonomousDrone.cc
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/worldentities/AutonomousDrone.cc 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/worldentities/AutonomousDrone.cc 2017-12-18 11:40:00 UTC (rev 11690)
@@ -1,186 +0,0 @@
-/*
- * 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:
- * Oli Scheuss
- * Co-authors:
- * Damian 'Mozork' Frick
- *
- */
-
-#include "AutonomousDrone.h"
-
-#include "core/CoreIncludes.h"
-#include "BulletDynamics/Dynamics/btRigidBody.h"
-
-namespace orxonox
-{
- //TODO: Put your code in here:
- // Create the factory for the drone.
- RegisterClass(AutonomousDrone);
- /**
- @brief
- Constructor. Registers the object and initializes some default values.
- @param creator
- The creator of this object.
- */
- AutonomousDrone::AutonomousDrone(Context* context) : ControllableEntity(context)
- {
- //TODO: Put your code in here:
- // Register the drone class to the core.
- RegisterObject(AutonomousDrone);
-
- this->myController_ = NULL;
-
- this->localLinearAcceleration_.setValue(0, 0, 0);
- this->localAngularAcceleration_.setValue(0, 0, 0);
- this->primaryThrust_ = 100;
- this->auxiliaryThrust_ = 100;
- this->rotationThrust_ = 10;
-
- this->setCollisionType(CollisionType::Dynamic);
-
- //this->myController_ = new AutonomousDroneController(this); // Creates a new controller and passes our this pointer to it as creator.
- }
-
- /**
- @brief
- Destructor. Destroys controller, if present.
- */
- AutonomousDrone::~AutonomousDrone()
- {
- // Deletes the controller if the object was initialized and the pointer to the controller is not NULL.
- if( this->isInitialized() && this->myController_ != NULL )
- delete this->myController_;
- }
-
- /**
- @brief
- Method for creating a AutonomousDrone through XML.
- */
- void AutonomousDrone::XMLPort(Element& xmlelement, XMLPort::Mode mode)
- {
- // This calls the XMLPort function of the parent class
- SUPER(AutonomousDrone, XMLPort, xmlelement, mode);
-
- XMLPortParam(AutonomousDrone, "primaryThrust", setPrimaryThrust, getPrimaryThrust, xmlelement, mode);
- //TODO: Put your code in here:
- XMLPortParam(AutonomousDrone, "auxiliaryThrust", setAuxiliaryThrust, getAuxiliaryThrust, xmlelement, mode);
- XMLPortParam(AutonomousDrone, "rotationThrust", setRotationThrust, getRotationThrust, xmlelement, mode);
- // Make sure you add the variables auxiliaryThrust_ and rotationThrust_ to XMLPort.
- // Variables can be added by the following command
- // XMLPortParam(Classname, "xml-attribute-name (i.e. variablename)", setFunctionName, getFunctionName, xmlelement, mode);
- // Also make sure that you also create the get- and set-functions in AutonomousDrone.h. As you can see, the get- and set-functions for the variable primaryThrust_ has already been specified there, so you can get your inspiration from there.
-
-
- }
-
- /**
- @brief
- Defines which actions the AutonomousDrone has to take in each tick.
- @param dt
- The length of the tick.
- */
- void AutonomousDrone::tick(float dt)
- {
- SUPER(AutonomousDrone, tick, dt);
-
- this->localLinearAcceleration_.setX(this->localLinearAcceleration_.x() * getMass() * this->auxiliaryThrust_);
- this->localLinearAcceleration_.setY(this->localLinearAcceleration_.y() * getMass() * this->auxiliaryThrust_);
- if (this->localLinearAcceleration_.z() > 0)
- this->localLinearAcceleration_.setZ(this->localLinearAcceleration_.z() * getMass() * this->auxiliaryThrust_);
- else
- this->localLinearAcceleration_.setZ(this->localLinearAcceleration_.z() * getMass() * this->primaryThrust_);
- this->physicalBody_->applyCentralForce(physicalBody_->getWorldTransform().getBasis() * this->localLinearAcceleration_);
- this->localLinearAcceleration_.setValue(0, 0, 0);
-
- this->localAngularAcceleration_ *= this->getLocalInertia() * this->rotationThrust_;
- this->physicalBody_->applyTorque(physicalBody_->getWorldTransform().getBasis() * this->localAngularAcceleration_);
- this->localAngularAcceleration_.setValue(0, 0, 0);
- }
-
- /**
- @brief
- Moves the AutonomousDrone in the negative z-direction (Front/Back) by an amount specified by the first component of the input 2-dim vector.
- @param value
- The vector determining the amount of the movement.
- */
- void AutonomousDrone::moveFrontBack(const Vector2& value)
- {
- this->localLinearAcceleration_.setZ(this->localLinearAcceleration_.z() - value.x);
- }
-
- /**
- @brief
- Moves the AutonomousDrone in the x-direction (Right/Left) by an amount specified by the first component of the input 2-dim vector.
- @param value
- The vector determining the amount of the movement.
- */
- void AutonomousDrone::moveRightLeft(const Vector2& value)
- {
- this->localLinearAcceleration_.setX(this->localLinearAcceleration_.x() + value.x);
- }
-
- /**
- @brief
- Moves the AutonomousDrone in the y-direction (Up/Down) by an amount specified by the first component of the input 2-dim vector.
- @param value
- The vector determining the amount of the movement.
- */
- void AutonomousDrone::moveUpDown(const Vector2& value)
- {
- this->localLinearAcceleration_.setY(this->localLinearAcceleration_.y() + value.x);
- }
-
- /**
- @brief
- Rotates the AutonomousDrone around the y-axis by the amount specified by the first component of the input 2-dim vector.
- @param value
- The vector determining the amount of the angular movement.
- */
- void AutonomousDrone::rotateYaw(const Vector2& value)
- {
- this->localAngularAcceleration_.setY(this->localAngularAcceleration_.y() - value.x);
- }
-
- /**
- @brief
- Rotates the AutonomousDrone around the x-axis by the amount specified by the first component of the input 2-dim vector.
- @param value
- The vector determining the amount of the angular movement.
- */
- void AutonomousDrone::rotatePitch(const Vector2& value)
- {
- this->localAngularAcceleration_.setX(this->localAngularAcceleration_.x() + value.x);
- }
-
- /**
- @brief
- Rotates the AutonomousDrone around the z-axis by the amount specified by the first component of the input 2-dim vector.
- @param value
- The vector determining the amount of the angular movement.
- */
- void AutonomousDrone::rotateRoll(const Vector2& value)
- {
- this->localAngularAcceleration_.setZ(this->localAngularAcceleration_.z() + value.x);
- }
-
-}
Deleted: code/branches/Presentation_HS17/src/orxonox/worldentities/AutonomousDrone.h
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/worldentities/AutonomousDrone.h 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/worldentities/AutonomousDrone.h 2017-12-18 11:40:00 UTC (rev 11690)
@@ -1,146 +0,0 @@
-/*
- * 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:
- * Oli Scheuss
- * Co-authors:
- * Damian 'Mozork' Frick
- *
- */
-
-#ifndef _AutonomousDrone_H__
-#define _AutonomousDrone_H__
-
-#include "OrxonoxPrereqs.h"
-
-#include "core/XMLPort.h"
-#include "controllers/AutonomousDroneController.h"
-
-#include "ControllableEntity.h"
-
-namespace orxonox {
-
- /**
- @brief
- Drone, that is made to move upon a specified pattern.
- This class was constructed for the PPS tutorial.
- @author
- Oli Scheuss
- */
- class _OrxonoxExport AutonomousDrone : public ControllableEntity
- {
- public:
- AutonomousDrone(Context* context);
- virtual ~AutonomousDrone();
-
- virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating an AutonomousDrone through XML.
- virtual void tick(float dt); //!< Defines which actions the AutonomousDrone has to take in each tick.
-
- virtual void moveFrontBack(const Vector2& value);
- virtual void moveRightLeft(const Vector2& value);
- virtual void moveUpDown(const Vector2& value);
-
- virtual void rotateYaw(const Vector2& value);
- virtual void rotatePitch(const Vector2& value);
- virtual void rotateRoll(const Vector2& value);
-
- /**
- @brief Moves the Drone in the Front/Back-direction by the specifed amount.
- @param value The amount by which the drone is to be moved.
- */
- inline void moveFrontBack(float value)
- { this->moveFrontBack(Vector2(value, 0)); }
- /**
- @brief Moves the Drone in the Right/Left-direction by the specifed amount.
- @param value The amount by which the drone is to be moved.
- */
- inline void moveRightLeft(float value)
- { this->moveRightLeft(Vector2(value, 0)); }
- /**
- @brief Moves the Drone in the Up/Down-direction by the specifed amount.
- @param value The amount by which the drone is to be moved.
- */
- inline void moveUpDown(float value)
- { this->moveUpDown(Vector2(value, 0)); }
-
- /**
- @brief Rotates the Drone around the y-axis by the specifed amount.
- @param value The amount by which the drone is to be rotated.
- */
- inline void rotateYaw(float value)
- { this->rotateYaw(Vector2(value, 0)); }
- /**
- @brief Rotates the Drone around the x-axis by the specifed amount.
- @param value The amount by which the drone is to be rotated.
- */
- inline void rotatePitch(float value)
- { this->rotatePitch(Vector2(value, 0)); }
- /**
- @brief Rotates the Drone around the z-axis by the specifed amount.
- @param value The amount by which the drone is to be rotated.
- */
- inline void rotateRoll(float value)
- { this->rotateRoll(Vector2(value, 0)); }
-
- /**
- @brief Sets the primary thrust to the input amount.
- @param thrust The amount of thrust.
- */
- inline void setPrimaryThrust( float thrust )
- { this->primaryThrust_ = thrust; }
- //TODO: Place your set-functions here.
-
- inline void setAuxiliaryThrust ( float thrust )
- { this -> auxiliaryThrust_ = thrust; }
-
- inline void setRotationThrust (float thrust)
- { this -> rotationThrust_ = thrust;}
- // Hint: auxiliary thrust, rotation thrust.
-
- /**
- @brief Gets the primary thrust to the input amount.
- @return The amount of thrust.
- */
- inline float getPrimaryThrust()
- { return this->primaryThrust_; }
-
- inline float getAuxiliaryThrust()
- { return this->auxiliaryThrust_;}
-
- inline float getRotationThrust()
- { return this->rotationThrust_;}
-
- //TODO: Place your get-functions here.
-
- private:
- AutonomousDroneController *myController_; //!< The controller of the AutonomousDrone.
-
- btVector3 localLinearAcceleration_; //!< The linear acceleration that is used to move the AutonomousDrone the next tick.
- btVector3 localAngularAcceleration_; //!< The linear angular acceleration that is used to move the AutonomousDrone the next tick.
- float primaryThrust_; //!< The amount of primary thrust. This is just used, when moving forward.
- float auxiliaryThrust_; //!< The amount of auxiliary thrust. Used for all other movements (except for rotations).
- float rotationThrust_; //!< The amount of rotation thrust. Used for rotations only.s
-
- };
-
-}
-
-#endif // _AutonomousDrone_H__
Modified: code/branches/Presentation_HS17/src/orxonox/worldentities/CMakeLists.txt
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/worldentities/CMakeLists.txt 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/worldentities/CMakeLists.txt 2017-12-18 11:40:00 UTC (rev 11690)
@@ -12,8 +12,6 @@
TeamSpawnPoint.cc
ExplosionPart.cc
Actionpoint.cc
- AutonomousDrone.cc
- Arrow.cc
NameableStaticEntity.cc
)
Modified: code/branches/Presentation_HS17/src/orxonox/worldentities/ControllableEntity.cc
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/worldentities/ControllableEntity.cc 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/worldentities/ControllableEntity.cc 2017-12-18 11:40:00 UTC (rev 11690)
@@ -38,7 +38,6 @@
#include "network/NetworkFunctionIncludes.h"
#include "Scene.h"
-#include "Level.h"
#include "infos/PlayerInfo.h"
#include "controllers/NewHumanController.h"
#include "graphics/Camera.h"
@@ -67,6 +66,7 @@
this->hud_ = nullptr;
this->camera_ = nullptr;
this->xmlcontroller_ = nullptr;
+ //this->controller_ = nullptr;
this->reverseCamera_ = nullptr;
this->bDestroyWhenPlayerLeft_ = false;
this->cameraPositionRootNode_ = this->node_->createChildSceneNode();
Modified: code/branches/Presentation_HS17/src/orxonox/worldentities/ControllableEntity.h
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/worldentities/ControllableEntity.h 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/worldentities/ControllableEntity.h 2017-12-18 11:40:00 UTC (rev 11690)
@@ -175,7 +175,6 @@
inline int getTeam() const
{ return this->team_; }
-
protected:
virtual void preDestroy() override;
Modified: code/branches/Presentation_HS17/src/orxonox/worldentities/MobileEntity.cc
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/worldentities/MobileEntity.cc 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/worldentities/MobileEntity.cc 2017-12-18 11:40:00 UTC (rev 11690)
@@ -35,8 +35,6 @@
#include "core/XMLPort.h"
#include "Scene.h"
-#include "Level.h"
-#include "scriptablecontroller/scriptable_controller.h"
namespace orxonox
{
@@ -73,9 +71,6 @@
else
this->setAngularVelocity(rotationAxis.normalisedCopy() * rotationRate.valueRadians());
}
-
- if(!this->id_.empty() && this->getLevel() != nullptr)
- this->getLevel()->getScriptableController()->registerMobileEntity(this->id_, this);
}
void MobileEntity::tick(float dt)
Modified: code/branches/Presentation_HS17/src/orxonox/worldentities/WorldEntity.cc
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/worldentities/WorldEntity.cc 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/worldentities/WorldEntity.cc 2017-12-18 11:40:00 UTC (rev 11690)
@@ -43,9 +43,7 @@
#include "core/CoreIncludes.h"
#include "core/XMLPort.h"
#include "Scene.h"
-#include "Level.h"
#include "collisionshapes/WorldEntityCollisionShape.h"
-#include "scriptablecontroller/scriptable_controller.h"
namespace orxonox
{
@@ -80,7 +78,6 @@
this->parent_ = nullptr;
this->parentID_ = OBJECTID_UNKNOWN;
this->bDeleteWithParent_ = true;
- this->id_ = -1;
this->node_->setPosition(Vector3::ZERO);
this->node_->setOrientation(Quaternion::IDENTITY);
@@ -162,7 +159,6 @@
XMLPortParamTemplate(WorldEntity, "orientation", setOrientation, getOrientation, xmlelement, mode, const Quaternion&);
XMLPortParamTemplate(WorldEntity, "scale3D", setScale3D, getScale3D, xmlelement, mode, const Vector3&);
XMLPortParam (WorldEntity, "scale", setScale, getScale, xmlelement, mode);
- XMLPortParamLoadOnly(WorldEntity, "id", setID, xmlelement, mode);
XMLPortParamLoadOnly(WorldEntity, "lookat", lookAt_xmlport, xmlelement, mode);
XMLPortParamLoadOnly(WorldEntity, "direction", setDirection_xmlport, xmlelement, mode);
XMLPortParamLoadOnly(WorldEntity, "yaw", yaw_xmlport, xmlelement, mode);
@@ -184,9 +180,6 @@
XMLPortObject(WorldEntity, WorldEntity, "attached", attach, getAttachedObject, xmlelement, mode);
// Attached collision shapes
XMLPortObject(WorldEntity, CollisionShape, "collisionShapes", attachCollisionShape, getAttachedCollisionShape, xmlelement, mode);
-
- if(!this->id_.empty() && this->getLevel() != nullptr)
- this->getLevel()->getScriptableController()->registerWorldEntity(this->id_, this);
}
void WorldEntity::registerVariables()
Modified: code/branches/Presentation_HS17/src/orxonox/worldentities/WorldEntity.h
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/worldentities/WorldEntity.h 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/worldentities/WorldEntity.h 2017-12-18 11:40:00 UTC (rev 11690)
@@ -110,12 +110,6 @@
virtual void changedActivity(void) override;
virtual void changedVisibility(void) override;
- inline std::string getID(void)
- { return this->id_; }
-
- inline void setID(std::string id)
- { this->id_ = id; }
-
virtual void setPosition(const Vector3& position) = 0;
inline void setPosition(float x, float y, float z)
{ this->setPosition(Vector3(x, y, z)); }
@@ -447,7 +441,6 @@
virtual bool isCollisionTypeLegal(CollisionType type) const = 0;
btRigidBody* physicalBody_; //!< Bullet rigid body. Everything physical is applied to this instance.
- std::string id_; //!< Used by the ScriptableController to identify objects
private:
void recalculateMassProps();
Modified: code/branches/Presentation_HS17/src/orxonox/worldentities/pawns/Pawn.cc
===================================================================
--- code/branches/Presentation_HS17/src/orxonox/worldentities/pawns/Pawn.cc 2017-12-18 10:31:31 UTC (rev 11689)
+++ code/branches/Presentation_HS17/src/orxonox/worldentities/pawns/Pawn.cc 2017-12-18 11:40:00 UTC (rev 11690)
@@ -49,8 +49,6 @@
#include "weaponsystem/Munition.h"
#include "sound/WorldSound.h"
#include "core/object/ObjectListIterator.h"
-#include "Level.h"
-#include "scriptablecontroller/scriptable_controller.h"
#include "controllers/FormationController.h"
@@ -161,9 +159,6 @@
XMLPortParam(Pawn, "explosionSound", setExplosionSound, getExplosionSound, xmlelement, mode);
XMLPortParam ( RadarViewable, "radarname", setRadarName, getRadarName, xmlelement, mode );
-
- if(!this->id_.empty() && this->getLevel() != nullptr)
- this->getLevel()->getScriptableController()->registerPawn(this->id_, this);
}
void Pawn::XMLEventPort(Element& xmlelement, XMLPort::Mode mode)
@@ -286,7 +281,7 @@
if (this->getGametype() && this->getGametype()->allowPawnDamage(this, originator))
{
// Health-damage cannot be absorbed by shields.
- // Shield-damage only reduces shield health.
+ // Shield-damage only reduces shield health.
// Normal damage can be (partially) absorbed by shields.
if (shielddamage >= this->getShieldHealth())
@@ -306,7 +301,6 @@
// set remaining damage to health
this->setHealth(this->health_ - (damage - shielddamage) - healthdamage);
}
- this->getLevel()->getScriptableController()->pawnHit(this, originator, this->health_, this->shieldHealth_);
this->lastHitOriginator_ = originator;
}
@@ -407,8 +401,6 @@
this->goWithStyle();
}
}
-
- this->getLevel()->getScriptableController()->pawnKilled(this);
}
void Pawn::goWithStyle()
{
@@ -632,7 +624,7 @@
else
{
// delete all debug models
- for(Model* model : debugWeaponSlotModels_)
+ for(Model* model : debugWeaponSlotModels_)
{
model->destroy();
}
@@ -657,4 +649,4 @@
it->drawWeapons(bDraw);
}
}
-}
+}
\ No newline at end of file
More information about the Orxonox-commit
mailing list