[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