[Orxonox-commit 6602] r11242 - in code/branches/StoryModeMap_HS16: data/levels src/orxonox/gametypes

marvinh at orxonox.net marvinh at orxonox.net
Mon Oct 24 15:58:30 CEST 2016


Author: marvinh
Date: 2016-10-24 15:58:29 +0200 (Mon, 24 Oct 2016)
New Revision: 11242

Added:
   code/branches/StoryModeMap_HS16/data/levels/StoryModeMap.oxw
   code/branches/StoryModeMap_HS16/src/orxonox/gametypes/StoryMode.cc
   code/branches/StoryModeMap_HS16/src/orxonox/gametypes/StoryMode.h
Modified:
   code/branches/StoryModeMap_HS16/src/orxonox/gametypes/CMakeLists.txt
Log:
new gametype StoryMode created, new level created

Added: code/branches/StoryModeMap_HS16/data/levels/StoryModeMap.oxw
===================================================================
--- code/branches/StoryModeMap_HS16/data/levels/StoryModeMap.oxw	                        (rev 0)
+++ code/branches/StoryModeMap_HS16/data/levels/StoryModeMap.oxw	2016-10-24 13:58:29 UTC (rev 11242)
@@ -0,0 +1,100 @@
+<LevelInfo
+ name = "StoryModeMap"
+ description = "Level that should have planets with different missions in it"
+ tags = "test"
+ screenshot = "emptylevel.png"
+/>
+
+<?lua
+  include("stats.oxo")
+  include("HUDTemplates3.oxo")
+  include("templates/lodInformation.oxt")
+?>
+
+<?lua
+  include("templates/spaceshipEscort.oxt")
+?>
+
+<Level
+gametype = StoryMode
+>
+
+  <templates>
+    <Template link=lodtemplate_default />
+  </templates>
+  <?lua include("includes/notifications.oxi") ?>
+
+  <Scene
+    ambientlight = "0.2, 0.2, 0.2"
+    skybox       = "Orxonox/Starbox"
+  >
+
+
+
+<!-- Dieser Teil attached funktioniert nicht bisher -->
+<StaticEntity position="0,0,0" direction="1,0,0" mass=10000 friction=0>
+  <attached>
+      <Model position="0,0,0" mesh="planet.mesh" scale=6 />
+  
+    <Model position="200,0,0" mesh="planets/muunilinst.mesh" scale=8 />
+  </attached>
+</StaticEntity>
+
+
+
+
+
+<Planet
+      position="10000,0,0"
+      scale="100"
+      collisionType="dynamic"
+      linearDamping="0.8"
+      angularDamping="0"
+      mass="5000000"
+      pitch="0"
+      mesh="planets/muunilinst.mesh"
+      atmosphere="atmosphere1"
+      rotationaxis="1,0,0"
+      rotationrate="1.0"
+      atmospheresize="80.0f"
+      imagesize="1024.0f"
+      collisiondamage = 2
+      enablecollisiondamage = true
+    >
+    <attached>
+        <ForceField position="0,0,0" mode="sphere" diameter="1000" velocity="-500" />
+    </attached>
+    <collisionShapes>
+        <SphereCollisionShape radius="100" position="0,0,0" />
+    </collisionShapes>
+</Planet>
+
+
+
+
+<?lua
+  include("templates/lodInformation.oxt")
+?>
+
+
+
+<Template name=spaceshipassff>
+  <ControllableEntity
+   camerapositiontemplate = spaceshipassffcameras
+   
+  >
+
+  </ControllableEntity>
+</Template>
+
+
+
+    <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 />/-->
+
+    <SpawnPoint position="991.729, -110.11, 435.404" orientation="0.534038, 0.563456, 0.212168, 0.593553" pawndesign=spaceshipassff />
+    
+  </Scene>
+</Level>
+

Modified: code/branches/StoryModeMap_HS16/src/orxonox/gametypes/CMakeLists.txt
===================================================================
--- code/branches/StoryModeMap_HS16/src/orxonox/gametypes/CMakeLists.txt	2016-10-17 18:35:19 UTC (rev 11241)
+++ code/branches/StoryModeMap_HS16/src/orxonox/gametypes/CMakeLists.txt	2016-10-24 13:58:29 UTC (rev 11242)
@@ -10,4 +10,5 @@
   LastTeamStanding.cc
   TeamGametype.cc
   Mission.cc
+  StoryMode.cc
 )

Added: code/branches/StoryModeMap_HS16/src/orxonox/gametypes/StoryMode.cc
===================================================================
--- code/branches/StoryModeMap_HS16/src/orxonox/gametypes/StoryMode.cc	                        (rev 0)
+++ code/branches/StoryModeMap_HS16/src/orxonox/gametypes/StoryMode.cc	2016-10-24 13:58:29 UTC (rev 11242)
@@ -0,0 +1,103 @@
+/*
+ *   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:
+ *      Marvin Haeberle & Julian Huwyler
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+#include "StoryMode.h"
+
+#include "items/Engine.h"
+#include "controllers/ArtificialController.h"
+
+#include "core/CoreIncludes.h"
+#include "core/command/ConsoleCommandIncludes.h"
+#include "infos/PlayerInfo.h"
+#include "network/Host.h"
+#include "worldentities/pawns/Pawn.h"
+#include "LevelManager.h"
+
+namespace orxonox
+{
+
+    RegisterUnloadableClass(StoryMode);
+    
+    StoryMode::StoryMode(Context* context) : Gametype(context)
+    {
+        RegisterObject(StoryMode);
+
+        this->gtinfo_ = new GametypeInfo(context);
+        this->bAutoStart_ = true;
+        this->bForceSpawn_ = true;
+    }
+
+    
+   
+    /*void StoryMode::start()
+    {
+        Gametype::start();
+
+        this->gtinfo_->sendAnnounceMessage("Marvin isch Chef");
+    }
+
+   void StoryMode::end()
+    {
+        if (this->missionAccomplished_ && !this->gtinfo_->hasEnded())
+        {
+            this->gtinfo_->sendAnnounceMessage("StoryMode accomplished!");
+
+            LevelManager::getInstance().setLastFinishedCampaignMission(this->getFilename());
+        }
+        else if (!this->gtinfo_->hasEnded())
+            this->gtinfo_->sendAnnounceMessage("StoryMode failed!");
+
+        Gametype::end();
+    }
+
+    void Mission::setTeams()
+    { //Set pawn-colours
+        for (Pawn* pawn : ObjectList<Pawn>())
+        {
+            if (!pawn)
+                continue;
+            this->setDefaultObjectColour(pawn);
+        }
+    }
+    void Mission::endMission(bool accomplished)
+    {
+        for (Mission* mission : ObjectList<Mission>())
+        { //TODO: make sure that only the desired mission is ended !! This is a dirty HACK, that would end ALL missions!
+            mission->setMissionAccomplished(accomplished);
+            mission->end();
+        }
+    }
+
+    void Mission::setLivesWrapper(unsigned int amount)
+    {
+        for (Mission* mission : ObjectList<Mission>())
+        { //TODO: make sure that only the desired mission is ended !! This is a dirty HACK, that would affect ALL missions!
+            mission->setLives(amount);
+        }
+    }*/
+}

Added: code/branches/StoryModeMap_HS16/src/orxonox/gametypes/StoryMode.h
===================================================================
--- code/branches/StoryModeMap_HS16/src/orxonox/gametypes/StoryMode.h	                        (rev 0)
+++ code/branches/StoryModeMap_HS16/src/orxonox/gametypes/StoryMode.h	2016-10-24 13:58:29 UTC (rev 11242)
@@ -0,0 +1,48 @@
+/*
+ *   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:
+ *      Julian Huwyler & Marvin Haeberle
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+#ifndef _Mission_H__
+#define _Mission_H__
+
+#include "OrxonoxPrereqs.h"
+#include "Gametype.h"
+
+namespace orxonox
+{
+    class _OrxonoxExport StoryMode : public Gametype
+    {
+        public:
+            StoryMode(Context* context);
+            virtual ~StoryMode() {}
+
+            
+    };
+}
+
+#endif /* _Mission_H__ */
+




More information about the Orxonox-commit mailing list